1、Servlet实现增删改查小案例MVC模式 M:Model,即模型,对于JavaBean V:View, 即试图,对应JSP页面 C:Controller,即控制器,对应Servlet1. 以下为MVC实现一个简单的 增删改查 功能1 显示记录2 增加一条记录3 修改一条记录4 删除一条记录程序源代码:M层:模型层1.封装一条信息的所有属性JavaBean.java ,即VOpackage muta.bean;/* * author help *封装一条信息的所有属性 */public class JavaBean private int id; private String name; pr
2、ivate String password; private String sex; private int age; public int getId() return id; public void setId(int id) this.id = id; public String getName() return name; public void setName(String name) this.name = name; public String getPassword() return password; public void setPassword(String passwo
3、rd) this.password = password; public String getSex() return sex; public void setSex(String sex) this.sex = sex; public int getAge() return age; public void setAge(int age) this.age = age; 2.封装数据库连接以及操作JavaBean所用到的方法,即DAOpackage muta.bean;import java.sql.Connection;import java.sql.DriverManager;impor
4、t java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;/* * author help *操作数据库的方法 */public class SqlBean Connection con; PreparedStatement pre; ResultSet rs; public SqlBean() try Class.forName(com.mysql.jdbc.Driver); catch
5、 (ClassNotFoundException e) e.printStackTrace(); try con=DriverManager.getConnection(jdbc:mysql:/127.0.0.1:3306/MyServlet,root,122828); catch (SQLException e) e.printStackTrace(); /* * author help * *插入新的一条记录 * return */ public int getInsert(String sql,JavaBean jBean) int count =0; try pre = con.pre
6、pareStatement(sql); pre.setString(1,jBean.getName(); pre.setString(2,jBean.getPassword(); pre.setString(3,jBean.getSex(); pre.setInt(4,jBean.getAge(); count=pre.executeUpdate(); catch (SQLException e) e.printStackTrace(); finally try pre.close(); con.close(); catch (SQLException e) / TODO Auto-gener
7、ated catch block e.printStackTrace(); return count; /* * author help * *删除一条记录 * return */ public int getDelete(String sql,int id) int count =0; try pre = con.prepareStatement(sql); pre.setInt(1, id); count=pre.executeUpdate(); catch (SQLException e) e.printStackTrace(); finally try pre.close(); con
8、.close(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return count; /* * author help * *根据ID查询某一条记录 * return */ public JavaBean getSearchById(String sql,int id) JavaBean jBean = new JavaBean(); try pre = con.prepareStatement(sql); pre.setInt(1, id); rs=pre.executeQu
9、ery(); while(rs.next() jBean.setId(rs.getInt(id); jBean.setName(rs.getString(name); jBean.setPassword(rs.getString(password); jBean.setSex(rs.getString(sex); jBean.setAge(rs.getInt(age); catch (SQLException e) e.printStackTrace(); return jBean; /* * author help * *更新某一条记录 * return */ public int getU
10、pdate(String sql,JavaBean jBean) int count =0; try pre = con.prepareStatement(sql); pre.setInt(5,jBean.getId(); pre.setString(1,jBean.getName(); pre.setString(2,jBean.getPassword(); pre.setString(3,jBean.getSex(); pre.setInt(4,jBean.getAge(); count = pre.executeUpdate(); catch (SQLException e) / TOD
11、O Auto-generated catch block e.printStackTrace(); finally try pre.close(); con.close(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return count; /* * author help * *显示所有记录 * return */ public List getSearch(String sql) List list = new ArrayList(); /获取prepareStatemen
12、t对象 try pre = con.prepareStatement(sql); rs =pre.executeQuery(); while(rs.next() JavaBean jBean =new JavaBean(); jBean.setId(rs.getInt(id); jBean.setName(rs.getString(name); jBean.setPassword(rs.getString(password); jBean.setSex(rs.getString(sex); jBean.setAge(rs.getInt(age); list.add(jBean); catch
13、(SQLException e) / TODO Auto-generated catch block e.printStackTrace(); finally try pre.close(); con.close(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return list; V层:试图层1. 显示记录集的页面 SearchList.jsp显示记录学生信息如下:ID姓名密码性别年龄操作 增加 a href=Delete?id=删除 a href=SearchB
14、yId?id=更新 2. 插入页面Insert.jsp插入新值 学生管理页面姓名:密码:性别:男 女 年龄: 查询 3. 更新页面Update.jsp更新学生管理页面学生ID:input name=id value= readonly学生姓名:input name=name value= 学生密码:input type=password name=password value= 学生性别:input type=radio name =sex value=男男 input type=radio name =sex value=女女 学生年龄:input type=text name=age va
15、lue= 查询4. 出错页面Error.jsp出错啦! 对不起!您失败C层:控制层Servlet1.显示记录集的Servlet-SearchById.javapackage muta.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import
16、 muta.bean.JavaBean;import muta.bean.SqlBean;public class SearchById extends HttpServlet private static final long serialVersionUID = 1L; /* * The doDelete method of the servlet. * * This method is called when a HTTP delete request is received. * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1