用户增删改查文档.docx

上传人:b****5 文档编号:28598799 上传时间:2023-07-19 格式:DOCX 页数:19 大小:1.35MB
下载 相关 举报
用户增删改查文档.docx_第1页
第1页 / 共19页
用户增删改查文档.docx_第2页
第2页 / 共19页
用户增删改查文档.docx_第3页
第3页 / 共19页
用户增删改查文档.docx_第4页
第4页 / 共19页
用户增删改查文档.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

用户增删改查文档.docx

《用户增删改查文档.docx》由会员分享,可在线阅读,更多相关《用户增删改查文档.docx(19页珍藏版)》请在冰豆网上搜索。

用户增删改查文档.docx

用户增删改查文档

 

用户的增删改查

 

项目组二

 

需求说明书

文件状态:

[√]待定稿

[√]正式发布

[√]正在修改

文件标识:

JSP用户的增、删、改、查询

当前版本:

3.0

作者:

小组成员

完成日期:

2011年4月13日星期三

版本历史

版本/状态

作者

参与者

起始日期

备注

1.0

小组

许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩

2011/4/08

开始研究

2.0

小组

许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩

2011/4/12

制作中

3.0

小组

许斯宁、顾萍、李雪、杨婕妤、唐春燕、洪瑞雪、曹芝佩

2011/4/13

完成

目录

1.背景介绍3

2.需求分析4

2.1系统功能需求概要4

2.1.1前台4

2.1.2后台4

2.2功能模块图4

3.系统建模5

4.系统分析与设计4

4.1数据模型5

4.1.1E-R图6

4.1.2逻辑结构设计(关系图)6

4.2主要功能模块流程图7

5.系统实现与测试8

5.1系统实现(主要代码)8

5.1.1JavaBean连接数据库的使用9

5.1.2用户的增删改查9

5.2系统测试14

5.2.1注册界面14

5.2.2登录界面14

5.2.3登录成功界面15

5.2.4增删改查15

5.2.5修改密码16

6.小结16

6.1心得体会16

6.2遇到的问题17

 

1背景介绍

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。

计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。

用户的增删改查是基于JSP来设计的。

JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。

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)修改用户

5)查询用户

2.2功能模块图

3系统建模

游客管理

管理员用户登录

登录

用户管理

查询注册

 

总体系统用例图

 

4系统分析与设计

4.1数据模型

4.1.1E-R图

系统ER图

m:

n

m:

n

m:

n

4.1.2逻辑结构设计(关系表)

用户表:

字段名

字段名类型

是否为空

主键

备注说明

Username

Varchar(20)

Notnull

用户名称

Userpassword

Varchar(20)

Notnull

用户密码

UserID

Bigint

Notnull

用户ID

4.2主要功能模块流程图

5系统实现与测试

5.1系统实现(主要代码)

5.1.1JavaBean连接数据库的使用

●名称:

dbPool.java

packagelogin;

/*数据访问组件*/

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("/db2.properties");

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();

}

}

5.1.2用户的增、删、改、查

packagelogin;

/*模型组件*/

importjava.sql.*;

importjava.util.*;

publicclassloginHandler{

publicloginHandler(){

}

Connectionconn;

PreparedStatementps;

ResultSetrs;

//检查是否已注册

publicbooleancheckLogin(ArrayListarr)

{

//从数据访问组件dbPool中取得连接

conn=dbPool.getConnection();

Stringname=(String)arr.get(0);

Stringpassword=(String)arr.get

(1);

try{

Stringsql="select*fromapp.loginwherename=?

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;}

}

publicbooleanAdd(ArrayListarr)

{//从数据访问组件dbPool中取得连接

conn=dbPool.getConnection();

intflag;

Stringname=(String)arr.get(0);

Stringpassword=(String)arr.get

(1);

try{

Stringsql="insertintoapp.login(name,password)values(?

?

)";

ps=conn.prepareStatement(sql);

ps.setString(1,name);

ps.setString(2,password);

//rs=ps.executeQuery();

flag=ps.executeUpdate();

if(flag!

=0)

{//释放资源

ps.close();

conn.close();

returntrue;

}

else{

ps.close();

conn.close();

returnfalse;

}

}catch(SQLExceptione){returnfalse;}

}

publicbooleanDel(ArrayListarr)

{

//从数据访问组件dbPool中取得连接

conn=dbPool.getConnection();

intflag;

Stringid=(String)arr.get(0);

//Stringpassword=(String)arr.get

(1);

try{

Stringsql="deletefromapp.loginwhereid=?

";

ps=conn.prepareStatement(sql);

ps.setString(1,id);

//ps.setString(2,password);

//rs=ps.executeQuery();

flag=ps.executeUpdate();

if(flag!

=0)

{

//释放资源

ps.close();

conn.close();

returntrue;

}

else{

ps.close();

conn.close();

returnfalse;

}

}catch(SQLExceptione){returnfalse;}

}

publicbooleanupServlet(ArrayListarr)

{

//从数据访问组件dbPool中取得连接

conn=dbPool.getConnection();

intflag;

Stringid=(String)arr.get(0);

Stringname=(String)arr.get

(1);

Stringpassword=(String)arr.get

(2);

try{

Stringsql="updateapp.loginsetname=?

password=?

whereid=?

";

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();

returntrue;

}

else{

ps.close();

conn.close();

returnfalse;

}

}catch(SQLExceptione){returnfalse;}

}

publicbooleanselServlet(ArrayListarr)

{

//从数据访问组件dbPool中取得连接

conn=dbPool.getConnection();

intflag;

Stringid=(String)arr.get(0);

Stringsql;

if(id.equals(null))

{

try{

sql="select*fromapp.loginwhere1=1";

ps=conn.prepareStatement(sql);

rs=ps.executeQuery();

if(rs.next())

{

//释放资源

rs.close();

ps.close();

conn.close();

returntrue;

}

else{

rs.close();

ps.close();

conn.close();

returntrue;

}

}catch(SQLExceptione){returntrue;}

}

else

{try{

sql="select*fromapp.loginwhere1=1andid=?

";

ps=conn.prepareStatement(sql);

ps.setString(1,id);

rs=ps.executeQuery();

if(rs.next())

{//释放资源

rs.close();

ps.close();

conn.close();

returntrue;

}

else{

rs.close();

ps.close();

conn.close();

returntrue;

}

}catch(SQLExceptione){returntrue;}

}

}

}

 

5.2系统测试

5.2.1注册界面:

5.2.2登入界面:

5.2.3登入成功界面:

5.2.4增删改查:

5.2.5修改密码:

 

6小结

6.1心得体会

这次的项目的开发是我们小组花了大量的时间、认真的做的,一个星期左右的时间,老师的要求基本实现了。

总体说来感觉受益匪浅,因为在实践的过程中把所学的理论东西基本都用上了,完整的回顾了一遍;当然其中在遇到一些困难,难题没法解决时,还锻炼了我门小组的耐心与专研精神,大家不厌其烦的翻书找答案,看不懂就多看几遍,不断的讨论着,到最后领会到了其中的奥妙;也发现网络其实是个很好的资源,有问题就XX一下,还是很有帮助的,不用走太多的弯路。

 

6.2遇到的问题

常见问题

解决方案

解决人员

页面设计不够美观

表格的合理运用以及选图美观点

李雪和杨婕妤

数据库设计

大家一起讨论了该怎么设计数据库,并在添加新信息的时候检测是否违反主键的规则

曹芝佩和洪瑞雪

数据库连接

这次链接数据库用的是javebean,用try{}catch(SQLExceptione){out,print(e);},加上这个代码它会告诉你数据库什么地方出错了,这使得我更容易修改代码,检错机制还是挺有帮助的。

许斯宁和唐春燕

关于验证的问题

在这次试验中很多操作都要有验证再先操作结束之后也要判断是否成功或者提示用户成功,比如在更新数据库时要检测操作是否完成(有时程序不出错,但实际的操作却没有完成,所以检测是比较重要的)。

这个过程中应用的最多的是session对象的使用,对session的两种方法set和get的使用现在已经非常的熟悉,

许斯宁,顾萍,唐春燕,洪瑞雪,李雪,杨婕妤,曹芝佩

小组分工:

许斯宁:

小组成员各项任务,整合资源(人力、图片、文档)代码编写与整合

李雪:

管理员管理页面、数据库设计(E-R图)

杨婕妤:

文档整理、网页美工

顾萍:

文档编写

洪瑞雪:

网页美工、用户界面设计及编写

曹芝佩:

文档整理、项目图的绘制

唐春燕:

PPT制作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1