MVC模式M:Model,即模型,对于JavaBeanV:View,即试图,对应JSP页面C:Controller,即控制器,对应Servlet1.以下为MVC实现一个简单的增删改查功能1显示记录2增加一条记录3修改一条记录4删除一条记录2.简单的登录界面及jsp对数据库的操作1登录界面2注册界面程序源代码:M层:模型层封装一条信息的所有属性JavaBean.java,即VOpackageMVC;publicclassJavaBean{privateintid;privateStringname;privateStringpassword;privateStringsex;privateintage;publicJavaBean(){super();//TODOAuto-generatedconstructorstub}publicJavaBean(intid,Stringname,Stringpassword,Stringsex,intage){this.id=id;this.name=name;this.password=password;this.sex=sex;this.age=age;}publicintgetId(){returnid;}publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicStringgetPassword(){returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}publicStringgetSex(){returnsex;}publicvoidsetSex(Stringsex){this.sex=sex;}publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}}封装数据库连接以及操作JavaBean所用到的方法,SqlBean.java文件即DAOpackageMVC;//封装数据库连接以及操作JavaBean所用到的方法,即DAOimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.ArrayList;//importjava.util.List;publicclassSqlBean{/***操作数据库的方法*///定义数据库驱动程序StringDBDRIVER=com.mysql.jdbc.Driver;//定义数据库连接对象,属于java.sql包中的接口Connectioncon=null;//定义PreapredStatement对象,用于操作数据库PreparedStatementpre=null;//查询返回的结果集对象ResultSetrs=null;publicSqlBean(){try{//1、加载驱动程序Class.forName(DBDRIVER);}catch(ClassNotFoundExceptione){e.printStackTrace();}try{//2、数据库连接地址con=DriverManager.getConnection(jdbc:mysql://localhost:3306/zxdstudent,root,);}catch(SQLExceptione){e.printStackTrace();}}/***@authorhelp**插入新的一条记录*@return*/publicintgetInsert(Stringsql,JavaBeanjBean){intcount=0;try{pre=con.prepareStatement(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(SQLExceptione){e.printStackTrace();}finally{try{//关闭数据库pre.close();//关闭操作con.close();//关闭连接}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}returncount;}/***@authorhelp**删除一条记录*@return*/publicintgetDelete(Stringsql,intid){intcount=0;try{pre=con.prepareStatement(sql);pre.setInt(1,id);count=pre.executeUpdate();}catch(SQLExceptione){e.printStackTrace();}finally{try{pre.close();con.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}returncount;}/***@authorhelp**根据ID查询某一条记录*@return*/publicJavaBeangetSearchById(Stringsql,intid){JavaBeanjBean=newJavaBean();try{pre=con.prepareStatement(sql);pre.setInt(1,id);rs=pre.executeQuery();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(SQLExceptione){e.printStackTrace();}returnjBean;}/***@authorhelp**更新某一条记录*@return*/publicintgetUpdate(Stringsql,JavaBeanjBean){intcount=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(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}finally{try{pre.close();con.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}returncount;}/***@authorhelp**显示所有记录*@return*/publicArrayListJavaBeangetSearch(Stringsql){ArrayListJavaBeanlist=newArrayListJavaBean();try{pre=con.prepareStatement(sql);rs=pre.executeQuery();while(rs.next()){JavaBeanjBean=newJavaBean();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(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}finally{try{pre.close();con.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}returnlist;}}V层:试图层显示记录集的页面SearchList.jsp%@pagelanguage=javaimport=java.util.*pageEncoding=UTF-8%%@pageimport=MVC.SqlBean%%@pageimport=MVC.JavaBean%%@pageimport=java.util.Iterator;%%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=UTF-8title显示记录/title/headbodyformname=formaction=Insert.jspmethod=postcenterfontcolor=redsize=72学生信息如下:/fontbrbrbrhrtableborder=1bgColor=#ffffffwidth=500pxheight=100pxtrtdID/tdtd姓名/tdtd密码/tdtd性别/tdtd年龄/tdtdcenter操作/center/td/tr%--jsp:useBeanid=sBeanclass=MVC.SqlBean/jsp:useBeanid=jBeanclass=MVC.JavaBean/--%%Stringsql=select*fromlogin;SqlBeansBean=newSqlBean();JavaBeanjBean=newJavaBean();ArrayListJavaBeanlist=sBean.getSearch(sql);/*for(JavaBeanbean:list){*/for(ListIteratorJavaBeanit=list.listIterator();it.hasNext();){//获取一个JavaBean对象