服装库存管理系统课程设计报告书_第1页
服装库存管理系统课程设计报告书_第2页
服装库存管理系统课程设计报告书_第3页
服装库存管理系统课程设计报告书_第4页
服装库存管理系统课程设计报告书_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、 . . 20/26长 沙 学 院课程设计说明书题目服装库存管理系统系(部)计算机科学与技术系专业(班级)2010软件工程(服务外包)1班曾祥炫学号2010022111指导教师怡起止日期2012.3.12 2012.7.6课程设计任务书课程名称:基础编程能力考核设计题目:服装库存管理系统已知技术参数和设计要求:问题描述(功能要求):服装库存管理系统主要包括:系统管理 系统管理包括用户管理和货号管理,能进行增加、删除、修改和查找的操作。库存管理 库存管理包括入库单管理和出库单管理。入库单管理包括入库单基本信息管理和入库单明细管理,并能分别对入库单和入库单明细进行增加、删除、修改和查找的操作。出库

2、单管理包括出库单基本信息管理和出库单明细管理,并能分别对出库单和出库单明细进行增加、删除、修改和查找的操作。辅助管理辅助管理包括修改密码。2. 运行环境要求:(1)客户端:Windows操作系统IE浏览器(2)服务器:windows server 版操作系统Tomcat web 服务器My SQL 数据库服务器3. 技术要求:强调软件工程过程文档的规化。需求分析规格说明书与用例规约系统数据库设计,时序图,类图,MVC架构系统完整编码,采用JSP、Servlet技术设计工作量:40课时工作计划:(1) 2010级软件工程所有班级16课时: 1609理论讲座20课时:上机、调试。计算机系机房4课时

3、:答辩。计算机系机房。(具体时间地点老师先申请,机动安排)指导教师签名:日期:教研室主任签名: 日期:系主任签名: 日期:学院课程设计鉴定表曾祥炫学号2010022111专业软件工程班级10软件1班设计题目服装库存管理系统指导教师怡指导教师意见:评定等级: 教师签名: 日期:答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期:系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“中等”、“与格”、“不与格”五类;项目实训(四)工作计划表周 次实训容备 注第0周(2012.3.122012.4.6)实训启动召集项目组学生开会明确实训的容和要求袁伟森

4、老师讲课致远楼1609第一周(2012.5.142012.5.18)1系统需求分析设计致远楼1409第二周(2012.5.212012.5.25)1组长讨论会,讨论需求分析进度情况完善需求文档2. 用例和用例规约设计致远楼1409第三周(2012.5.282012.6.1)1系统详细设计,类模型设计2时序图的设计致远楼1408第五周(2012.6.42012.6.8)1第一阶段任务检查需求分析2. 开发工具的使用致远楼1408第六周(2012.6.112012.6.15)1Struts2技术讲解2. 第二阶段任务检查数据库的设计致远楼1408第七周(2012.6.182012.6.22)1.

5、代码实现2. 答疑调试致远楼1408第八周(2012.6.252012.6.29)1. 代码实现2. 答疑调试致远楼1408第九周(2012.7.22012.7.6)1答辩致远楼1401目录TOC o 1-3 h z uHYPERLINK l _Toc329101136第1章设计容与要求 PAGEREF _Toc329101136 h 1HYPERLINK l _Toc3291011371.1 设计容 PAGEREF _Toc329101137 h 1HYPERLINK l _Toc3291011381.2 设计要求 PAGEREF _Toc329101138 h 1HYPERLINK l _

6、Toc329101139第2章需求分析 PAGEREF _Toc329101139 h 3HYPERLINK l _Toc3291011402.1整体用例图 PAGEREF _Toc329101140 h 3HYPERLINK l _Toc3291011412.2 用例规约 PAGEREF _Toc329101141 h 3HYPERLINK l _Toc3291011422.3 需求描述 PAGEREF _Toc329101142 h 5HYPERLINK l _Toc329101143第3章系统设计 PAGEREF _Toc329101143 h 6HYPERLINK l _Toc3291

7、011443.1 数据库设计 PAGEREF _Toc329101144 h 6HYPERLINK l _Toc3291011453.1.1数据库对象命名规则 PAGEREF _Toc329101145 h 6HYPERLINK l _Toc3291011463.1.2 数据项编码规则 PAGEREF _Toc329101146 h 6HYPERLINK l _Toc3291011473.1.3 用户信息表结构 PAGEREF _Toc329101147 h 6HYPERLINK l _Toc3291011483.2 类图设计 PAGEREF _Toc329101148 h 7HYPERLIN

8、K l _Toc3291011493.3 时序图设计 PAGEREF _Toc329101149 h 7HYPERLINK l _Toc329101150第4章系统实现 PAGEREF _Toc329101150 h 9HYPERLINK l _Toc3291011514.1 登陆设计实现 PAGEREF _Toc329101151 h 9HYPERLINK l _Toc3291011524.2 修改密码设计实现 PAGEREF _Toc329101152 h 12HYPERLINK l _Toc329101153第5章总结 PAGEREF _Toc329101153 h 17HYPERLIN

9、K l _Toc329101154参考文献 PAGEREF _Toc329101154 h 18HYPERLINK l _Toc329101156附录 PAGEREF _Toc329101156 h 19第1章 设计容与要求1.1 设计容服装库存管理系统主要的设计容包括:(1)系统管理 系统管理包括用户管理和货号管理。在用户管理中要包括新建系统用户、删除系统用户、查看系统用户详细信息、更新系统用户、查询系统用户、系统用户登陆和修改密码。在货号管理中包括新建货号、删除货号、查看货号详细信息、更新货号、查询货号(2)库存管理库存管理包括入库单管理和出库单管理。入库单管理包括新建入库单、删除入库单、

10、查看入库单详细信息、更新入库单、提交入库单、查询入库单、新增入库单明细、查看入库单明细的详细信息、更新入库单明细、删除入库单明细、查询入库单明细。出库单管理包括新建出库单、删除出库单、查看出库单的详细信息、更新出库单、提交出库单、查询出库单、新增出库单明细、查看出库单明细的详细信息、更新出库单明细、删除出库单明细、查询出库单明细。(3)辅助管理辅助管理包括修改密码。1.2 设计要求(1)系统管理 用户管理中在新建系统用户时用户登录号、用户和用户密码为必选项,如果没有填写应该要能给出提示信息。用户能够根据用户登录号和用户来查询系统用户的详细信息。系统用户能够根据用户登录号和密码来成功登陆系统。用

11、户在成功登陆后可以使用旧密码来设置新密码。 货号管理中在新建货号时货号、品名、色号、尺码、面料、里料、出厂价、零售价为必选项,若有一项没有填写应该要能给出提示信息。用户可以根据货号、色号、尺码来查看货号详细信息。(2)库存管理 入库单管理中在新建入库单时入库日期、所入仓库、来源是必选项,如果有一项没有填写,系统要能够给出提示信息,备注为非必选项。用户成功登陆系统后可以根据单据号来查看入库单的详细信息。用户在更新入库单时要先查询到要更新的入库单,然后再进行入库单的更新。用户在保存入库单信息后可以进行新增入库单详细信息的操作,新建时可以设定入库单明细的货号、色号、尺码和数量。 出库单管理中在新建出

12、库单时出库日期、所出仓库、接收人、接收人为必选项,若有一项没有填写则给出提示信息,其中备注为非必选项。用户成功登陆系统后可以根据单据号来查看出库单的详细信息。用户在更新出库单时要先查询到要更新的出库单,然后再进行出库单的更新。用户在保存出库单信息后可以进行新增出库单详细信息的操作,新建时可以设定出库单明细的货号、色号、尺码和数量。(3)辅助管理用户在成功登陆系统后可以进行修改密码,修改密码时旧密码、新密码和确认密码为必选项,如果有一项没有填写,系统应该给出提示信息。旧密码必须要与登录时使用的密码一致,否则无法修改密码,新密码和确认密码也必须保持一致方能成功修改。第2章 需求分析2.1 整体用例

13、图 图1 全局用例图2.2 用例规约表1 用户登陆用例规约用例名称:用户登陆用例ID:CSMS-01角色:用户简要说明:用户利用登录号密码登陆系统前置条件:无基本事件流:1、用户输入登录号2、用户输入密码3、用户点击“登陆”按钮其它事件流:1、用户输入的登录号和密码为必选项,如有一项为空,系统要能给出提示信息 2、系统接收用户输入的登录号和密码并且将其与数据库中的用户信息表中的对应数据进行验证,验证成功则允许用户登陆,否则提醒用户输入正确的登录号和密码。异常事件流:1、登陆号或者密码为空就点击登陆。2、登录号或者密码错误后置条件:系统用户信息保存到数据库中,并且页面能够将用户输入的数据传送至后

14、台服务器中表2修改密码用例规约用例名称修改密码用例IDCSMS-02角色用户。简要说明用户修改密码前置条件用户已经登录系统基本事件流1、用户请求修改密码。2、系统弹出修改密码页面。3、用户输入旧密码。4、用户输入新密码,确认新密码。5、点击“完成”。其他事件流1、旧密码、新密码、确认密码为必选项、任何一项为空系统都要发出提示信息2、系统接收用户输入的旧密码,并且将旧密码与数据库中的密码进行验证,若新密码与确认密码一致,且验证通过,则允许用户修改密码异常事件流1、用户输入的旧密码与用户登陆使用的密码不一致。2、用户输入的新密码与确认密码不一致。后置条件系统能够获取用户在页面上输入的旧密码、新密码

15、和确认密码,并且对旧密码与登陆密码进行验证。2.3 需求描述1用户登陆需求编号:CODEMN-1需求描述:用户使用登录号和密码来成功登陆系统。CODEMN-1-1 用户输入登录号和密码CODEMN-1-2 页面获取用户输入的登录号和密码,并且与数据库中的数据进行比较CODEMN-1-3 证成功则允许用户登陆,否则提醒用户输入正确的登录号和密码。2用户修改密码需求编号:CODEMN-2 需求描述:用户修改密码CODEMN-2-1:用户输入旧密码、新密码、确认密码。CODEMN-2-2:系统接收用户输入的旧密码,并且将旧密码与数据库中的密码进行验证,同时将获取到的新密码和确认密码进行比较。CODE

16、MN-2-3:若旧密码验证通过,且新密码与确认密码一致,则允许用户修改密码,否则给出错误提示信息,密码修改不成功。第3章 系统设计3.1 数据库设计3.1.1数据库对象命名规则表3 数据库对象命名规则数据库对象命名规则备注表Tbl_功能描述字符串例如:tbl_user用户表视图View_功能描述字符串例如:view_userInfo用户视图存储过程Proc_功能描述字符串例如:proc_draw取款存储过程3.1.2 数据项编码规则表4数据项编码规则数据项命名规则数据类型长度围备注登录名用户开头字母字符10位无密码6位长的任意数字字符10位无货号2个大写字母+数字字符10位无色号颜色开头字母+

17、数字字符10位无删除状态逻辑数字1或0整数2无尺码正常人身高如170整数无入库日期年+月+日日期无3.1.3 用户信息表结构表5 用户信息表表名用户信息表数据库用户主键userLogin其他排序字段无索引字段无序号字段名称数据类型(精度围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明01userLoginVarchar(20)NY高无主键02usernameVarchar(20)NY高无03PasswordVarchar(20)NN高无04RemarkVarchar(20)FN低无05flagInt NN高无sql脚本create table user( userLogin varcha

18、r(20)not null primary key, userName varchar(20) not null,Password int not null , remark varchar(20),flag int not null);备注存储用户信息3.2 类图设计图2 系统登陆和修改密码的类图在登陆和修改密码中,主要运用到userImpl、UserServlet和Userinfo三个类。userImpl中实现了Userinterface中定义的方法,在userImpl中可以拼写sql语句来实现对数据库的操作,即可以修改Userinfo中的属性,BConnection起到了连接数据库的作用

19、。UserServlet根据用户在页面上操作来决定调用什么方法,doPost()可以判断用户在页面上JS页面上选择的操作的类型,根据操作类型来决定dologin()和doUpdatePwd()方法的调用。3.3 时序图设计图3 用户登陆时序图如图3所示,用户首先在登陆界面的文本框中输入登录号和密码,UserServlet获取用户输入的登录号和密码,调用userImpl中的loginUser()方法将获取的登录号和密码作为参数传送至数据库中执行,并且返回执行结果,UserServlet根据返回结果来判断是否发生页面跳转和给出用户提示信息。图4 修改密码时序图如图4所示,用户首先在修改密码页面输入

20、旧密码、新密码、确认密码,UserServlet获取用户输入的旧密码、新面貌、确认密码,并且调用userImpl中的updatePwd()函数,以获取的三个值作为参数,updatePwd()将旧密码发往数据库中进行验证,UserServlet根据验证结果来判断密码是否修改成功和传送提示信息。修改密码界面还要验证新密码与确认密码是一致。第4章 系统实现4.1 登陆设计实现代码段1 声明接口:er;import java.sql.SQLException;import.csms.dao.model.UserInfo;import.mysql.jdbc.Res

21、ultSet;publicinterface Userinterface public ResultSet loginUser(String userLogin,String password) throws SQLException;/登陆验证说明:此段代码的作用是定义接口声明相关的方法,public ResultSet loginUser(String userLogin,String password) throws SQLException;定义的是登陆验证方法,此方法声名了在实现登陆的方法中需要传进的两个参数String userLogin,String password,即登录号和

22、登陆密码。代码段2 接口实现:package .erImpl;import java.sql.SQLException;import .er.Userinterface;import .csms.dao.model.UserInfo;import .csms.db.DBconnection;import .mysql.jdbc.Connection;import .mysql.jdbc.PreparedStatement;import .mysql.jdbc.ResultSet;import .mysql.jdbc.Statement;publi

23、c class Userimpl implements Userinterface DBconnection db=null;Connection conn=null; Statement pst=null;private String password; public Userimpl() throws ClassNotFoundException, SQLException db=new DBconnection(); conn=db.getConn(); pst=(Statement) conn.createStatement(); /登陆验证/public ResultSet logi

24、nUser(String userLogin, String password) throws SQLException / TODO Auto-generated method stubStringBuffer strsql=new StringBuffer();strsql.append( select * from usertable where );strsql.append( userLogin=+userLogin+ and );strsql.append( password=+password+);ResultSet rs=(ResultSet) pst.executeQuery

25、(strsql.toString();return rs;说明:此段代码是先前定义的接口的实现部分,StringBuffer strsql=new StringBuffer();定义了一个字符串strsql。代码strsql.append( select * from usertable where );strsql.append( userLogin=+userLogin+ and );strsql.append( password=+password+);是拼写sql语句,意思是在数据库中查询用户的登录名和密码。ResultSet rs=(ResultSet) pst.executeQue

26、ry(strsql.toString();return rs;意思是将sql语句执行,并且将执行后的结果集合赋值给rs,最后返回rs。db=new DBconnection();conn=db.getConn();pst=(Statement) conn.createStatement(); 此段代码是进行数据库的连接。代码段3 数据库连接:publicclass DBconnection privatestatic String url=jdbc:mysql:/:3306/csms; /数据库的URLprivatestatic String user=root;/访问数据库

27、的用户名privatestatic String pwd=123456; /访问数据库的密码public Connection conn;publicConnection getConn() throws ClassNotFoundException, SQLException Class.forName(.mysql.jdbc.Driver);/装载JDBC驱动程序conn=(Connection) DriverManager.getConnection(url,user,pwd);returnconn; publicvoid closeConn() throws SQLException

28、conn.close();/关闭数据库连接 说明:privatestatic String url=jdbc:mysql:/:3306/csms;说明了数据库CSMS的地址,此段代码的主要使用是控制数据库的连接。代码段4 检测输入域:function doLogin()if(idFrmMain.userid.value=) alert(请用户输入账号!);return ; if(idFrmMain.psword.value=) alert(请用户输入密码!);return ; idFrmMain.action=UserServlet?opt=login; idFrmMain.

29、submit();说明:if(idFrmMain.userid.value=)和if(idFrmMain.psword.value=)是用于判断登陆界面用于输入登录号和登陆密码的两个文本框中的值是否为空,当用户点击“登陆”按钮时若userid和psword还为空,则提醒用户输入登录号和登陆密码。idFrmMain.action=UserServlet?opt=login;idFrmMain.submit();意思是当用户点击登陆后将调用UserServlet中的方法。代码段5 登陆验证与页面跳转:publicvoid dologin( ServletRequest request, Servl

30、etResponse response)throws ServletException, IOException, SQLException Session session=request.getSession(); String user_name=request.getParameter(userid);/获得页面输入的登录号 String user_pwd=request.getParameter(psword);/获得页面输入的登录密码 ResultSet rs=userInter.loginUser(user_name, user_pwd);if(rs.next()session.s

31、etAttribute(userLogin,user_name); response.sendRedirect(Main.htm); /页面的跳转,验证成功进入主页面,否则任然停留在登陆页面/else String msg=用户密码错误; request.setAttribute(msg, msg); RequestDispatcher rd=request.getRequestDispatcher(login.jsp); rd.forward(request, response); 说明:String user_name=request.getParameter(userid);是用于获取登

32、陆页面输入的登录号。String user_pwd=request.getParameter(psword);是用于获取登陆页面输入的登录密码。ResultSet rs=userInter.loginUser(user_name, user_pwd);调用loginUser方法,将user_name, user_pwd作为参数传入到loginUser方法中,并且将结果集赋值给rs。if(rs.next()是对re.next()进行逻辑判断,若逻辑值为1则执行中间部分的方法。 session.setAttribute(userLogin,user_name);是将变量user_name以user

33、Login为名字保存在session中。response.sendRedirect(Main.htm);表示从当前servlet跳转到Main.htl页面。else String msg=用户密码错误; request.setAttribute(msg, msg); RequestDispatcher rd=request.getRequestDispatcher(login.jsp); rd.forward(request, response); 表示当re.next()逻辑判断为0时提醒用户错误信息,并且任然停留在登陆页面,即login.jsp。4.2 修改密码设计实现代码段1定义接口:p

34、er;import java.sql.SQLException;import.csms.dao.model.UserInfo;import.mysql.jdbc.ResultSet;publicinterface Userinterface publicint updatePwd(String userLogin,String oldPwd,String newPwd) throws SQLException, ClassNotFoundException;/修改密码说明:此段代码的作用是定义接口声明相关的方法,public int updatePwd(S

35、tring userLogin,String oldPwd,String newPwd) throws SQLException, ClassNotFoundException;定义了修改密码方法,此方法声明了在实现修改密码的方法中需要传进的三个参数String userLogin,String oldPwd,String newPwd,即登录号、旧密码和新密码。代码段 2处理数据:publicint updatePwd(String userLogin,String oldPwd,String newPwd) throws SQLException, ClassNotFoundExcepti

36、on/ TODO Auto-generated method stubStringBuffer strSql=new StringBuffer();strSql.append(select * from usertable where);/拼写sql字符串strSql.append( userLogin=+userLogin+and password=+oldPwd+);DBconnection db=new DBconnection();/连接数据库Connection conn=db.getConn();PreparedStatement pst=(PreparedStatement) c

37、onn.prepareStatement(strSql.toString();/将SQL语句传送至服务器或数据库ResultSet rs=(ResultSet) pst.executeQuery();/执行语句,返回结果集if(rs.next()StringBuffer strUpdate=new StringBuffer(); strUpdate.append(update usertable set password=+newPwd+ where userLogin=+userLogin+); PreparedStatement pst1=(PreparedStatement) conn.

38、prepareStatement(strUpdate.toString();/将SQL语句传送至服务器或数据库return pst1.executeUpdate(); /执行sql语句,并且返回结果集elsereturn -1;说明:strSql.append(select * from usertable where);strSql.append( userLogin=+userLogin+and password=+oldPwd+);此段代码是在拼写sql语句。pst=(PreparedStatement)conn.prepareStatement(strSql.toString();。此

39、段代码是将拼写好的sql语句送入mysql数据库中。ResultSet rs=(ResultSet) pst.executeQuery();此段代码是将送入数据库中sql语句执行,并且将执行后的结果集赋值给rs。if(rs.next()此代码是对rs.next()进行逻辑判断,当逻辑为真时执行strUpdate.append(update usertablesetpassword=+newPwd+ where userLogin=+userLogin+);PreparedStatement pst1=(PreparedStatement) conn.prepareStatement(strUp

40、date.toString();即系统将用户设定的新密码发送到后台服务器中,服务器在数据库的用户信息表中将用户登录密码设置成新密码。代码段3 在页面对旧密码、新密码、确认密码进行验证:function save()if(idFrmMain.oldPwd.value=) alert(请填写旧密码);return; if(idFrmMain.newPwd.value!=&idFrmMain.reNewPwd.value!=)if(idFrmMain.newPwd.value!=idFrmMain.reNewPwd.value) alert(新密码和确认密码不一致);return; else ale

41、rt(新密码和确认密码不能为空);return; idFrmMain.action=UserServlet?opt=updatePwd; idFrmMain.submit();说明:if(idFrmMain.oldPwd.value=)此段代码的作用是判断oldPwd的值是否为空,若为空则弹出“请填写旧密码”的错误提醒。if(idFrmMain.newPwd.value!=&idFrmMain.reNewPwd.value!=)if(idFrmMain.newPwd.value!=idFrmMain.reNewPwd.value)此段代码是在判断用户输入的新密码和确认密码是否为空和是否相等,若

42、输入域为空则提醒用户输入新密码和确认密码,若新密码和确认密码不一致则提醒用户输入一致的新密码和确认密码。idFrmMain.action=UserServlet?opt=updatePwd;意思是用户选择修改密码后系统会调用UserServlet中的方法。代码段4 获取页面的操作类型:public void doPost( ServletRequest request, ServletResponse response)throws ServletException, IOException String opt=request.getParameter(opt); System.out.pr

43、intln(opt); if(opt.equals(updatePwd) /判断是否选择修改密码操作 try doUpdatePwd(request,response); /执行doUpdatePwd()方法 catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace(); 说明:opt是java里已经定义好的一种机制,用来获取页面上的

44、一些信息,if(opt.equals(“updatePwd”)是在判断opt取到的值是否等于“updatePwd”,若等于则调用doUpdatePwd(request,response)方法。代码段5 修改密码的主要方法:public void doUpdatePwd( ServletRequest request, ServletResponse response)throws ServletException, IOException, SQLException, ClassNotFoundException Session session=request.getSession();/声明

45、session String userName=(String)session.getAttribute(userLogin);/获取用户登陆 的登录号 String oldPwd=request.getParameter(oldPwd);/获取旧密码 String newPwd=request.getParameter(newPwd);/获取新密码 int result=userInter.updatePwd(userName, oldPwd, newPwd);/调用updatePwd()函数,并且传进userName, oldPwd, newPwd三个参数 String msg=;if(r

46、esult=-1) msg=旧密码验证失败; else msg=密码修改成功; request.setAttribute(msg, msg);/将变量msg存储在msg中 RequestDispatcher rd=request.getRequestDispatcher(common/password1001.jsp);/将msg提示信息传送至页面 rd.forward(request, response);说明:String userName=(String)session.getAttribute(userLogin);String oldPwd=request.getParameter(

47、oldPwd);String newPwd=request.getParameter(newPwd);意思是用request获取用户登陆时得登录名并且存储在session中,再使用getAttribute()函数将session中的值赋给userName。然后依次使用request将“oldPwd”和“newPwd”中的值赋给oldPwd和 newP result=userInter.updatePwd(userName, oldPwd, newPwd);表示调用UserImpl中的upodatePwd()方法,并且将userName, oldPwd, newPwd作为参数传进方法

48、体中。request.setAttribute(msg, msg);此段代码的意思是将变量msg保存在msg中。RequestDispatcher rd=request.getRequestDispatcher(common/password1001.jsp);此段代码的作用是将msg提示信息传送到页面上来,common/password1001.jsp就是修改密码页面的地址。第5章 总结通过这次服装管理系统(csms)实训的学习,我有以下收获:第一,对利用mysql数据库作为开发系统工程的数据存储工具有了很大程度的提升。第二,对软件工程的工程分析方法有了很大程度的提升,比如:对需求分析、概要

49、设计分析、业务描述、可行性分析等有了一些自己的见解。第三,环境不再单一,通过搭建配置JDK、tomcat、myeclipse之间的环境变量让我感受到真正做项目不是使用某一种工具就能实现的。第四,对java语言的熟练度有了很大提升,同时也领悟到jsp的强大力量。第五,这次的服装管理系统是我们一个团队共同开发而成的,我们每个人在团队里面都担任着不同的角色,但是每个角色都是这个团队不可或缺的部分,因此,通过这次实训,我加强了自己的团队意识、团队合作能力等。总之,这次服装管理系统实训对于我整个能力方面是有很大提升的。参考文献1 王行言. java语言与面向对象程序设计 M. :清华大学,2007.11

50、附录/接口声明er;import java.sql.SQLException;import.csms.dao.model.UserInfo;import.mysql.jdbc.ResultSet;publicinterface Userinterface publicint updatePwd(String userLogin,String oldPwd,String newPwd) throws SQLException, ClassNotFoundException;/修改密码public ResultSet loginUser(String use

51、rLogin,String password) throws SQLException;/登陆验证/接口实现部分erImpl;import java.sql.SQLException;er.Userinterface;import.csms.dao.model.UserInfo;import.csms.db.DBconnection;import.mysql.jdbc.Connection;import.mysql.jdbc.PreparedStatement;import.mysql.jdbc.ResultSet;

52、import.mysql.jdbc.Statement;publicclass Userimpl implements Userinterface DBconnection db=null;Connection conn=null; Statement pst=null;private String password;public Userimpl() throws ClassNotFoundException, SQLException db=new DBconnection();conn=db.getConn();pst=(Statement) conn.createStatement()

53、; /登陆验证/public ResultSet loginUser(String userLogin, String password) throws SQLException / TODO Auto-generated method stubStringBuffer strsql=new StringBuffer();strsql.append( select * from usertable where );/拼写修改strsql.append( userLogin=+userLogin+ and );strsql.append( password=+password+);ResultS

54、et rs=(ResultSet) pst.executeQuery(strsql.toString();/执行语句并且返回结果集return rs;/修改密码/publicint updatePwd(String userLogin,String oldPwd,String newPwd) throws SQLException, ClassNotFoundException/ TODO Auto-generated method stubStringBuffer strSql=new StringBuffer();strSql.append(select * from usertable

55、where);/拼写sql字符串strSql.append( userLogin=+userLogin+and password=+oldPwd+);DBconnection db=new DBconnection();/连接数据库Connection conn=db.getConn();PreparedStatement pst=(PreparedStatement) conn.prepareStatement(strSql.toString();/将SQL语句传送至服务器或数据库ResultSet rs=(ResultSet) pst.executeQuery();/执行语句,返回结果集i

56、f(rs.next()StringBuffer strUpdate=new StringBuffer(); strUpdate.append(update usertable set password=+newPwd+ where userLogin=+userLogin+); PreparedStatement pst1=(PreparedStatement) conn.prepareStatement(strUpdate.toString();/将SQL语句传送至服务器或数据库return pst1.executeUpdate();/执行sql语句,并且返回结果集elsereturn -1

57、;/登陆与修改密码的处理package.csms.servlet;import java.io.IOException;importjava.io.PrintWriter;import java.sql.SQLException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet. . Servlet;import javax.servlet. . ServletRequest;import javax.servlet. . ServletRespon

58、se;import javax.servlet. . Session;er.Userinterface;erImpl.Userimpl;import.mysql.jdbc.ResultSet;publicclassUserServletextends Servlet Userinterface userInter=null;public UserServlet() throws ClassNotFoundException, SQLException super();userInter=new Userimpl();publicvoid destroy() super.destroy(); / Just puts destroy string in log/ Put your code herepublicvoid doGet( ServletRequest request, ServletResponse response)throws ServletException, IOException doPost(request,response);/调用doPost方法publicvoid doPost( ServletRequest request, Ser

温馨提示

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

最新文档

评论

0/150

提交评论