现代软件开发技术实验报告_第1页
现代软件开发技术实验报告_第2页
现代软件开发技术实验报告_第3页
现代软件开发技术实验报告_第4页
现代软件开发技术实验报告_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

现代软件开发技术实验报告(10/11学年上学期)指导老师:班级:学号:姓名:实验一简单JavaWeb编程一、实验目的1、掌握MVC设计模式的概念和思想2、掌握JavaWeb常用组件,并掌握其编辑、编译、运行方法3、能够开发简单的基于MVC模式的应用程序二、预备知识1.JDK的安装设置:JDK/JRE/JVM2.服务器Tomcat的使用3.Servlet技术基础知识:Servlet生命周期、JavaServletAPI、Servlet开发配置实例(web.xml)4.JSP技术基础知识5.JavaBean技术基础知识6.数据库(JDBC/JDBCAPI)技术基础知识7.XML技术基础知识8.简单的错误调试三、实验内容

(1)检查所用的计算机系统,可以按以下步骤进行操作:1.确认系统的环境变量,是否已安装JDK2.确认目录C:\ProgramFiles\ApacheSoftwareFoundation,是否已安装Tomcat服务器3.确认目录D:\eclipse3.3,是否已绿色安装Eclipse集成开发环境以及Eclipse插件

(2)Eclipse集成开发环境的基本使用方法1.创建一个新的Web项目从EclipseIDE,选择File>New>Project查看项目向导。在Wizards框,输入Web,从列表中选择DynamicWebProject。2.以运行库为目标在TargetRuntime下,可以看到<None>,由于尚未为ApacheTomcat创建运行库,所以需要单击New打开NewTargetRuntimeWizard。从Apache文件夹中选择ApacheTomcatV6.0。单击Browse来定位用于ApacheTomcat配置的基本文件夹(C:\programfiles\ApacheSoftwareFoundation\Tomcat6.0)。保留IBM®JavaRuntimeEnvironment(JRE)版本作为工作台的默认JRE。输入有效目录之后,单击Finish创建运行库配置。3.运行库配置可以通过选择Window>Preferences更改自己的运行库配置。在filter框,键入Runtime,列表就会在Server类别下显示已安装的运行库配置设置。选择您的ApacheTomcat运行库,然后单击Edit来更改名称、目录位置或JRE版本。4.选择是否想要转换到JavaEEPerspective。应该选择是,因为这个透视图包含了一些很有用的视图,比如Servers视图,可以帮助启动和停止Tomcat。通过选择Window>ShowView可以打开Servers视图。5.添加服务器Servers视图目前没有包含任何内容。此视图针对的是应用程序和Web服务器;此视图可以控制它们并监视其状态。要从IDE直接控制Tomcat,可通过从上下文敏感菜单选择New>Server来向Tomcat添加引用。单击Next。系统提问您是否想要向服务器添加项目。选择在之前的步骤中创建的那个项目,然后单击Add。单击Finish关闭向导。现在,Servers视图包含了TomcatV6.0Server,且其下还包含项目。

(3)向工程

已建立的工程添加基于MVC模式的JavaWeb应用1.数据库设计:构建数据库表T_UserInfo;2.构建视图组件:登录页面login.jsp、主页面main.jsp及注册页面register.jsp;3.构建控制层组件:一个Servlet,取名LoginServlet.java;4.构建业务逻辑层组件(Model组件):一个JavaBean,取名为LoginHandler.java;5.构建数据访问层组件:一个DAO,取名为DBPool.java;6.部署该程序到Web服务器Tomcat中,然后运行。四、实验程序代码1、login.jsp<%@pagelanguage="java"contentType="text/html;charset=gb2312"%><html><head><title>登录页面</title></head><body><formmethod="post"action="loginservlet">用户名:<inputtype="text"name="username"size="15"><br><br>密  码:<inputtype="password"name="password"size="15"><br><br><inputtype="submit"name="submit"value="登录"><br></form></body></html>2、main.jsp<%@pagecontentType="text/html;charset=GB2312"%><html><head><title>主页面</title></head><body><h1><%=session.getAttribute("username")%>,你成功登录,现已进入主页面!</h1></body></html>3、register.jsp<%@pagecontentType="text/html;charset=GB2312"%><html><head><title>注册页面</title></head><body><h1><%=session.getAttribute("username")%>,你未能成功登录。<br>现进入注册页面,请注册您的信息!</h1></body></html>4、LoginServlet.javapackagelogin;//*控制组件*/importjavax.servlet.*;importjavax.servlet.http.*;importjava.io.*;importjava.util.*;publicclassLoginServletextendsHttpServlet{privatestaticfinalStringCONTENT_TYPE="text/html;charset=GB2312";//初始化Servletpublicvoidinit()throwsServletException{}//处理HTTPPOST请求publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{//从请求中取出用户名和密码的值Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");//生成一个ArrayList对象,并把用户名和密码的值存入该对象中ArrayListarr=newArrayList();arr.add(username);arr.add(password);//生成一个Session对象HttpSessionsession=request.getSession(true);session.removeAttribute("username");session.setAttribute("username",username);//调用模型组件loginHandler,检查该用户是否已注册LoginHandlerlogin=newLoginHandler();booleanmark=login.checkLogin(arr);//如果已注册,进入主页面if(mark)response.sendRedirect("main.jsp");//如果未注册,进入注册页面elseresponse.sendRedirect("register.jsp");}//处理HTTPGET请求publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{doPost(request,response);}//销毁Servletpublicvoiddestroy(){}}5、web.xml<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEweb-appPUBLIC"-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN""/dtd/web-app_2_3.dtd"><web-app><servlet><servlet-name>LoginServlet</servlet-name><display-name>ThisisthedisplaynameofmyJ2EEcomponent</display-name><description>ThisisthedescriptionofmyJ2EEcomponent</description><servlet-class>login.LoginServlet</servlet-class></servlet><servlet-mapping><servlet-name>LoginServlet</servlet-name><url-pattern>/loginservlet</url-pattern></servlet-mapping></web-app>6、LoginHandler.javapackagelogin;/*模型组件*/importjava.sql.*;importjava.util.*;classLoginHandler{publicLoginHandler(){}Connectionconn;PreparedStatementps;ResultSetrs;//检查是否已注册publicbooleancheckLogin(ArrayListarr){//从数据访问组件DBPool中取得连接conn=DBPool.getConnection();Stringname=(String)arr.get(0);Stringpassword=(String)arr.get(1);try{Stringsql="select*fromT_UserInfowhereusername=?andpassword=?";ps=conn.prepareStatement(sql);ps.setString(1,name);ps.setString(2,password);rs=ps.executeQuery();if(rs.next()){DBPool.dbClose(conn,ps,rs);//释放资源returntrue;}else{DBPool.dbClose(conn,ps,rs);returnfalse;}}catch(SQLExceptione){returnfalse;}}}7、DBPool.javapackagelogin;/*数据访问组件*/importjava.io.*;importjava.util.*;importjava.sql.*;publicclassDBPool{privatestaticDBPoolinstance=null;//取得连接publicstaticsynchronizedConnectiongetConnection(){if(instance==null){instance=newDBPool();}returninstance._getConnection();}privateDBPool(){super();}privateConnection_getConnection(){try{StringsDBDriver=null;StringsConnection=null;StringsUser=null;StringsPassword=null;Propertiesp=newProperties();InputStreamis=getClass().getResourceAsStream("/perties");p.load(is);sDBDriver=p.getProperty("DBDriver",sDBDriver);sConnection=p.getProperty("Connection",sConnection);sUser=p.getProperty("User","");sPassword=p.getProperty("Password","");Propertiespr=newProperties();pr.put("user",sUser);pr.put("password",sPassword);pr.put("characterEncoding","GB2312");pr.put("useUnicode","TRUE");Class.forName(sDBDriver).newInstance();returnDriverManager.getConnection(sConnection,pr);}catch(Exceptionse){System.out.println(se);returnnull;}}//释放资源publicstaticvoiddbClose(Connectionconn,PreparedStatementps,ResultSetrs)throwsSQLException{rs.close();ps.close();conn.close();}}8、pertiesDBDriver=sun.jdbc.odbc.JdbcOdbcDriverConnection=jdbc:odbc:loginUser=Password=五、实验结果创建好的项目运行项目添加服务器六、实验总结1、通过本次实验掌握了用eclipse构建一个基于MVC模式的javaweb的应用技术,明白了MVC的模式以及概念。2、在实验中用jsp、Servlet和JavaBean构建一个简单的登录系统,当用户登录时检测该用户是否已注册,如果以注册即进入主页面否则进入注册页面进行注册。3、实验中注意代码中的错误;4、虽然在实验中遇到了一些eclipse的操作等问题,但通过和同学成功解决了问题,实验成功。5、实验中要学会总结错误并及时改正错误。实验二Struts框架应用一、实验目的1、掌握MVC设计模式的概念和思想2、掌握Struts常用类和组件的使用方法3、能够开发一个简单的基于Struts架构的学生信息登记系统二、预备知识1.JDK的安装设置:JDK/JRE/JVM2.服务器Tomcat的使用3.集成开发环境Eclipse的使用4.Struts常用类和组件的使用方法5.数据库(JDBC/JDBCAPI)技术基础知识6.XML技术基础知识(web.xml/struts-config.xml)7.简单的错误调试三、实验内容

(1)检查所使用的计算机系统,可以按以下步骤进行操作:1.确认系统的环境变量,是否已安装JDK2.确认目录C:\ProgramFiles\ApacheSoftwareFoundation,是否已安装Tomcat服务器3.确认目录D:\eclipse3.3,是否已绿色安装Eclipse集成开发环境以及Eclipse插件

(2)Eclipse集成开发环境的基本使用方法1.创建一个新的Web项目2.以运行库为目标3.运行库配置4.选择是否想要转换到JavaEEPerspective。5.添加服务器

(3)向已建立的工程添加基于Struts架构的学生信息登记系统由于已建立的工程没有引入Struts相关包,因此需要首先引入Struts相关包,操作如下:右键选定工程,然后Properties>JavaBuildPath>Libraries>AddExternalJARs。然后,按照以下步骤构建基于Struts架构的学生信息登记系统:1.数据库设计:构建数据库表T_student;在管理工具>数据源(ODBC)中建立相应的数据源;2.构建视图组件:·登录页面register.jsp,用来输入学生的信息,如学号、姓名、性别、年龄等。该页面要求使用Struts的HTML标记,并包含验证错误标志<html:errors>;·构建ActionForm组件,主要是StudentActionForm。它包含了对学号studNo、姓名name及年龄name的验证规则;3.构建控制层组件:即Action组件,这里是StudentAction。它先从StudentActionForm中读取页面输入的数据,并把这些数据装入一个ArrayList对象中,以便于传输这些数据,然后调用StudentDAO的saveData()方法把这些数据保存到数据库中;如果数据成功地保存到数据库中,将转发到success.jsp,否则转发到fail.jsp;4.构建配置文件:配置文件包括两个web.xml和struts-config.xml。5.构建资源包:资源包包括ApplicationResources_perties和ApplicationResources_zh_CN.properties,以定义验证错误提示。ApplicationResources_perties中的中文需要用native2ascii工具转化成Unicode字码;6.构建模型组件/数据访问组件:包括StudentDAO、DBPool及属性文件perties。StudentDAO先从DBPool中取得数据库连接,然后把数据保存到数据库中。DBPool是一个数据库连接池。perties是一个数据库属性文件,包含了连接数据库所需的参数。7.部署该程序到Web服务器Tomcat中,启动Tomcat,在IE浏览器地址栏中输入http://localhost:8080/studentInfo/register.jsp,往该页面输入相应得数据,如果写入的数据不符合要求,就会显示验证错误提示,只有数据的数据项符合要求,单击“保存”按钮后,数据才保存到数据库中。四、实验程序1、login.jsp<%@pagelanguage="java"pageEncoding="GB2312"%><%@tagliburi="/tags-bean"prefix="bean"%><%@tagliburi="/tags-html"prefix="html"%><%@tagliburi="/tags-logic"prefix="logic"%><%@tagliburi="/tags-tiles"prefix="tiles"%><%@tagliburi="/tags-nested"prefix="nested"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html:html><head><title>login.jsp</title></head><body><html:formaction="/login"method="post"><tableborder="0"><tr><td>用户名:</td><td><html:textproperty="username"/></td></tr><tr><td>密码:</td><td><html:passwordproperty="password"/></td></tr><tr><tdcolspan="2"align="center"><html:submitvalue="登录"/></td></tr></table></html:form></body></html:html>2、register.jsp<%@pagecontentType="text/html;charset=GB2312"%><html><head><title>注册页面</title></head><body><h1><%=session.getAttribute("username")%>,你未能成功登录。<br>现进入注册页面,请注册你的信息!</h1></body></html>3、main.jsp<%@pagecontentType="text/html;charset=GB2312"%><html><head><title>主页面</title></head><body><h1><%=session.getAttribute("username")%>,你成功登录,现已进入主页面!</h1></body></html>4、LoginForm.javapackagestruts;importjavax.servlet.http.HttpServletRequest;importorg.apache.struts.action.ActionErrors;importorg.apache.struts.action.ActionForm;importorg.apache.struts.action.ActionMapping;publicclassLoginFormextendsActionForm{ privateStringpassword; privateStringusername; publicActionErrorsvalidate(ActionMappingmapping, HttpServletRequestrequest){ //TODOAuto-generatedmethodstub returnnull; } publicvoidreset(ActionMappingmapping,HttpServletRequestrequest){ //TODOAuto-generatedmethodstub } publicStringgetPassword(){ returnpassword; } publicvoidsetPassword(Stringpassword){ this.password=password; } publicStringgetUsername(){ returnusername; } publicvoidsetUsername(Stringusername){ this.username=username; }}5、LoginAction.javapackagestruts;importorg.apache.struts.action.*;importjavax.servlet.http.*;importjava.util.*;publicclassLoginActionextendsAction{publicActionForwardexecute(ActionMappingactionMapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){LoginFormloginForm=(LoginForm)form;//从formbean中取出表单数据Stringusername=loginForm.getUsername();Stringpassword=loginForm.getPassword();//生成一个Session对象HttpSessionsession=request.getSession(true);session.removeAttribute("username");session.setAttribute("username",username);//生成一个ArrayList对象,并把用户名和密码的值存入该对象中ArrayListarr=newArrayList();arr.add(username);arr.add(password);Stringprompt;//调用模型组件LoginHandler,检查该用户是否已注册LoginHandlerlogin=newLoginHandler();booleanmark=login.checkLogin(arr);if(mark){ prompt="Success";}else{ prompt="Fail";}returnactionMapping.findForward(prompt);}}6、LoginHandler.javapackagestruts;/*模型组件*/importjava.sql.*;importjava.util.*;classLoginHandler{publicLoginHandler(){}Connectionconn;PreparedStatementps;ResultSetrs;//检查是否已注册publicbooleancheckLogin(ArrayListarr){//从数据访问组件DBPool中取得连接conn=DBPool.getConnection();Stringname=(String)arr.get(0);Stringpassword=(String)arr.get(1);try{Stringsql="select*fromT_UserInfowhereusername=?andpassword=?";ps=conn.prepareStatement(sql);ps.setString(1,name);ps.setString(2,password);rs=ps.executeQuery();if(rs.next()){DBPool.dbClose(conn,ps,rs);//释放资源returntrue;}else{DBPool.dbClose(conn,ps,rs);returnfalse;}}catch(SQLExceptione){ returnfalse;}}}7、DBPool.javapackagestruts;/*数据访问组件*/importjava.io.*;importjava.util.*;importjava.sql.*;publicclassDBPool{privatestaticDBPoolinstance=null;//取得连接publicstaticsynchronizedConnectiongetConnection(){if(instance==null){instance=newDBPool();}returninstance._getConnection();}privateDBPool(){super();}privateConnection_getConnection(){try{StringsDBDriver=null;StringsConnection=null;StringsUser=null;StringsPassword=null;Propertiesp=newProperties();InputStreamis=getClass().getResourceAsStream("/perties");p.load(is);sDBDriver=p.getProperty("DBDriver",sDBDriver);sConnection=p.getProperty("Connection",sConnection);sUser=p.getProperty("User","");sPassword=p.getProperty("Password","");Propertiespr=newProperties();pr.put("user",sUser);pr.put("password",sPassword);pr.put("characterEncoding","GB2312");pr.put("useUnicode","TRUE");Class.forName(sDBDriver).newInstance();returnDriverManager.getConnection(sConnection,pr);}catch(Exceptionse){System.out.println(se);returnnull;}}//释放资源publicstaticvoiddbClose(Connectionconn,PreparedStatementps,ResultSetrs)throwsSQLException{rs.close();ps.close();conn.close();}}8、pertiesDBDriver=sun.jdbc.odbc.JdbcOdbcDriverConnection=jdbc:odbc:loginUser=Password=9、struts-config.xml<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstruts-configPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.1//EN""/struts/dtds/struts-config_1_1.dtd"><struts-config><data-sources/><form-beans><form-beanname="loginForm"type="struts.LoginForm"/></form-beans><global-exceptions/><global-forwards/><action-mappings><actionattribute="loginForm"input="/login.jsp"name="loginForm"path="/login"scope="request"type="struts.LoginAction"validate="false"><forwardname="Success"path="/main.jsp"/><forwardname="Fail"path="/register.jsp"/></action></action-mappings><message-resourcesparameter="struts.ApplicationResources"/></struts-config>五、实验结果六、实验总结1.通过实验进一步掌握MVC设计模式的概念和思想;2.通过本次实验掌握Struts常用类和组件的使用方法;3.实验要注意Struts的配置文struts-config.xml的主要元素;4.通过本次实验掌握了用Eclipse构建一个基于Struts的登录系统;5.通过实验更加的了解eclipse的操作以及基于Struts的MVC登录系统的原理和思想;6.在实验一的基础上,通过同学交流与网上资料,本实验成功完成。实验三Hibernate框架应用一、实验目的1、掌握采用Hibernate构建JavaWeb应用中持久化层的概念和思想2、掌握HibernateAPI的基本使用方法3、利用Hibernate实现用户信息的数据库基本操作(增、删、改、查)二、预备知识1.JDK的安装设置:JDK/JRE/JVM2.服务器Tomcat的使用3.集成开发环境Eclipse的使用4.HibernateAPI的基本使用方法5.数据库(MySQL/JDBC/JDBCAPI)技术基础知识6.XML技术基础知识(web.xml/hibernate.cfg.xml/xxx.hbm.xml)7.简单的错误调试三、实验内容

(1)按照以下步骤检查所使用的计算机系统:1.确认系统的环境变量,是否已安装JDK;2.确认目录C:\ProgramFiles\ApacheSoftwareFoundation,是否已安装Tomcat服务器;3.确认目录D:\eclipse3.3,是否已绿色安装Eclipse集成开发环境;4.确认Eclipse插件:HibernateSynchronizer是否已复制到Eclispe的plugins目录中。(2)创建数据表:1.安装MySQL2.在WindowsXP上启动:·安装MySQL服务:C:\mysql\bin>mysqld–install·启动MySQL服务:C:\mysql\bin>netstartmysql3.连接MySQLC:\mysql\bin>mysql–hlocalhost–uroot-p回车后,就会出现“mysql”提示符,表示连接成功。4.新建数据库mysql>createdatabasemydb;5.查看数据库mysql>showdatabases;6.打开数据库mysql>usemydbDatabasechanged7.创建数据表createtablet_user(idintprimarykey, usernamevarchar(20), passwordvarchar(20), ageint);8.退出mysql>quit;9.关闭MySQL服务C:\mysql\bin>netstopmysql(3)Eclipse集成开发环境的基本使用方法(详细步骤请参照实验一的实验指导书)1.创建一个新的DynamicWebProject:Hibernate_Proj2.以运行库为目标3.运行库配置4.选择是否想要转换到JavaEEPerspective。5.添加服务器

(4)向已建立的工程添加Hibernate应用1.设置Hibernate配置文件(hibernate.cfg.xml):选中Hibernate_Proj,然后右键选择Properties>new>others>Hibernate>HibernateConfigurationFile,创建hibernate.cfg.xml,具体内容如下(可参照教材第154页):Databasedialect:MySQLDriverclass:com.mysql.jdbc.DriverConnectionURL:jdbc:mysql://localhost:3306/mydbUsername:root2.生成持久化对象(POJO):·新建一个包:选中Hibernate_Proj,然后右键选择Properties>new>package,在包名中输入user,然后单击“完成”按钮;·生成持久化对象(POJO):引入类User.java;3.生成映射文件(User.hbm.xml):在新建的包user上右键选择new>others>Hibernate>HibernateMappingFile,创建User.hbm.xml,具体内容请参照教材第156页;4.修改Hibernate配置文件(hibernate.cfg.xml):把映射文件(User.hbm.xml)添加到配置文件中;5.在包user下面添加类userServlet.java,该类通过HibernateAPI对User对象进行持久化的操作;6.构建视图组件:user.jsp和reply.jsp:user.jsp:用户信息输入画面;reply.jsp:持久化成功画面;7.构建配置文件:web.xml:配置userServlet信息;8.引入Hibernate相关jar文件:在WebContent\WEB-INF\lib目录下放入相关jar包;9.部署该程序到Web服务器Tomcat中,启动Tomcat,在IE浏览器地址栏中输入http://localhost:8080/Hibernate_Proj/user.jsp,往该页面输入相应得数据,单击“save”按钮后,数据会被持久化到数据库中;单击“update”按钮后,数据会被更新到数据库中;单击“delete”按钮后,数据会从数据库中删除。四、实验程序1、user.jsp<%@pagelanguage="java"contentType="text/html;charset=GB18030"pageEncoding="GB18030"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=GB18030"><title>user</title></head><bodybgcolor="#ffffff"><formaction="userservlet"method="post">用户名:<inputtype="text"name="username"/><br><br>密码:<inputtype="password"name="password"/><br><br>年龄:<inputtype="text"name="age"/><br><br><inputtype="Submit"name="action"value="save"/><inputtype="Submit"name="action"value="update"/><inputtype="Submit"name="action"value="delete"/><br><br></form></body></html>2、reply.jsp<%@pagelanguage="java"contentType="text/html;charset=GB18030"pageEncoding="GB18030"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=GB18030"><title>reply</title></head><bodybgcolor="#ffffff"><h1>数据已成功存入数据库!</h1></body></html>3、User.javapackageuser;publicclassUser{ privateintid; privateStringusername; privateStringpassword; privateintage; publicUser(){ } publicintgetId(){ returnid; } publicStringgetPassword(){ returnpassword; } publicStringgetUsername(){ returnusername; } publicintgetAge(){ returnage; } publicvoidsetId(intid){ this.id=id; } publicvoidsetPassword(Stringpassword){ this.password=password; } publicvoidsetUsername(Stringusername){ this.username=username; } publicvoidsetAge(intage){ this.age=age; }}4、userServlet.javapackageuser;importjavax.servlet.*;importjavax.servlet.http.*;importjava.io.*;importjava.util.*;importorg.hibernate.*;importorg.hibernate.cfg.Configuration;publicclassuserServletextendsHttpServlet{ privatestaticfinallongserialVersionUID=1L; privatestaticfinalStringCONTENT_TYPE="text/html;charset=GB2312"; privatestaticfinalSessionFactorysessionFactory; static{ try{ //CreatetheSessionFactory Configurationconfig=newConfiguration(); sessionFactory=config.configure().buildSessionFactory(); }catch(RuntimeExceptionex){ ex.printStackTrace(); throwex; } } //Initializeglobalvariables publicvoidinit()throwsServletException{ } //ProcesstheHTTPGetrequest publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ Stringusername=request.getParameter("username"); if(username==null){ username=""; } Stringpassword=request.getParameter("password"); if(password==null){ password=""; } Stringage1=request.getParameter("age"); if(age1==null){ age1="0"; } Stringaction=request.getParameter("action"); System.out.println("action="+action); if(action==null){ action=""; } System.out.println(action); intage=Integer.parseInt(age1); response.setContentType(CONTENT_TYPE); PrintWriterout=response.getWriter(); //生成User实例 Useruser=newUser(); user.setUsername(username); user.setPassword(password); user.setAge(age); if(action.equals("save")){ //生成Session实例 Sessionsession=sessionFactory.openSession(); Transactiontx=null; try{ tx=session.beginTransaction(); //保存持久类对象 session.save(user); //提交到数据库 mit(); //跳转到回复页面 response.sendRedirect("reply.jsp"); }catch(RuntimeExceptione){ if(tx!=null){ tx.rollback(); }throwe; }finally{ session.close(); } } if(action.equals("update")){ //生成Session实例 Sessionsession=sessionFactory.openSession(); Transactiontx=null; try{ tx=session.beginTransaction(); Queryquery=session.createQuery("fromUseruwhereu.username=?"); query.setString(0,username); Listlist=query.list(); for(inti=0;i<list.size();i++){ Useru=(User)list.get(i); Useru1=(User)session.get(User.class,newInteger(u.getId())); u1.setPassword(password); u1.setAge(age); session.update(u1); } //提交到数据库 mit(); //跳转到回复页面 response.sendRedirect("reply.jsp"); }catch(RuntimeExceptione){ if(tx!=null){ tx.rollback(); }throwe; }finally{ session.close(); } } if(action.equals("delete")){ //生成Session实例 Sessionsession=sessionFactory.openSession(); Transactiontx=null; try{ tx=session.beginTransaction(); Queryquery=session.createQuery("fromUseruwhereu.username=?"); query.setString(0,username); Listlist=query.list(); for(inti=0;i<list.size();i++){ Useru=(User)list.get(i); Useru1=(User)session.get(User.class,newInteger(u.getId())); session.delete(u1); } //提交到数据库 mit();

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论