jsp家政服务系统课程设计报告(完整版)_第1页
jsp家政服务系统课程设计报告(完整版)_第2页
jsp家政服务系统课程设计报告(完整版)_第3页
jsp家政服务系统课程设计报告(完整版)_第4页
jsp家政服务系统课程设计报告(完整版)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

./《数据库应用系统》课程设计报告题目:家政服务业务管理系统院系名称:信息科学与工程学院专业班级:计科1201学生:XXX学号:6指导教师:宜贵教师职称:副教授2015年1月.计算机科学与技术专业课程设计任务书学生专业班级计科1201学号6题目家政服务业务管理系统课题性质其它课题来源自拟课题指导教师宜贵同组无主要容本设计以网页的方式,登陆权限进去首页,对于员工,工资,业务的增删改,不同方式的查询,根据日期,或则具体的信息搜索功能,或则模糊查询,显示结果分页处理,退出功能,对于表单做了控制处理所用的开发工具MyEclipse,tomcat,开发语言为jsp,模式为jsp+javabean涉及前端语言js,css,DBMS,采用的是sqlsever2008任务要求综合运用所学的数据库基本知识,并能通过查阅相关文献材料,独立完成该课题的设计开发工作。要求根据本课题设计出合理的数据结构,实现用户类型模块,信息查看和浏览模块,查找模块,管理模块。参考文献[1]詹英.数据库技术与应用[M].:清华大学.2008.9-14[2]黄德才.数据库原理及其应用教程.[M].:科学.2007.12-3[3]龚沛曾,志强.数据库技术与应用[M].高等教育.2008[4]任满杰.数据库实用教程[M].电子工业.2006[5]王珊,萨师煊.数据库系统概论[M].高等教育出版.2005审查意见指导教师签字:教研室主任签字:年月日说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计〔论文首页.目录一引言1二需求分析12.1功能需求12.2功能模块图说明1三概要设计23.1设计思想23.2系统架构设计23.3数据库的概念结构设计33.4基本数据结构53.5数据库逻辑结构设计5四详细设计于实现64.1登陆界面64.2主界面功能8五结束语15六参考文献15.一引言本文系统地阐述了整个在线家政服务信息管理系统的功能及实现。实现了从用户权限登录,员工信息修改,增加,查询,删除家政信息分类、修改以及添加,信息审核以及用户添加修改等功能。本系统界面简单直观,易于操作和使用,交互性强,完全基于Internet网络。本系统开发工具是MyEclipse和SqlServer2008数据库,开发语言是Java,主要使用了J2EE的技术,jsp+javabean模式二需求分析2.1功能需求本系统最大的特点是使用、友好的提示信息,实现了面向对象的封装,继承。实现以下基本功能:〔1系统具有简洁大方的登陆页面,使用简便,友好的错误操作提示〔2首页具有工资信息管理、员工信息管理、家政信息分类管理、家政信息查询等功能〔3具有较强的安全性,采用预编译,避免用户的恶意SQL注入安全操作2.2功能模块图说明<1>工资信息管理模块:在该模块中定义了信息的管理,其功能包括工资信息的录入、修改、删除,浏览信息,条件查询,模糊搜索查询。<2>员工信息管理模块:在该模块中定义了员工信息的管理,其功能包括员工信息的录入、修改、删除,浏览信息,条件查询,模糊搜索查询<3>家政服务分类信息管理模块:在该模块中定义了家政服务分类信息的管理,录入、修改、删除,浏览信息,条件查询,模糊搜索查询〔4安全退出登录功主页功能模块主页功能模块退出登陆业务信息管理工资信息管理员工信息管理管理首页退出登陆业务信息管理工资信息管理员工信息管理管理首页三概要设计3.1设计思想1.采用B/S模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页方式的用户。2.采用面向对象的开发与设计理念。3.采用模块化设计。模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。4.简单方便的系统界面。设计简单友好的系统界面,方便用户较快的适应系统的操作。3.2系统架构设计3.2.1安全性设计家政服务信息管理系统在管理权限上要严格进行控制,具体要求如下:想登录家政服务管理系统进行操作,必须有操作权限,没有权限的用户不能通过何方式登录系统查看系统的任何信息和数据,以确保系统的严密性和安全性。3.2.2数据完整性设计1.各种记录信息的完整性,信息记录容不能为空2.各种数据间相互联系的正确性3.相同数据在不同记录中的一致性3.2.3输出设计对接收的数据汉字乱码问题进行了解决,输出显示正确结果3.3数据库的概念结构设计根据以上对数据库的需求分析,并结合系统概念模型的特点及建立方法,建立E-R模型图。管理员信息实体E-R图如图3.3.1所示:密码登录名密码登录名管理员管理员图3.3.1部门信息实体E-R图家政业务信息实体E-R图如图3.3.2所示:拓展原因工作时间工薪分类拓展原因工作时间工薪分类编号编号业务信息业务信息动作动作编辑时间间编辑时间间业务描述批准人业务描述批准人图3.3.2家政服务信息实体E-R图员工员信息E-R图如图3.3.3所示民族性别民族性别身份证部门身份证部门学历学历员工号员工号员工信息员工信息生日生日毕业学校职称毕业学校职称电话电话备注备注邮箱邮箱图3.3.3管理员信息实体E-R图<3>工资E-R图如图3.3.4所示实际工资员工姓名员工号实际工资员工姓名员工号年份年份月份月份工资编号工资编号工资信息扣税扣税考勤扣除基本工资加工工资考勤扣除基本工资加工工资保险扣除交通补助保险扣除交通补助3.4基本数据结构管理员〔登陆账号,密码员工信息〔员工编号民族性别生日毕业学校学位部门职位工资信息〔工资编号员工编号员工年份,月份基本工资加工工资加工工资交通补助考勤扣除保险扣除实际工资家政服务信息〔编号类型业务时间工薪拓展原因批准人业务描述3.5数据库逻辑结构设计<1>部门信息表主要是记录了部门的基本信息,表结构如图3.5.1所示。表3.5.1管理员表<admin>列名数据类型长度允许空是否主键说明adminNamevarchar50否是登录名passwordvarchar50否否登陆账号<2>员工信息表主要是记录了员工基本信息。表结构如表3.5.2所示。表3.5.2员工信息表<employee>列名数据类型长度允许空是否主键说明employeeIdvarchar50否是员工编号nameVarchar50否否CardNumbernvarchar50否否nationvarchar8否否民族sexvarchar8否否性别birthdaynvarchar50是否生日graduatenvarchar50是否毕业学校schoolRecornvarchar50是否学位Departmentnvarchar50否否部门positionnvarchar50否否职位telephoneBigInt8是否emailnvarchar50是否editTimedatetime是否编辑时间memoVarcharMAX是否动作〔删除或修改<3>主要是记录了家政服务的基本信息,表结构如表3.5.3所示。表3.5.3家政服务信息表<leave>列名数据类型长度允许空是否主键说明leaveIdnvarchar50否是编号employeednvarchar50否否类型timeint4否否业务时间moneybigint8否否工薪reasonnvarchar50是否拓展原因Pepplenvarchar50否否批准人edittimenvarchar50是否业务描述memoVarcharMAX是否动作〔删除或修改<4>主要记录了员工薪资管理系统,表如结构如图3.5.4所示表3.2.4员工薪资信息表<salary>列名数据类型长度允许空是否主键说明salaryIdvarchar20否是工资编号employeeIdvarchar50否否员工编号employeeNamevarchar50否否员工yearint4是否年份monthint4是否月份basicWagereal是否基本工资overtimeWagereal是否加工工资trafficWagereal是否交通补助kaoqinaReducreal是否考勤扣除secureReducreal是否保险扣除TaxReducereal是否扣税totalReducereal是否总扣除realWagereal是否实际工资Edittimenvarchar50是否编辑时间记录memonvarcahr50是否动作〔删除或修改四详细设计于实现4.1登陆界面在程序中,用Class.forName<>方法来加载驱动程序,在用DriverManager的getConnection〔方法就可以创建一个数据库连接。采用的配置数据源privateStringdriverName="sun.jdbc.odbc.JdbcOdbcDriver";privateStringurl="jdbc:odbc:WageManage";privateStringuser="sa";privateStringpassword="123";登陆格式控制<scriptlanguage="javascript">Functioncheckform<>{if<document.loginForm.adminName.value==""||document.loginForm.Password.value=="">{ alert<"用户名或密码为空!">;returnfalse; }returntrue;}</script>登陆核心代码<%pagesession="true"%><jsp:useBeanid="alogin"scope="page"class="org.pan.web.login"/><%Stringmesg="";StringadminName=request.getParameter<"adminName">;Stringpassword=request.getParameter<"password">;if<null==adminName>adminName="";if<null==password>password="";if<!adminName.equals<"">&&!password.equals<"">>{ adminName=newString<adminName.getBytes<"ISO8859-1">>; password=newString<password.getBytes<"ISO8859-1">>; alogin.setAdminName<adminName>; alogin.setPassword<password>;if<alogin.excute<>>{ session.setAttribute<"adminName",adminName>; response.sendRedirect<"index.jsp">; }else{ mesg=alogin.errorMessage ; }}%>4.2主界面功能主界面对所有功能的增删改的数据库方法声明处理封装在一个java文件中publicDataBase<>{try { DBConnectionManagerdcm=newDBConnectionManager<>;conn=dcm.getConnection<>;stmt=conn.createStatement<>; }catch<Exceptione> { System.out.println<e>;isConnect=false; } }publicStatementgetStatement<>{returnstmt; }publicConnectiongetConnection<>{returnconn; }publicPreparedStatementgetPreparedStatement<>{returnprepstmt; }publicResultSetgetResultSet<>{returnrs; }publicbooleanexecute<>throwsException{returnfalse; }publicbooleaninsert<>throwsException{returnfalse; }publicbooleanupdate<>throwsException{returnfalse; }publicbooleandelete<>throwsException{returnfalse; }publicbooleanquery<>throwsException{returnfalse; }publicvoidclose<>throwsSQLException{if<stmt!=null> {stmt.close<>;stmt=null; }conn.close<>;conn=null; }模糊查询的核心数据库部分代码sqlStr="select*fromemployee";if<searchZiduan.equals<"">&&!keyword.equals<"">>{sqlStr=sqlStr+"whereemployeeIdlike'%"+keyword+"%'ornamelike'%"+keyword+"%'ordepartmentlike'%"+keyword+"%'orderbyemployeeIddesc"; }elseif<!searchZiduan.equals<"">>{sqlStr=sqlStr+"where"+searchZiduan+"like'%"+keyword+"%'orderbyemployeeIddesc"; }elseif<searchZiduan.equals<"">&&keyword.equals<"">>{sqlStr=sqlStr+"orderbyemployeeIddesc"; }分页方法声明处理publicintgetPage<>{ returnpage; }publicvoidsetPage<intnewpage>{page=newpage; }publicintgetPageSize<>{ returnpageSize; }publicvoidsetPageSize<intnewpsize>{pageSize=newpsize; }publicintgetPageCount<>{ returnpageCount; }publicvoidsetPageCount<intnewpcount>{pageCount=newpcount; }publiclonggetRecordCount<>{returnrecordCount; }publicvoidsetRecordCount<longnewrcount>{recordCount=newrcount; }分页功能的一个具体实现//publicbooleanexecute<HttpServletRequestres>throwsException{request=res; StringPAGE=request.getParameter<"page">; StringsearchZiduan=request.getParameter<"searchZiduan">; Stringkeyword=request.getParameter<"keyword">; if<keyword==null>keyword="";if<searchZiduan==null>searchZiduan=""; keyword=getGbk<keyword>; searchZiduan=getGbk<searchZiduan>;try {page=Integer.parseInt<PAGE>; }catch<NumberFormatExceptione> {page=1; }intrscount=pageSize;try { ResultSetrs1=stmt.executeQuery<sqlStr>;if<rs1.next<>>recordCount=rs1.getInt<1>; rs1.close<>; }catch<SQLExceptione> {errorMessage=""+searchZiduan+sqlStr+e.getMessage<>;returnfalse; }if<recordCount<1>pageCount=0;elsepageCount=<int><recordCount-1>/pageSize+1;if<page<1>page=1;elseif<page>pageCount>page=pageCount; rscount=<int>recordCount%pageSize; sqlStr="select*fromemployee";try {rs=stmt.executeQuery<sqlStr>;employeelist=newVector<rscount>;for<inti=0;i<pageSize*<1>;i++>rs.next<>;while<rs.next<>> { employeeanemployee=newemployee<>; anemployee.setEmployeeId<rs.getString<"employeeId">>; anemployee.setName<rs.getString<"name">>; anemployee.setCardNumber<rs.getString<"cardNumber">>; anemployee.setNation<rs.getString<"nation">>; anemployee.setSex<rs.getString<"sex">>; anemployee.setBirthday<rs.getString<"birthday">>; anemployee.setGraduateSchool<rs.getString<"graduateSchool">>; anemployee.setSchoolRecord<rs.getString<"schoolRecord">>; anemployee.setDepartment<rs.getString<"department">>; anemployee.setPositionName<rs.getString<"positionName">>; anemployee.setTelephone<rs.getString<"telephone">>; anemployee.setEmail<rs.getString<"email">>; anemployee.setEditTime<rs.getString<"editTime">>; anemployee.setMemo<rs.getString<"memo">>;employeelist.addElement<anemployee>; }rs.close<>;returntrue; }<%pageimport="org.pan.web.employee"%><jsp:useBeanid="employee_manager"scope="page"class="org.pan.web.employeeManage"/><% Stringmesg=""; Stringsubmit=request.getParameter<"Submit">;if<submit!=null&&!submit.equals<"">>{ if<employee_manager.getRequest<request>>{if<employee_manager.update<>>{ mesg="员工信息资料修改成功!"; }else{ mesg="数据库操作失败"+employee_manager.errorMessage; } }else{ mesg="对不起,你提交的参数有错误"; } }%><%pagesession="true"%><%if<session.getAttribute<"adminName">==null||session.getAttribute<"adminName">=="">{ response.sendRedirect<"login.jsp">;}%><jsp:useBeanid="employee_manager"scope="page"class="org.pan.web.employeeManage"/><% Stringmesg=""; Stringsubmit=request.getParameter<"Submit">;if<submit!=null&&!submit.equals<"">>{ if<employee_manager.getRequest<request>>{if<employee_manager.insert<>>{ mesg="新员工信息提交成功!"; }else{ mesg="数据库操作失败"+employee_manager.errorMessage; } }else{ mesg="对不起,你提交的参数有错误"; } }%>弹出窗口显示浏览信息弹出窗口的js代码<scriptlanguage="javascript">functionopenScript<url,name,width,height>{varWin=window.open<url,name,'width='+width+',height='+height+',resizable=1,scrollbars=yes,menubar=no,status=yes'>;}</script><%pagesession="true"%><%pageimport="org.pan.web.employee"%><%pageimport="org.pan.util.strFormat"%><%if<session.getAttribute<"adminName">==null||session.getAttribute<"adminName">=="">{ response.sendRedirect<"login.jsp">;}%><jsp:useBeanid="employee_manager"scope="page"class="org.pan.web.employ

温馨提示

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

评论

0/150

提交评论