ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:64.35KB ,
资源ID:11312316      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11312316.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Java的教师档案管理系统的设计Word版.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于Java的教师档案管理系统的设计Word版.docx

1、基于Java的教师档案管理系统的设计Word版Java程序设计课程设计报告书课题名称基于Java的教师档案管理系统的设计姓 名学 号学 院专 业指导教师2016 年 6 月 28 日 一、设计任务及要求:1. 采用B/S模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页方式的用户。2. 采用面向对象的开发与设计理念。运用面向对象技术的前提是对整体系统的高度和准确抽象,通过它可以保证系统良好的框架,进而带来产品较强的稳定性和运行效率。3. 采用模块化设计。模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。4. 简单方便的系统界面。设计简单友好的

2、系统界面,方便用户较快的适应系统的操作。5速度优先原则。由于此工具最重要的评测标准就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。6设计既要突出重点,又要细致周到。要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。指导教师签名: 年 月 日 二、指导教师评语: 指导教师签名: 年 月 日 三、成绩验收盖章 年 月 日 基于Java的教师档案管理系统系统设计谭维隽1设计目的长久以来,教职工的管理工作大多数都采用的是传统的手工方式来记录相关信息,这种管理方式存在很多缺点,比如说,教职工信息、工资信息的录入,查询,更新,分析都要完全依赖管理人员的手工记录和人工分析,

3、人工记录是相当麻烦的。为满足需求,决定采用各种编程语言JSP开发了基于B/S架构的教师档案管理系统,教师档案管理系统是涉及信息科学、数据计算和计算机技术的复杂的人机交互系统。通过这些系统,可以对教职工和管理进行智能化管理,有效地记录并查询教职工的各项情况,为管理者提供了诸多方便。2设计的主要内容和要求2.1数据库的逻辑结构设计我们知道,数据库概念模型独立于任何特定的数据库管理系统,因此,需要根据具体使用的数据库管理系统的特点进行转换。即转化为按计算机观点处理的逻辑关系模型,E-R模型向关系数据库模型转换应遵循下列原则:*每一个实体要转换成一个关系*所有的主键必须定义非空(NOT NULL)*对

4、于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键。根据E-R模型,教师档案管理系统建立了以下逻辑数据结构,下面是各数据表的详细说明。(1)教师信息表主要是记录了教师的基本信息。表结构如表2.1所示。表2.1教师信息表(t_jaoshi)列名数据类型长度允许空是否主键说明idint4否是 IDgonghaovarchar50否否 教师号xingmingvarchar50否否 姓名xingbievarchar50否否性别nianlingvarchar20否否年龄shengrivarchar20否否出生日期gongzuovarchar50否否工作时间zhuanyevarchar50否否

5、专业zhaopianvarchar50否否照片beizhuvarchar50否否备注信息(2) 工资信息表主要是记录了教职工工资的基本信息。表结构如表2.2所示。表2.2工资信息表(t_gongzi)列名数据类型长度允许空是否主键说明idint4否是 IDjsidvarchar50否否 教师IDriqivarchar50否否 工资月份gongzivarchar50否否 工资数jiangjinvarchar20否否 奖金(3)管理员信息表主要记录的管理员的账号信息,包括用户名和密码,表结构如表2.3所示。表2.3管理员信息表(t_admin)列名数据类型长度允许空是否主键说明userIdint4

6、否是编号userNamevarchar50否否用户名userPwvarchar50否否密码2.2数据库的连接原理采用JDBC连接数据库的方式,只需在工程中导入对应数据库的jar包,就可以方便的对数据库进行连接,在程序中,用Class.forName()方法来加载驱动程序,在用DriverManager的getConnection()方法就可以创建一个数据库连接。程序采用的是DAO模式来操作数据库,DAO(Data Access Object,数据访问对象),是Java编程中的一种经典模式,已被广泛应用,也是J2EE架构中持久层框架的基础知识,基于分层次式的软件架构来实现对数据库的访问操作。DA

7、O模式的主要思想就是从抽象数据源获取与操纵数据的方法。抽象数据的含义就是编写应用程序的程序员不必关心数据库的物理位置,已经是何种数据库,只需使用封装数据库中表示记录的数据对象即可。其思想如图2.4所示: 图2.4 DAO模式类图 图中BussinessObject是业务对象,是使用DAO模式的客户端;DataTransferObject数据传输对象,在应用程序不同层次之间传输对象,在一个分布式应用程序中,通常可以提高整理的性能;DataObjectAcces数据输入/输出对象封装了对数据源的一些基本操作;DataSource指的是数据源。可以从图中看出,DAO模式分离了业务逻辑和数据罗即将,是

8、的编写的软件具有良好的层次式体系结构。本系统为了方便数据库的操作,主要使用DBContent的对象来接一个数据库(建立一个类DBContent),代码如代码1。2.3系统功能实现在管理信息系统的生命周期中,仅过了需求分析、系统设计等阶段之后,便开始了系统实施阶段。在系统分析和设计阶段,系统开发工作主要是集中在逻辑、功能和技术设计上,系统实施阶段要继承此前面各个阶段的工作成果,将技术设计转化为物理实现,因此系统实施的成果是系统分析和设计阶段的结晶。2.3.1系统登陆页1.描述:为了保证系统的安全性,要先使用本系统必须先登陆到系统中。2.在登陆页面输入用户名和密码以,选择登陆身份后,点击提交按钮,

9、跳转到登陆的service中,在该service中会对用户名,密码,验证码进行判断,并根据相应的用户角色进入对应的页面,代码如代码2。2.3.2系统主页面1.描述:管理员主页面:左方页面展示了管理员可操作的七大功能,进入相关的管理页面可以链接到子菜单,并且高亮显示,每个管理模块下面都有相应的子菜单。2.在每个jsp页面将会对相关用户进行拦截操作,这样可以提高安全性,防止用户不经过登陆页面而进入任何子菜单页面,如代码3:2.3.3教职工信息管理(1)教职工录入1.描述:管理员输入教职工相关正确信息后点击录入按钮,如果是没有输入完整的信息,都会给出相应的错误提示,不能录入成功。输入数据都通过for

10、m表单中定义的方法onsubmit=return checkForm()来检查,checkForm()函数中是各种的校验输入数据的方式。2.流程图如下图4所示:(2)教职工管理1.描述:管理员点击左侧的菜单“教职工管理”,页面跳转到做教职工界面,调用后台的servlet类查询所有教职工的信息。2.教职工管理关键代码如代码4:2.3.4工资信息管理(1)工资录入1.描述:在此页面主要是输入工资数、奖金等信息,然后选择教职工,所有信息都不能够为空,是否为空也是通过form表单中的onsubmit=return checkForm()来检查。(2)工资信息管理1.描述:管理员点击左侧的菜单“工资管理

11、”,页面跳转到工资管理界面,调用后台的gongziServlet类查询出所有的工资信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出来。 2.工资管理关键代码代码5:(3)修改个人密码1.描述:输入用户名和用户的原有密码,输入新密码以后点击修改按钮即可修改密码成功。(4)安全退出系统1.描述:点此按钮回到系统的主页面。2.关键代码如代码6。3 整体设计方案4 流程图设计 图4教职工录入流程图5 程序设计代码1:public DBContent() String CLASSFORNAME=com.SqlServer.jdbc.Driver;/

12、连接数据库的驱动 String url=jdbc:SqlServer:/localhost:3306/jzggl; String user=root;/连接数据库的用户名 String password=root;/连接数据库的密码 try Class.forName(CLASSFORNAME); con= DriverManager.getConnection(url,user,password);/加载数据库的驱动 stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); ca

13、tch(Exception ex) ex.printStackTrace(); 代码2public String login(String userName,String userPw,int userType) try Thread.sleep(700); catch (InterruptedException e) / TODO Auto-generated catch block e.printStackTrace(); String result=no; if(userType=0)/系统管理员登陆 String sql=from TAdmin where userName=? and

14、 userPw=?; Object con=userName,userPw; List adminList=adminDAO.getHibernateTemplate().find(sql,con); if(adminList.size()=0) result=no; else WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); TAdmin admin=(TAdmin)adminList.get(0); session.setAttribute(userType, 0); sessio

15、n.setAttribute(admin, admin); result=yes; if(userType=1) if(userType=2) return result; 代码3if(session.getAttribute(user)=null) out.print(alert(请先登录!);window.open(./index.jsp,_self); 代码4public void jihuayuanAdd(HttpServletRequest req,HttpServletResponse res)public void jiaoshiDel(HttpServletRequest re

16、q,HttpServletResponse res) int id = Integer.parseInt(req.getParameter(id); String del = yes; String sql = update t_jiaoshi set del=? where id=?; Object params=del,id; DB mydb=new DB(); mydb.doPstm(sql, params); mydb.closed(); req.setAttribute(message, 教师信息删除成功!); req.setAttribute(path, jiaoshi?type=

17、jiaoshiMana); String targetURL = /common/success.jsp; dispatch(targetURL, req, res); public void jiaoshiUpd(HttpServletRequest req,HttpServletResponse res) int id = Integer.parseInt(req.getParameter(id); String gonghao = req.getParameter(gonghao); String xingming = req.getParameter(xingming); String

18、 xingbie = req.getParameter(xingbie); String nianling = req.getParameter(nianling); String shengri = req.getParameter(shengri); String gongzuo = req.getParameter(gongzuo); String zhuanye = req.getParameter(zhuanye); String zhaopian = req.getParameter(zhaopian); String beizhu = req.getParameter(beizh

19、u); String sql = update t_jiaoshi set gonghao=?,xingming=?,xingbie=?,nianling=?,shengri=?,gongzuo=?,zhuanye=?,zhaopian=?,beizhu=? where id=?; Object params=gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,id; DB mydb=new DB(); mydb.doPstm(sql, params); mydb.closed(); req.set

20、Attribute(message, 教师信息修改成功!); req.setAttribute(path, jiaoshi?type=jiaoshiMana); String targetURL = /common/success.jsp; dispatch(targetURL, req, res); public void jiaoshiAdd(HttpServletRequest req,HttpServletResponse res) String gonghao = req.getParameter(gonghao); String xingming = req.getParamete

21、r(xingming); String xingbie = req.getParameter(xingbie); String nianling = req.getParameter(nianling); String shengri = req.getParameter(shengri); String gongzuo = req.getParameter(gongzuo); String zhuanye = req.getParameter(zhuanye); String zhaopian = req.getParameter(zhaopian); String beizhu = req

22、.getParameter(beizhu); String del = no; String sql = insert into t_jiaoshi (gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,del) + values (?,?,?,?,?,?,?,?,?,?); Object params=gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,del; DB mydb=new DB(); my

23、db.doPstm(sql, params); mydb.closed(); req.setAttribute(message, 教师信息添加成功!); req.setAttribute(path, jiaoshi?type=jiaoshiMana); String targetURL = /common/success.jsp; dispatch(targetURL, req, res); public void jiaoshiMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOExc

24、eption List jiaoshiList=new ArrayList(); String sql=select * from t_jiaoshi where del=no; Object params=; DB mydb=new DB(); try mydb.doPstm(sql, params); ResultSet rs=mydb.getRs(); while(rs.next() TJiaoshi jiaoshi=new TJiaoshi(); jiaoshi.setId(rs.getInt(id); jiaoshi.setGonghao(rs.getString(gonghao);

25、 jiaoshi.setXingming(rs.getString(xingming); jiaoshi.setXingbie(rs.getString(xingbie); jiaoshi.setNianling(rs.getString(nianling); jiaoshi.setShengri(rs.getString(shengri); jiaoshi.setGongzuo(rs.getString(gongzuo); jiaoshi.setZhuanye(rs.getString(zhuanye); jiaoshi.setZhaopian(rs.getString(zhaopian);

26、 jiaoshi.setBeizhu(rs.getString(beizhu); jiaoshiList.add(jiaoshi); rs.close(); catch(Exception e) e.printStackTrace(); mydb.closed(); req.setAttribute(jiaoshiList, jiaoshiList); req.getRequestDispatcher(admin/jiaoshi/jiaoshiMana.jsp).forward(req, res); 代码5public void gongziAdd(HttpServletRequest req

27、,HttpServletResponse res) int jsid = Integer.parseInt(req.getParameter(jsid); String riqi = req.getParameter(riqi); String gongzi = req.getParameter(gongzi); String jiangjin = req.getParameter(jiangjin); String sql = insert into t_gongzi (jsid,riqi,gongzi,jiangjin) values (?,?,?,?); Object params=js

28、id,riqi,gongzi,jiangjin; DB mydb=new DB(); mydb.doPstm(sql, params); mydb.closed(); req.setAttribute(message, 教师工资添加成功); req.setAttribute(path, gongzi?type=gongziMana); String targetURL = /common/success.jsp; dispatch(targetURL, req, res); public void jsList(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException List jiaoshiList=new ArrayList(); String sql=select * from t_jiaoshi where del=no

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

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