欢迎来到天天文库
浏览记录
ID:23005015
大小:562.30 KB
页数:13页
时间:2018-11-02
《云南大学软件学院j2ee实验5》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、云南大学软件学院J2EE实验报告姓名:学号:班级:曰期:成绩:Lab5-分页和Cookie一、实验目的1、进一步掌握使用JDBC连接数据库的六个基本步骤;2、理解如何实现分页(涉及四个变设);3、理解Cookie如何在客户端保存用户相关的信息;二、实验步骤1、使用Eclipse建立DynamicWebProject项目,命名为LoginVI.7;2、重构LoginV1.6的Welcome.java,添加分页显示代码,完成LoginV1.7;3、使用Eclipse建立DynamicWebProject项目,命名为LoginVl.8;4、重构LoginVl.7的Lgoin.java、Logi
2、nCheck.java和Welcome.java,使用cookie技术保存用户名和密码,实现用户的自动登录,完成LoginV1.8;三、框架图1、LoginVl.7的框架图加入分页显示代码2、LoginV1.8的框架图相:杏cookie中是否存在用户名和密码,如有,重新定到使用cookie,保存用户名和密码检査cookie中是否存在用户名和密码,如有,重析定到四、主要代码LoginV1.7分页功能主要代码ConnectionFactory.javapackagecom.DB;//操作数裾库的工具类importjavaJo.*;importjava.sql.*;importjava.uti
3、l.*;//使用数据源需要引包importjavax.naming.*;importjavax.servlet.jsp.tagext.TryCatchFinally;importjavax.sq1.DataSource;publicclassConnectionFactory{//定义访问数据库需要的变量privatestaticConnectionct=null;//大多数情况下,使用FreparedStatment代替Statement,防止sql注入privatestaticPreparedStatementps=null;privatestaticResultSetrs=null
4、;//得到连接函数publicstaticConnectiongetConnection(){try{//创建一个上下文环境Contextcon=newjavax.naming.InitialContext();//通过con得到数据源DataSourceds=(DataSource)con.lookup(njava:comp/env/wangzengweiH//得到连接ct=ds.getConnection();}catch(Exceptione){//TODO:handleexceptione.printStackTracef);}returnct;}//有ResultSet返冋值的
5、操作,主要执行查询操作publicstaticResultSetexecuteQuery(Stringsql,String门parameters){try{ct=ConnectionFactory.getConnection();ps=ct.prepareStatement(sql);//通过传递的数组操作数据库if(parameters!=null&&!parameters.equals(MH)){for(inti=O;i6、ch(Exceptione){//TODO:handleexceptione.printStackTrace();}returnrs;}//没有返回ResultSet,主要执行增删改楝作publicstaticvoidexcuteUpdate(Stringsql,String[]parameters){try{ct=ConnectionFactory.getConnection();ps=ct.prepareStatement(sql);if(parameters!=null&&!parameters.equals(Kn)){for(inti=O;i7、i++){ps.setString(i+1,parametersfil);}}ps.executeUpdate();}catch(Exceptione){//TODO:handleexceptione.printStackTrace();//开发阶段,抛出异常//抛出运行异常,给调川该函数的函数•一个选择可以处理,也可以放弃处理thrownewRuntimeException(e.getMessage());}finally{clo
6、ch(Exceptione){//TODO:handleexceptione.printStackTrace();}returnrs;}//没有返回ResultSet,主要执行增删改楝作publicstaticvoidexcuteUpdate(Stringsql,String[]parameters){try{ct=ConnectionFactory.getConnection();ps=ct.prepareStatement(sql);if(parameters!=null&&!parameters.equals(Kn)){for(inti=O;i7、i++){ps.setString(i+1,parametersfil);}}ps.executeUpdate();}catch(Exceptione){//TODO:handleexceptione.printStackTrace();//开发阶段,抛出异常//抛出运行异常,给调川该函数的函数•一个选择可以处理,也可以放弃处理thrownewRuntimeException(e.getMessage());}finally{clo
7、i++){ps.setString(i+1,parametersfil);}}ps.executeUpdate();}catch(Exceptione){//TODO:handleexceptione.printStackTrace();//开发阶段,抛出异常//抛出运行异常,给调川该函数的函数•一个选择可以处理,也可以放弃处理thrownewRuntimeException(e.getMessage());}finally{clo
此文档下载收益归作者所有