第 13 页 共 29 页
在验证密码时必然要访问数据库等,这里主要访问数据库中的管理员信息表(Admin),首先访问是用户名字,如果找到输入的用户名,然后再把输入的密码与 查找的用户名的相应密码比较,如果相等,再查看对应权限,权限不同就被识别为不同的级别的管理员,这样做的目的主要是为了确保图书馆理系统的安全性,所以对这里访问数据库对于普通用户来说是不可见的。
2.5.4用户登陆部份详细设计: <%--连接数据库--%> <%
Class.forName(\%>
<%--驱动--%> <%
String url =\%>
<%--链接--%> <%
Connectionconn=DriverManager.getConnection(url,\; %>
<%--建立链接--%> <%Statement st = null ; st=conn.createStatement(); %>
<%--查询数据库验证用户信息, 不再访数据库时要关闭数据库--% <%
while(rs.next()){
if(adress.equals(rs.getString(1))){break; } }
if(adress.equals(rs.getString(1))) {
if(password.equals(rs.getString(2))){ if(rs.getInt(3)==1){
rs.close(); st.close();
conn.close();%> <% } else{ rs.close(); st.close(); conn.close(); %> 第 14 页 共 29 页 } else{ rs.close(); st.close(); conn.close();%> } rs.close(); st.close(); conn.close(); %> 2.5.5. 用户登陆程序说明: ? 链接数据库,并打开,这里面首要建立驱动,然后用用户名,用户密码, URL 通过对应函数打开数据库。 ? 采用SQL语句直接用函数执行访问数据库。 ? 查询语句循环采用while(){} 进行查询。 ? 当数据库访问结束,要关闭数据库如:rs.close(),st.close(),conn.close()。 2.6管理员信息管理设计 本模块主要访数据库中的管理员信息表,模块的主要目的是对管理员信息进行统计和有效安全管理,其特点主是易学易用美观,功能齐全,主要完成统计。该模块删除时只要输入管理员名字就可以方便删掉相应信息,添加只要输入完整的信息即可即时加入数据库,查询只要输入管理员名字就可以罗列所有该管理员信息,修改,只要输入相应管理员名字就能就找出再输入想要改的内容提交即可改写入数据库。 2.6.1.管理员信息管理设计: 第 15 页 共 29 页 查询 删除 修改 2.6.2管理员信息管理界面功能说明: ? 主要是当高级管理员输入普通管理员相关对应信息并提交,对应信息即写入 管理员数据库表。 ? 这里通常如果是普通管理员权限值就是0,如果是高级管理员权限值就是1, 这样做是为了区分高级管理员和普通管理员,以便于确保安全性,同时也即有效管理图书馆内部管理人员的流动,也可以及时更新图书管理人员的资料,并进行实时管理。 ? 这里面主要管理员能完成四大功能,查询、删除、修改、添加。如果是添加, 就直接加入信息并提交,就可以直接注册新管理员了,而查询、删除、修改,需要点击相应按钮,以激活该功能才进行相应的操作。 ? 为确保安全性,本界面对普通管理员是透明的。 . 2.6.3管理员信息管理详细设计: 这里当高级管理员进行操作时,必然会访问数据库,并进行对应的操作,并进行修改,其中数据库链接和关闭过程的描述省略,前面已经介绍。 下面主是功能的详细设计。 ? 添加,只要输入完整的信息即可即时加入数据库,.输入并提交就会把以上填写 信息提交给插入数据库,写入管理员信息表,管理员表里会增加相应一个用户以及其的信息,实质注册还是删除及添加还是查询更或是修改都要进行提交给数据库,利用函数执行SQL语句访问数据库。 <% String studentname = request.getParameter(\String studentcollege = request.getParameter(\String studentortime = request.getParameter(\String studentbnumers = request.getParameter(\String studentsort = request.getParameter(\String studentno= request.getParameter(\rs=st.executeQuery(sql); sql=\%> <%--进行提交核对是否为空,为空则报错不能插入--%> <% if(studentname!=null){ if(studentcollege!=null){ if(studentortime!=null){ if(studentbnumers!=null){ if(studentsort!=null){ if(studentno!=null){ Stringstr1=String.valueOf(studentortime); Stringstr2=String.valueOf(studentbnumers); 第 16 页 共 29 页 sql=sql.concat(studentname).concat(\cat(str1).concat(\ cat(studentno).concat(\ st.executeUpdate(sql); rs.close(); st.close(); conn.close(); %> } } } } rs.close(); st.close(); conn.close(); %> 开始接从缓冲器中接收用户输入的信息。 然后判断接收是否为空.如果为空则不执行SQL语句,如果不为空则不执行SQL语句。 最后访问完数据库然后关闭。 ? 删除,只要输入管理员姓名就可以方便删掉相应信息。 <%--连接数据库--%> <% sql = \%> <%--进行相应删除操用--%> <% if(studentname==null){ rs.close(); st.close(); conn.close(); %> if(studentno==null){ rs.close(); st.close();
相关推荐: