1、用户增删改查文档用户的增删改查项目组二需求说明书文件状态: 待定稿 正式发布 正在修改文件标识:JSP 用户的增、删、改、查询当前版本:3.0作 者:小组成员完成日期:2011年4月13日星期三版本历史版本/状态作者参与者起始日期备注1.0小组许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩2011/4/08开始研究2.0小组许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩2011/4/12制作中3.0小组许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩2011/4/13完成目录1.背景介绍 32.需求分析 42.1系统功能需求概要 42.1.1前台 42.1.2后台 42.2功能模块图
2、 43.系统建模 54.系统分析与设计 44.1数据模型 54.1.1 E-R图 64.1.2逻辑结构设计(关系图) 64.2主要功能模块流程图 75.系统实现与测试 85.1系统实现(主要代码) 85.1.1 JavaBean连接数据库的使用 95.1.2 用户的增删改查 95.2系统测试 145.2.1 注册界面 145.2.2 登录界面 145.2.3 登录成功界面 155.2.4 增删改查 155.2.5 修改密码 166.小结 166.1心得体会 166.2遇到的问题 171 背景介绍 信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与
3、人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。用户的增删改查是基于JSP来设计的。JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*。Htm,*html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件。2 需求分析2.1 系统功能需求概要2.1.1 前台:1) 用户注册2) 用户登录3) 用户浏览(浏览员浏览页面)4) 用户修改(修改密码)2.1.2 后台: 1)管理员登录 2)添加用户 3)删除
4、用户 4)修改用户 5)查询用户2.2 功能模块图3 系统建模 游客管理 管理员 用户 登录 登录 用户管理 查询 注册总体系统用例图4 系统分析与设计4.1 数据模型4.1.1 E-R图系统ER图m: nm: nm:n4.1.2 逻辑结构设计(关系表)用户表:字段名字段名类型是否为空主键备注说明UsernameVarchar(20)Not null否用户名称UserpasswordVarchar(20)Not null否用户密码UserIDBigintNot null是用户ID4.2主要功能模块流程图5 系统实现与测试5.1系统实现(主要代码)5.1.1 JavaBean 连接数据库的使用
5、名称:dbPool.javapackage login;/* 数据访问组件 */import java.io.*;import java.util.*;import java.sql.*;public class dbPool private static dbPool instance = null; /取得连接 public static synchronized Connection getConnection() if (instance = null) instance = new dbPool(); return instance._getConnection(); private
6、 dbPool() super(); private Connection _getConnection() try String sDBDriver = null; String sConnection = null; String sUser = null; String sPassword = null; Properties p = new Properties(); InputStream is = getClass().getResourceAsStream(/db2.properties); p.load(is); sDBDriver = p.getProperty(DBDriv
7、er,sDBDriver); sConnection = p.getProperty(Connection,sConnection); sUser = p.getProperty(User,); sPassword = p.getProperty(Password,); Properties pr = new Properties(); pr.put(user,sUser); pr.put(password,sPassword); pr.put(characterEncoding, GB2312); pr.put(useUnicode, TRUE); Class.forName(sDBDriv
8、er).newInstance(); return DriverManager.getConnection(sConnection,pr); catch(Exception se) System.out.println(se); return null; /释放资源 public static void dbClose(Connection conn,PreparedStatement ps,ResultSet rs) throws SQLException rs.close(); ps.close(); conn.close(); 5.1.2 用户的增、删、改、查package login;
9、/* 模型组件 */import java.sql.*;import java.util.*;public class loginHandler public loginHandler() Connection conn; PreparedStatement ps; ResultSet rs;/检查是否已注册 public boolean checkLogin(ArrayList arr) /从数据访问组件dbPool中取得连接 conn = dbPool.getConnection(); String name = (String)arr.get(0); String password =
10、(String)arr.get(1); try String sql = select * from app.login where name=? and password=?; ps = conn.prepareStatement(sql); ps.setString(1,name); ps.setString(2,password); rs = ps.executeQuery(); if(rs.next() /释放资源 dbPool.dbClose(conn,ps,rs); return true; else dbPool.dbClose(conn,ps,rs); return false
11、; catch (SQLException e) return false; public boolean Add(ArrayList arr) /从数据访问组件dbPool中取得连接 conn = dbPool.getConnection(); int flag; String name = (String)arr.get(0); String password = (String)arr.get(1); try String sql = insert into app.login(name,password) values(?,?); ps = conn.prepareStatement(
12、sql); ps.setString(1,name); ps.setString(2,password); / rs = ps.executeQuery(); flag=ps.executeUpdate(); if(flag!=0) /释放资源 ps.close(); conn.close(); return true; else ps.close(); conn.close(); return false; catch (SQLException e) return false; public boolean Del(ArrayList arr) /从数据访问组件dbPool中取得连接 co
13、nn = dbPool.getConnection(); int flag; String id = (String)arr.get(0);/ String password = (String)arr.get(1); try String sql = delete from app.login where id=?; ps = conn.prepareStatement(sql); ps.setString(1,id); / ps.setString(2,password); / rs = ps.executeQuery(); flag=ps.executeUpdate(); if(flag
14、!=0) /释放资源 ps.close(); conn.close(); return true; else ps.close(); conn.close(); return false; catch (SQLException e) return false; public boolean upServlet(ArrayList arr) /从数据访问组件dbPool中取得连接 conn = dbPool.getConnection(); int flag; String id=(String)arr.get(0); String name = (String)arr.get(1); Str
15、ing password = (String)arr.get(2); try String sql = update app.login set name=? ,password=? where id=?; ps = conn.prepareStatement(sql); ps.setString(1,name); ps.setString(2,password); ps.setString(3, id); / rs = ps.executeQuery(); flag=ps.executeUpdate(); if(flag!=0) /释放资源 ps.close(); conn.close();
16、 return true; else ps.close(); conn.close(); return false; catch (SQLException e) return false; public boolean selServlet(ArrayList arr) /从数据访问组件dbPool中取得连接 conn = dbPool.getConnection(); int flag; String id = (String)arr.get(0); String sql; if(id.equals(null) try sql = select * from app.login where
17、 1=1 ; ps = conn.prepareStatement(sql); rs = ps.executeQuery(); if(rs.next() /释放资源 rs.close(); ps.close(); conn.close(); return true; else rs.close(); ps.close(); conn.close(); return true; catch (SQLException e) return true; else try sql = select * from app.login where 1=1 and id=?; ps = conn.prepa
18、reStatement(sql); ps.setString(1,id); rs = ps.executeQuery(); if(rs.next() /释放资源 rs.close(); ps.close(); conn.close(); return true; else rs.close(); ps.close(); conn.close(); return true; catch (SQLException e) return true; 5.2 系统测试5.2.1 注册界面:5.2.2 登入界面:5.2.3 登入成功界面:5.2.4 增删改查:5.2.5 修改密码:6 小结6.1心得体会
19、这次的项目的开发是我们小组花了大量的时间、认真的做的,一个星期左右的时间,老师的要求基本实现了。总体说来感觉受益匪浅,因为在实践的过程中把所学的理论东西基本都用上了,完整的回顾了一遍;当然其中在遇到一些困难,难题没法解决时,还锻炼了我门小组的耐心与专研精神,大家不厌其烦的翻书找答案,看不懂就多看几遍,不断的讨论着,到最后领会到了其中的奥妙;也发现网络其实是个很好的资源,有问题就XX一下,还是很有帮助的,不用走太多的弯路。6.2 遇到的问题常见问题解决方案解决人员页面设计不够美观表格的合理运用以及选图美观点李雪和杨婕妤数据库设计大家一起讨论了该怎么设计数据库,并在添加新信息的时候检测是否违反主键
20、的规则曹芝佩和洪瑞雪数据库连接这次链接数据库用的是javebean,用trycatch(SQLException e)out,print(e);,加上这个代码它会告诉你数据库什么地方出错了,这使得我更容易修改代码,检错机制还是挺有帮助的。许斯宁和唐春燕关于验证的问题在这次试验中很多操作都要有验证再先操作结束之后也要判断是否成功或者提示用户成功,比如在更新数据库时要检测操作是否完成(有时程序不出错,但实际的操作却没有完成,所以检测是比较重要的)。这个过程中应用的最多的是session对象的使用,对session的两种方法set 和get的使用现在已经非常的熟悉,许斯宁,顾萍,唐春燕,洪瑞雪,李雪,杨婕妤,曹芝佩小组分工:许斯宁:小组成员各项任务,整合资源(人力、图片、文档)代码编写与整合李 雪:管理员管理页面、数据库设计(E-R图)杨婕妤:文档整理、网页美工顾 萍:文档编写洪瑞雪:网页美工、用户界面设计及编写曹芝佩:文档整理、项目图的绘制唐春燕:PPT制作
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1