JSP网络程序设计课程设计报告.doc_第1页
JSP网络程序设计课程设计报告.doc_第2页
JSP网络程序设计课程设计报告.doc_第3页
JSP网络程序设计课程设计报告.doc_第4页
JSP网络程序设计课程设计报告.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

网络程序设计课程设计报告项目组名称曙光班 级132401班代码总行数3000项目名称住房公积金管理系统1项目来源及目的住房公积金是一种长期性住房储蓄,在职工工作期间,职工个人和所在单位均应按照职工个人工资和职工工资总额的一定比例逐月筹集,作为职工个人住房基金,专户储存、统一管理、专项使用,并且为以后职工住房贷款提供贷款资金。所有党政机关、企事业单位的固定职工、劳动合同制职工以及三资企业等中方员工,均应交纳住房公积金。公积金管理中心应用住房公积金管理系统对缴存单位及职工缴纳的公积金进行信息化管理。2项目内容1柜员的功能:首先,柜员进行登录为员工开户,登陆成功之后,进行单位开户,如果单位开户成功进入个人开户,否则不能进行个人开户。个人开户的方法是:手工录入开户。图2-1 柜员用例图2.管理员功能:管理员只进行参数系统的维护功能图2-2 管理员用例图3.类图1.用户参数类图图3-1用户参数类图 2.系统参数类图图3-2 系统参数类图3.个人信息类图图3-3个人信息类图4.企业信息类图图3-4企业信息类图4.算法设计1. 系统参数表图4-1系统参数表表名Tb001表注释系统参数表列名中文名列类型列注释可否为空默认值SEQNAME键值信息CHARACTER(20)可自定义序号键值信息(如UNITACCNUM、PERACCNUM)。不可以SEQ当前序号CHARACTER(20)从1开始,每次取完递增不可以MAXSEQ最大序号INTEGER不可以999999999DESC描述CHARACTER(40)不可以FREEUSE1备用1CHARACTER(20)可以索引名索引类型包含字段TB001_PK_1唯一索引SEQNAME2. 单位信息表图4-2单位信息表表名Tb002表注释系统参数表列名中文名列类型列注释可否为空默认值UNITACCNUM 单位公积金账号CHARACTER(12)UNITACCNAME单位名称CHARACTER(100)从1开始,每次取完递增不可以UNITADDR单位地址CHARACTER(60)不可以ORGCODE组织机构代码CHARACTER(20)不可以SALARYDATE发薪日期CHARACTER(2)可以UNITPHONE联系电话CHARACTER(20)不可以UNITCHAR 单位类别CHARACTER(1)1-企业2-事业3-机关4-团体5-其他不可以UNITKIND企业类型CHARACTER(3)110-国有经济120-集体经济130-股份合作企业140-联营企业150-有限责任公司160-股份有限公司170-私营企业 190-其他企业200-港、澳、台商投资企业300-外商投资企业900-其他不可以UNITLINKMAN单位联系人CHARACTER(24)不可以UNITAGENTPAPNO经办人身份证号码CHARACTER(20)可以ACCSTATE账户状态CHARACTER(1)0正常9销户不可以BALANCE公积金余额DECIMAL(16,2)不可以BASENUMBER缴存基数DECIMAL(16,2)不可以UNITPROP单位比例DECIMAL(6,3)不可以PERPROP个人比例DECIMAL(6,3)不可以UNITPAYSUM单位月应缴额DECIMAL(16,2)不可以PERPAYSUM个人月应缴额DECIMAL(16,2)不可以PERSNUM单位人数INTEGER非销户人数不可以LASTPAYDATE最后汇缴月DATE不可以1899-12-01INSTCODE公积金中心机构代码CHARACTER(8)不可以默认为0110OP柜员CHARACTER(4)不可以默认为111111CREATDATE建立日期DATE不可以REMARK备注CHARACTER(64)可以索引名索引类型包含字段TB002_PK_1唯一索引UNITACCNUM3. 个人信息表图4-3个人信息表表名Tb003表注释个人基本资料表列名中文名列类型列注释可否为空默认值ACCNUM个人公积金账号CHARACTER(12)0不可以UNITACCNUM单位公积金账号CHARACTER(12)0不可以OPENDATE开户日期DATEBALANCE公积金余额DECIMAL(16,2)PERACCSTATE个人账户状态CHARACTER(1)0正常9销户BASENUMBER缴存基数DECIMAL(16,2)UNITPROP单位比例DECIMAL(6,3)INDIPROP个人比例DECIMAL(6,3)LASTPAYDATE最后汇缴月DATE1899-12-01UNITMONPAYSUM单位月应缴额DECIMAL(16,2)PERMONPAYSUM个人月应缴额YPAYAMT本年汇补缴额DECIMAL(16,2)自然年度YDRAWAMT年提取额DECIMAL(16,2)自然年度YINTERESTBAL年度结息DECIMAL(16,2)INSTCODE公积金中心机构代码CHARACTER(8)不可以默认为0110OP柜员CHARACTER(4)不可以默认为111111REMARK备注CHARACTER(64)可以索引名索引类型包含字段TB003_PK_1唯一索引ACCNUMTB003_PK_2索引UNITACCNUM4.单位用户登陆活动图柜员用户登录进入系统后可以进行的操作:开户(包括员工开户和单位开户),员工开户管理(包括新增、修改、删除和查看员工开户信息等),单位开户(包括新增、修改、删除和查看单位开户信息等)。图4-4柜员活动图单位用户登录5.个人用户管理模块活动图个人登录进入系统后可以进行的操作:个人信息查询和个人信息修改。图4-5柜员活动图-个人管理模块6.单位管理模块活动图单位用户进入系统后可以进行的操作:单位信息查询和单位信息修改操作。图4-6柜员活动图-单位管理模块7.管理员活动图管理员用户登录进入系统后可以进行的操作:系统参数的维护。图4-7管理员活动图5.项目运行界面1首页,登录页面。(1)柜员用户登录进入系统后可以进行操作。图5-1登录界面(2)柜员在登录系统时会进行帐户、密码的校验,不能错误、为空。图5-2登录校验界面(3)登录成功后进入系统主界面。图5-3登录成功界面(4)登录帐户、密码过程中出现错误则进入错误页面。图5-4登录出错界面2.柜员登陆后的界面。(1)柜员登录时系统管理入口如图5-5,在进入系统的时候,需要对柜员进行身份验证,验证信息输入错误时,不能进入系统,输入正确时,才能进入系统管理的主页面。图5-5柜员操作界面3.企业开户界面(1)柜员通过登录进入管理界面,可以进行一系列的操作,图5-5是柜员对单位的开户操作,添加后进行保存即可。图5-6企业开户界面(2)企业开户成功录入系统数据库。图5-7企业开户成功界面(3)对企业信息进行查询与修改。图5-8企业查询界面4.个人开户界面(1)柜员通过登入进入管理界面后,可进行一系列的操作,图5-9是柜员对个人的开户操作,添加后进行保存即可。图5-9个人开户界面(2)单位个人开户信息填写的主界面。图5-10个人开户成功界面(3)对单位个人信息进行查询与修改。图5-11个人信息查询界面(4)对单位个人信息进行查询成功后的界面。图5-12个人信息查询成功界面6.关键代码(要求在类的定义以及方法定义的前面给出相关描述信息)6.1登录 AdminInfo admin = new AdminInfo();DataBaseManager db = new DataBaseManager();String username = request.getParameter(value_1);String password = request.getParameter(value_2);admin.setUsername(username);admin.setPassword(password);HttpSession session = request.getSession();session.setAttribute(admin, admin);String sql = select * from tb_admin where username=+username+ and password=+password+;ResultSet rs = db.doQuery(sql);try if(rs.next()request.getRequestDispatcher(index.jsp).forward(request, response);elserequest.getRequestDispatcher(loginError.jsp).forward(request, response); catch (SQLException e) e.printStackTrace();6.2个人开户 response.setContentType(text/html);PrintWriter out = response.getWriter();HttpSession session=request.getSession(true);String bussCount=request.getParameter(BussCount);String bussName=request.getParameter(BussName);double bussPersent=Double.parseDouble(request.getParameter(BussPersent);double perPersent=Double.parseDouble(request.getParameter(PerPersent);String PersonName=request.getParameter(PersonName) ;String personId=request.getParameter(PersonId);double maney=Double.parseDouble(request.getParameter(Maney);PersonList list=new PersonList();list.setBussName(bussName);list.setBussPersent(bussPersent);list.setManey(maney);list.setName(PersonName);list.setNumber(personId);list.setPerPersent(perPersent);session.setAttribute(list, list);DataBaseManager db=new DataBaseManager();String sql=SELECT * FROM tb001 WHERE SEQNAME=Person;ResultSet rs=db.doQuery(sql);int seq=0;try while(rs.next()seq =Integer.parseInt(rs.getString(SEQ);seq=seq+1;/out.print(seq); catch (NumberFormatException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();/System.out.println(seq);String updatesql=UPDATE tb001 SET SEQ=+seq+ WHERE SEQNAME=person;db.doUpdate(updatesql);String insertsql=INSERT INTO tb003(ACCNUM,UNITACCNUM,PERACCSTATE,BASENUMBER,UNITPROP,INDIPROP,UNITMONPAYSUM) VALUES(+seq+,+bussCount+,0,+maney+,+bussPersent+,+perPersent+,0);int n=db.doUpdate(insertsql);out.println(is great);if(n0)response.sendRedirect(PersonMakeSuccess.jsp);elseresponse.sendRedirect(index.jsp);6.3个人信息查询 response.setContentType(text/html);PrintWriter out = response.getWriter();String a=request.getParameter(Count);HttpSession session=request.getSession(true);DataBaseManager db=new DataBaseManager();String sql=SELECT * FROM tb003 WHERE UNITACCNUM=+a+;ResultSet rs=db.doQuery(sql);try while(rs.next()out.println();for(int n=1;n18;n+)out.println();out.println(+rs.getString(n);n=n+1;out.println();out.println(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();6.4企业开户response.setContentType(text/html);PrintWriter out = response.getWriter();HttpSession session=request.getSession(true);String BusinessName=request.getParameter(BusinessName);String BusinessAdress=request.getParameter(BusinessAdress);String Number=request.getParameter(Number);String BusinessCategory=request.getParameter(BusinessCategory);String BusinessClass=request.getParameter(BusinessClass);String ManeyDate=request.getParameter(ManeyDate);String Tel=request.getParameter(Tel);String BusinessMan=request.getParameter(BusinessMan);String Mantel=request.getParameter(Mantel);double BusinessPersent=Double.parseDouble(request.getParameter(BusinessPersent);double PersonPersent=Double.parseDouble(request.getParameter(PersonPersent);String beizhu=request.getParameter(beizhu);BusinessList bus=new BusinessList();bus.setBusinessAdress(BusinessAdress);bus.setBusinessName(BusinessName);bus.setBeizhu(beizhu);bus.setBusinessCategory(BusinessCategory);bus.setBusinessClass(BusinessClass);bus.setBusinessMan(BusinessMan);bus.setBusinessPersent(+BusinessPersent);bus.setManeyDate(ManeyDate);bus.setMantel(Mantel);bus.setNumber(Number);bus.setPersonPersent(+PersonPersent);bus.setTel(Tel);session.setAttribute(bus, bus);DataBaseManager db=new DataBaseManager();String sql=SELECT * FROM tb001 WHERE SEQNAME=Business;ResultSet rs=db.doQuery(sql);int seq=0;try while(rs.next()seq =Integer.parseInt(rs.getString(SEQ);seq=seq+1;/out.print(seq); catch (NumberFormatException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();/System.out.println(seq);String updatesql=UPDATE tb001 SET SEQ=+seq+ WHERE SEQNAME=Business;db.doUpdate(updatesql);String insertsql=INSERT INTO tb002(UNITACCNUM,UNITACCNAME,UNITADDR,ORGCODE,UNITCHAR,UNITKIND,SALARYDATE,UNITPHONE,UNITLINKMAN,UNITPROP,UNITAGENTPAPNO,PERPROP,REMARK) VALUES(+seq+,+BusinessName+,+BusinessAdress+,+Number+,+BusinessCategory+,+BusinessClass+,+ManeyDate+,+Tel+,+BusinessMan+,+Mantel+,+BusinessPersent+,+PersonPersent+,+beizhu+);int n=db.doUpdate(insertsql);if(n0)response.sendRedirect(BusinessMakeSuccess.jsp);elseresponse.sendRedirect(index.jsp);6.5企业信息查询 response.setContentType(text/html);PrintWriter out = response.getWriter();String a=request.getParameter(Count);HttpSession session=request.getSession(true);DataBaseManager db=new DataBaseManager();String sql=SELECT * FROM tb002 WHERE UNITACCNAME=+a+;ResultSet rs=db.doQuery(sql);try while(rs.next()out.println();for(int n=1;n24;n+)out.println();out.println(+rs.getString(n);n=n+1;out.println();out.println(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();6.6数据库连接public class DataBaseManager Connection con; ResultSet rs; Statement stmt; public static Connection getConnection() try Class.forName(com.mysql.jdbc.Driver); String url=jdbc:mysql:/localhost/user; String user=root; String password=; Connection conn= DriverManager.getConnection(url,user,password);return conn; catch (Exception e) e.printStackTrace(); return null; public ResultSet doQuery(String strSQL) try con=DataBaseManager.getConnection(); stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); rs = stmt.executeQuery(strSQL); catch (SQLException e) e.printStackTrace(); return rs; public int doUpdate(String strSQL) int i=0; try con=DataBaseManager.getConnection(); stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); i=stmt.executeUpdate(strSQL); 7心得体会及建议短短两周的实训马上就要结束了,在这两周中我遇到了很多难题,不过困难越多就代表我这次

温馨提示

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

评论

0/150

提交评论