11班主任管理系统设计与实践

上传人:good****022 文档编号:116810437 上传时间:2022-07-06 格式:DOC 页数:30 大小:152KB
返回 下载 相关 举报
11班主任管理系统设计与实践_第1页
第1页 / 共30页
11班主任管理系统设计与实践_第2页
第2页 / 共30页
11班主任管理系统设计与实践_第3页
第3页 / 共30页
点击查看更多>>
资源描述
大红鹰职业技术学院软件学院毕业综合实训报告毕业综合实训报告班主任管理系统设计与实践 目 录第一章 绪论311 课题背景312 使用技术及发展4第二章班主任管理系统的设计和实现521 班主任管理系统的设计5211 系统框架5212 系统使用部门7213 系统使用者8214 系统功能划分与描述822班主任管理系统的部分实现923 核心代码业务实现12总结28参考文献29第一章 绪论11 课题背景随着现在教育事业的不断发展,信息技术对社会进步和国名经济发挥着越来越大的促进作用,并对传统的思想观念、工作方式产生巨大的冲击。世界已进入信息化时代,网络技术已进入了各行各业,同时也带动了各行业的发展。中国现在教育事业的发展迅猛,高等院校的数量和规模不断的扩大。与此同时,根据时代的要求,管理,特别是对日益增多的学生的管理,对学校的发展起着不可忽视的作用。而班主任(辅导老师)在学生的管理中有着承上启下的枢纽地位,这一角色的重要性也日渐突出起来。学校与学生之间沟通途径的建立、对学生的具体管理措施的实施等都是通过班主任的工作得以体现和贯彻执行的,如果班主任这个环节的工作做的好,其对学生工作的总体管理和发展都具有不可估量的好处。因此,越来越多的学校对班主任这一角色也越来越重视,一些院校专门对班主任进行一系列培训,并且由原来的一个系甚至一个院配备一名辅导员增加至每个班级一名班主任。与上述管理需求不符的是:针对班主任工作的配套管理软件严重缺乏。虽然,已有很多较成熟的学生管理方面的软件,但这些软件主要是实现了教学和教务两个方面的数字化管理,而在目前国内已有的学生管理系统中,具体到班主任管理班级这个方面的管理软件基本上是一片空白。实际上,一方面,班主任工作的特点是事多、琐碎、繁杂,但工作程序是有序。因而,在当今科技高度发达的信息社会,开发一个适合班主任工作的管理软件,提高办公质量,加强班级管理,是适应学校各方面发展的要求,是学生管理工作中急需解决的问题。12 使用技术及发展本论文主要研究JSP技术以及JSP技术实现基于Web的三层体系结构的应用,实现了动态网页对数据库的查询、统计、更新等功能。目的是应用计算机网络、数据库、Internet技术、以Tomcat为服务器,JSP、JAVA作为主要开发工具,实现跨平台、跨网络、统一界面、易于扩展和维护的大红鹰班主任管理系统。 B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows98/Windows2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。 B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点,须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,在整个网络采用TCP/IP协议。Java 是 Sun 公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和 C+ 类似。同时, Java 也是一种跨平台的程序设计语言。用 Java 语言编写的程序叫做 “Applet” (小应用程序),用编译器将它编译成类文件后,将它存在 WWW 页面中,并在 HTML 档上作好相应标记,用户端只要装上 Java 的客户软件就可以在网上直接运行 “Applet” 。 Java 非常适合于企业网络和 Internet 环境,现在已成为 Internet 中最受欢迎、最有影响的编程语言之一。 Java 有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。 Java 摈弃了 C+ 中各种弊大于利的功能和许多很少用到的功能。 Java 可以运行与任何微处理器,用 Java 开发的程序可以在网络上传输,并运行于任何客户机上。 JSP是JavaServer Pages的简写。JSP技术能让Web开发员和网页设计员快速地开发容易维护的动态Web主页。用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源(例如JavaBesns)的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP技术是Servlet技术的扩展。Servlet是平台无关的,100%纯Java的Java服务端组件。第二章班主任管理系统的设计和实现21 班主任管理系统的设计班主任管理系统总的目的在于方便班主任对班级的管理,同时也提高了学生处对各个班级的评比和对班主任事务的评估与考核,为领导提供辅助决策支持,提高决策的科学性。建立学校数据库,在日常工作中自动生成数据,简化上报过程,提高办事效率。211 系统框架班主任管理系统是学校信息系统的一个子系统,相应的系统框架图见图21: 暂时还不存在的子系统 已有的子系统 班主任管理子系统 班主任管理子系统中的模块积分考核管 理班主任事务管理消息公布、留言板用户权限设 置登入登出管 理学生基本信息管 理教务处学生处宿管科图21说明:班主任管理子系统和教务处、宿管科、学生处都有数据交互。1) 学生基本信息表单来自教务处中的数据库。大红鹰学院的教务系统是万方系统,它所使用的数据库是ORACLE的。2) 积分考核管理、班主任日常事务管理、用户权限设置这一模块和学生处相连。3) 班主任事务管理、积分考核管理与宿管科相连。班主任管理系统学生基本信息管理班主任日常事务管理家长信息管理消息公布,留言板用户权限设置管理积分考核管理登入、登出管理学生个人积分管理班级积分管理212 系统使用部门班主任管理系统是一个非常实用的系统,在学院里面使用它的部门主要是:学生处、宿管科和班级学生、学生家长以及相应班主任。学生处每天对各班进行各种检查,针对不同的情况对相应班级的千分制进行增减,每月对所有班级千分制排名,并且以此作为班主任当月工作考核内容之一。每月学生处根据本系统检查班主任日常事务,这也是班主任每月考核内容之一。宿管科管理学生寝室住宿,有权对班级成员因住宿方面的情况进行个人方面千分制的增减。每次班主任下寝室,都由宿管科登记。班级的普通学生可以查看自己的基本信息,查看自己班级以及本人的千分制情况,可以在留言板里发布信息;班委除了拥有班级普通学生的权限以外,还可以根据班级成员的具体情况对班级成员的千分制进行相应增扣,查看其他班级成员信息;班主任可以修改班级成员的千分制,对班主任日常事务管理这一块进行相应数据录入。学生家长可以用自己子女的用户名、密码登入系统,并且可以在留言板留言。213 系统使用者班主任管理系统主要工作是方便班主任的日常工作,并且对班主任工作进行定性定量考核的考核,系统使用者有:学生处管理者:对班级千分制进行查询、修改;对班主任工作进行查询。宿管科管理者:对班级成员千分制进行增扣的录入;对班主任下寝室时间与寝室号码的录入。班主任:对班级千分制和班级成员千分制的录入、查询、修改;对班级成员信息的查询;对班主任日常事务的相关录入;留言板上留言。班委:对班级成员千分制的录入;对班级千分制的查询;留言板上留言。普通学生、学生家长:对本人或子女千分制的查询,班级千分制的查询,留言板留言。214 系统功能划分与描述班主任管理系统分为学生基本信息管理、积分考核管理、班主任日常事务管理、用户权限设置管理、登入登出管理和消息公布留言板六个模块。学生基本信息管理:这个模块中的数据是教务处的方正教务系统中的数据,在我们这个班主任管理系统中没有修改权限,但是可以供班委、班主任、学生处查询。积分考核管理:这个模块是我们这个系统的一个重点模块,班主任定性定量考核班委、学生处考核班主任、班级优劣排名都是在这个模块进行。班主任日常事务管理:这个模块是考核班主任所有任务完成与否的一个模块,通过这个模块可以督促班主任和学生、学生家长之间的联系;班主任可以通过这个模块了解自己的工作进程;同时,这个模块也是学生处对班主任工作考核的依据之一。这个模块只能班主任和学生处可以看到。用户权限设置:可以设置用户的权限,分为:只读、增加和修改权限。只读权限权限最低,除了查看之外没有任何别的权限。增加权限可以输入数据,比如班级和个人千分制的输入,但是不能进行修改。修改权限权限最高,除了读写外,还可以修改数据。登入登出管理:形成一个日志文件,从该模块可以知道进入该模块的人和时间。消息公布留言板模块:这个模块实际上是一个班级的BBS,所有同学都可以在上面留言,留言上面的名字显示是登入班主任管理系统的名字,可以规范留言。班级有什么事情,及时在这里发布。学生有什么意见或建议,又不愿意和老师沟通的,可以在这里发表。同时,学生家长也可以通过这个模块知道班级或学校动态,并且可以发表言论。这个模块是学生、家长和老师的一个沟通平台。22班主任管理系统的部分实现班主任管理系统的实现是在我们毕业实践小组的共同努力下完成的,我所作的工作是: 我在项目主要负责权限验证,我采用了过滤器来实现RBAC模式做权限这块!权限系统是一个系统必不可少的模块之一!简单介绍以下权限系统,访问控制是针对越权使用资源的防御措施。基本目标是为了限制访问主体(用户、进程、服务等)对访问客体(文件、系统等)的访问权限,从而使计算机系统在合法范围内使用;决定用户能做什么,也决定代表一定用户利益的程序能做什么1。企业环境中的访问控制策略一般有三种:自主型访问控制方法、强制型访问控制方法和基于角色的访问控制方法(RBAC)。其中,自主式太弱,强制式太强,二者工作量大,不便于管理1。基于角色的访问控制方法是目前公认的解决大型企业的统一资源访问控制的有效方法。其显著的两大特征是:1.减小授权管理的复杂性,降低管理开销;2.灵活地支持企业的安全策略,并对企业的变化有很大的伸缩性。NIST(The National Institute of Standards and Technology,美国国家标准与技术研究院)标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和统一模型RBAC3(Combines RBAC)1。RBAC0模型如图2-2所示。图2-2 RBAC0模型a. RBAC0定义了能构成一个RBAC控制系统的最小的元素集合。在RBAC之中,包含用户users(USERS)、角色roles(ROLES)、目标objects(OBS)、操作operations(OPS)、许可权permissions(PRMS)五个基本数据元素,权限被赋予角色,而不是用户,当一个角色被指定给一个用户时,此用户就拥有了该角色所包含的权限。会话sessions是用户与激活的角色集合之间的映射。RBAC0与传统访问控制的差别在于增加一层间接性带来了灵活性,RBAC1、RBAC2、RBAC3都是先后在RBAC0上的扩展。b. RBAC1引入角色间的继承关系,角色间的继承关系可分为一般继承关系和受限继承关系。一般继承关系仅要求角色继承关系是一个绝对偏序关系,允许角色间的多继承。而受限继承关系则进一步要求角色继承关系是一个树结构。c. RBAC2模型中添加了责任分离关系。RBAC2的约束规定了权限被赋予角色时,或角色被赋予用户时,以及当用户在某一时刻激活一个角色时所应遵循的强制性规则。责任分离包括静态责任分离和动态责任分离。约束与用户-角色-权限关系一起决定了RBAC2模型中用户的访问许可。d. RBAC3包含了RBAC1和RBAC2,既提供了角色间的继承关系,又提供了责任分离关系。3核心对象模型设计根据RBAC模型的权限设计思想,建立权限管理系统的核心对象模型。如图2所示。对象模型中包含的基本元素主要有:用户(Users)、用户组(Group)、角色(Role)、目标(Objects)、访问模式(Access Mode)、操作(Operator)。主要的关系有:分配角色权限PA(Permission Assignment)、分配用户角色UA(Users Assignmen描述如下:a .控制对象:是系统所要保护的资源(Resource),可以被访问的对象。资源的定义需要注意以下两个问题:1.资源具有层次关系和包含关系。例如,网页是资源,网页上的按钮、文本框等对象也是资源,是网页节点的子节点,如可以访问按钮,则必须能够访问页面。2.这里提及的资源概念是指资源的类别(Resource Class),不是某个特定资源的实例(Resource Instance)。资源的类别和资源的实例的区分,以及资源的粒度的细分,有利于确定权限管理系统和应用系统之间的管理边界,权限管理系统需要对于资源的类别进行权限管理,而应用系统需要对特定资源的实例进行权限管理。两者的区分主要是基于以下两点考虑:一方面,资源实例的权限常具有资源的相关性。即根据资源实例和访问资源的主体之间的关联关系,才可能进行资源的实例权限判断。例如,在管理信息系统中,需要按照营业区域划分不同部门的客户,A区和B区都具有修改客户资料这一受控的资源,这里“客户档案资料”是属于资源的类别的范畴。如果规定A区只能修改A区管理的客户资料,就必须要区分出资料的归属,这里的资源是属于资源实例的范畴。客户档案(资源)本身应该有其使用者的信息(客户资料可能就含有营业区域这一属性),才能区分特定资源的实例操作,可以修改属于自己管辖的信息内容。另一方面,资源的实例权限常具有相当大的业务逻辑相关性。对不同的业务逻辑,常常意味着完全不同的权限判定原则和策略。b.权限:对受保护的资源操作的访问许可(Access Permission),是绑定在特定的资源实例上的。对应地,访问策略(Access Strategy)和资源类别相关,不同的资源类别可能采用不同的访问模式(Access Mode)。例如,页面具有能打开、不能打开的访问模式,按钮具有可用、不可用的访问模式,文本编辑框具有可编辑、不可编辑的访问模式。同一资源的访问策略可能存在排斥和包含关系。例如,某个数据集的可修改访问模式就包含了可查询访问模式。c.用户:是权限的拥有者或主体。用户和权限实现分离,通过授权管理进行绑定。d.用户组:一组用户的集合。在业务逻辑的判断中,可以实现基于个人身份或组的身份进行判断。系统弱化了用户组的概念,主要实现用户(个人的身份)的方式。e.角色:权限分配的单位与载体。角色通过继承关系支持分级的权限实现。例如,科长角色同时具有科长角色、科内不同业务人员角色。f.操作:完成资源的类别和访问策略之间的绑定。g.分配角色权限PA:实现操作和角色之间的关联关系映射。h.分配用户角色UA:实现用户和角色之间的关联关系映射。该对象模型最终将访问控制模型转化为访问矩阵形式。访问矩阵中的行对应于用户,列对应于操作,每个矩阵元素规定了相应的角色,对应于相应的目标被准予的访问许可、实施行为。按访问矩阵中的行看,是访问能力表CL(Access Capabilities)的内容;按访问矩阵中的列看,是访问控制表ACL(Access Control Lists)的内容。4 权限访问机制权限管理系统端:提供集中管理权限的服务,负责提供用户的鉴别、用户信息、组织结构信息,以及权限关系表的计算。如图2-3所示。图2-3 权限的访问示意图Fig.3 Privilege invoke 系统根据用户,角色、操作、访问策略和控制对象之间的关联关系,同时考虑权限的正负向授予,计算出用户的最小权限。在业务逻辑层采用Session Bean实现此服务,也可以发布成Web Service。采用代理Proxy模式,集中控制来自应用系统的所要访问的权限计算服务,并返回权限关系表,即二元组ObjectId,OperatorId。应用系统端:可以通过访问能力表CL和访问控制表ACL两种可选的访问方式访问权限管理系统。以基于J2EE框架的应用系统为例,说明访问过程:a.首先采用基于表单的验证,利用Servlet方式集中处理登录请求2。考虑到需要鉴别的实体是用户,采用基于ACL访问方式。用户登录时调用权限管理系统的用户鉴别服务,如果验证成功,调用权限计算服务,并返回权限关系表,以HashMap的方式存放到登录用户的全局Session中;如果没有全局的Session或者过期,则被导向到登录页面,重新获取权限。b.直接URL资源采用基于CL访问方式进行的访问控制。如果用户直接输入URL地址访问页面,有两种方法控制访问:1.通过权限标签读取CL进行控制;2.采取Filter模式,进行权限控制,如果没有权限,则重定向到登录页面。5 权限控制机制权限所要控制的资源类别是根据应用系统的需要而定义的,具有的语义和控制规则也是应用系统提供的,对于权限管理系统来说是透明的,权限将不同应用系统的资源和操作统一对待。应用系统调用权限管理系统所获得的权限关系表,也是需要应用系统来解释的。按此设计,权限管理系统的通用性较强,权限的控制机制则由应用系统负责处理。由于应用系统的权限控制与特定的技术环境有关,以基于J2EE架构的应用系统为例来说明,系统主要的展示组件是JSP页面,采用标记库和权限控制组件共同来实现。a. 权限标识:利用标签来标识不同级别资源,页面权限标签将标识页面对象。b. 权限注册:遍历JSP页面上的权限控制标签,读取JSP的控制权限。通过权限注册组件将JSP页面上的权限控制对象以及规则注册到权限管理信息系统中。c. 权限控制:应用系统用户登录系统时,从权限管理系统获得权限关系表之后,一方面,权限标签控制页面展示;另一方面,利用权限控制组件在业务逻辑中进行相应的权限控制,尤其是和业务逻辑紧密联系的控制对象实例的权限控制。6 权限存储机制权限管理系统采用了两种可选的存储机制:LDAP(Lightweight Directory Access Protocol)目录服务数据库和关系型数据库。存储用户信息、组织结构、角色、操作、访问模式等信息。其中,目录服务系统基于LDAP标准,具有广泛的数据整合和共享能力。元目录(Meta-Directory)功能允许快速、简洁的与企业现存基础结构进行集成,解决基于传统RDBMS等用户数据库与LDAP用户数据库的同步问题。23 核心代码业务实现1,数据库操作package bean;import java.sql.*;import java.util.*;public class JFBean private Connection con = null;/数据库连接 private ResultSet rs = null;/原始结果集 private Statement stmt = null; /连接参数 private final String DBURL = jdbc:odbc:bysj; private final String DBUSER =sa; private final String DBPASSWORD =; private ArrayList result = new ArrayList(); /存放结果集 String colName = null; private int colLen = 0; /列数 private String empty= ;/替换结果集中的空字符 public JFBean() public void ini() throws SQLException try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); if ( (con = null) | con.isClosed() con = DriverManager.getConnection(DBURL,DBUSER, DBPASSWORD); stmt = con.createStatement(); catch (SQLException e) throw e; catch(Exception e) System.out.println(load driver error); public ArrayList getRS() return result; /* * 执行数据查询,结果集以数组(每一行的内容)形式存放在ArrayList中 * * param sqlStatement String 查询的SQL语句 * retrurn rownum * */ public int execQuery(String sqlStatement) throws SQLException int recounter = 0; clearResult(); try ini(); rs = stmt.executeQuery(sqlStatement); ResultSetMetaData rsmd = rs.getMetaData(); String self = null; colLen = rsmd.getColumnCount() ; while (rs.next() String colValue = new StringcolLen; for (int i = 0; i colLen; i+) colValuei = ( (self = rs.getString(i + 1 ) = null ?empty : self.trim().length() = 0 ? empty : self.trim(); result.add(colValue); recounter+; return recounter; catch (SQLException e) throw e; finally closeConn(); /* * 执行数据查询,结果集以HashMap(每一行的内容)形式存放在ArrayList中 * * param sqlStatement String 查询的SQL语句 * retrurn rownum */ public int execQueryName(String sqlStatement) throws SQLException int recounter = 0; clearResult(); try ini(); rs = stmt.executeQuery(sqlStatement); ResultSetMetaData rsmd = rs.getMetaData(); String self = null; colLen = rsmd.getColumnCount() ; colName = new StringcolLen; for (int i = 0; i colLen; i+) colNamei = rsmd.getColumnName(i + 1); while (rs.next() HashMap colValue = new HashMap(); for (int i = 0; i 0) result.clear(); / Release the SQL statement resources private void closeConn() throws SQLException try if (con != null) stmt.close(); con.close(); stmt = null; con = null; catch (SQLException e) throw e; 2,核心SERVLET中央控制器package bean;import java.io.IOException;import java.sql.*;import java.util.Date;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;public class servlet extends HttpServlet private static final long serialVersionUID = 1L;public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException response.setContentType(text/html;charset=gb2312);String action = request.getParameter(action);/ 登陆if (action.equals(login) logIn(request, response);/ 登出if (action.equals(logout) logOut(request, response);/添加记录if (action.equals(add) addOper(request, response); /更新记录 if (action.equals(update) updateOper(request, response); /删除记录 if (action.equals(del) delOper(request, response);/ 留言if (action.equals(message) message(request, response);public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doPost(request,response);/ 处理字符串方法public String getString(String s) if (s = null)s = ;try byte a = s.getBytes(ISO-8859-1);s = new String(a); catch (Exception e) return s;private void logIn(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Connection con = null;Statement sql = null;ResultSet rs = null;HttpSession session = request.getSession();String type = getString(request.getParameter(type);String username = getString(request.getParameter(username);String password = getString(request.getParameter(password);JFBean jf = new JFBean();try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch (ClassNotFoundException en) en.printStackTrace();try con = DriverManager.getConnection(jdbc:odbc:bysj, sa, );sql = con.createStatement();/ 教师登陆if (type.equals(teacher) String condition = select * from teacher where id = + username + AND password = + password + ;String condition1 = select teacher.name,classlist.name,auothinfo.typename from teacher,classteacher,classlist,auothinfo where teacher.id = + username+ AND teacher.id =classteacher.teacherid AND classteacher.classid=classlist.id AND teacher.id=auothinfo.id;rs = sql.executeQuery(condition);if (rs.next() session.setAttribute(islog, yes);ResultSet rs1 = sql.executeQuery(condition1);rs1.next();session.setAttribute(name, rs1.getString(1);session.setAttribute(class, rs1.getString(2);session.setAttribute(type, rs1.getString(3);/ 存入日志String logid = getString(request.getParameter(username);/ 登入IDString logname = (String) session.getAttribute(name);/ 登入姓名Date time = new Date();time.getTime();String logtime = time.toString().substring(4, 20);/ 登入时间String condition2 = insert into rzgl (rid,rname,intime) values (+ logid+ + ,+ + logname+ + ,+ + logtime + );jf.execUpdate(condition2);response.sendRedirect(Templates/index.jsp); else session.setAttribute(error, 用户名或密码错误,请重新输入!);response.sendRedirect(Templates/index.jsp);/ 学生登陆if (type.equals(student) String condition = select * from student where id = + username + AND password = + password + ;String condition1 = select student.name,classlist.name,auothinfo.typename from student,classlist,auothinfo where student.id = + username+ AND student.classid=classlist.id AND student.id=auothinfo.id;rs = sql.executeQuery(condition);if (rs.next() session.setAttribute(islog, yes);ResultSet rs1 = sql.executeQuery(condition1);rs1.next();session.setAttribute(name, rs1.getString(1);session.setAttribute(class, rs1.getString(2);session.setAttribute(type, rs1.getString(3);/ 存入日志String logid = getString(request.getParameter(username);/ 登入IDString logname = (String) session.getAttribute(name);/ 登入姓名Date time = new Date();time.getTime();String logtime = time.toString().substring(4, 20);/ 登入时间String condition2 = insert into rzgl (rid,rname,intime) values (+ logid+ + ,+ + logname+ + ,+ + logtime + );jf.execUpdate(condition2);response.sendRedirect(Templates/index.jsp); else session.setAttribute(error, 用户名或密码错误,请重新输入!);response.sendRedirect(Templates/index.jsp);/ 班委登陆if (type.equals(monitor) String condition = select * from student where id = + username + AND password = + password + ;String condition1 = select student.name,classlist.name,auothinfo.typename from student,classlist,auothinfo where student.id = + username+ AND student.classid=classlist.id AND student.id=auothinfo.id;rs = sql.executeQuery(condition);if (rs.next() session.setAttribute(islog, yes);ResultSet rs1 = sql.executeQuery(condition1);rs1.next();session.setAttribute(name, rs1.getString(1);session.setAttribute(class, rs1.getString(2);session.setAttribute(type, rs1.getString(3);/ 存入日志String logid = getString(request.getParameter(username);/ 登入IDString logname = (String) session.getAttribute(name);/ 登入姓名Date time = new Date();time.getTime();String logtime = time.toString().substring(4, 20);/ 登入时间String condition2 = insert into rzgl (rid,rname,intime) values (+ logid+ + ,+ + logname+ + ,+ + logtime + );jf.execUpdate(condition2);response.sendRedirect(Templates/index.jsp); else session.setAttribute(error, 用户名或密码错误,请重新输入!);response.sendRedirect(Templates/index.jsp); catch (Exception e) e.printStackTrace();private void logOut(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException /存入日志HttpSession session = request.getSession();JFBean jf = new JFBean();String logid = getString(request.getParameter(username);/ 登入IDString logname = (String) session.getAttribute(name);/ 登入姓名Date time = new Date();time.getTime();String logtime = time.toString().substring(4, 20);/ 登出时间String condition = insert into rzgl (rid,rname,outtime) values (+ logid + + , + + logname + + , + + logtime+ );try jf.execUpdate(condition); catch (SQLException e) e.printStackTrace();session = request.getSession();session.invalidate();response.sendRedirect(Templates/index.jsp);private void message(HttpServletRequ
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿件


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!