资源管理系统 - 图文(6)

2019-05-18 19:58

if(action==null||\ return mapping.findForward(\ }else if(\

return listUser(mapping,form,request,response); }else if(\

return addUsers(mapping,form,request,response); }else if(\

return logon(mapping,form,request,response); }else if(\

return updateUser(mapping,form,request,response); }else if(\

return deleteUser(mapping,form,request,response); }else if(\

return selectUser(mapping,form,request,response); }

return mapping.findForward(\ }

private ActionForward selectUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

Long id=new Long(request.getParameter(\ Users u=dao.loadUsers(id.longValue()); request.setAttribute(\ return mapping.findForward(\ }

private ActionForward deleteUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

Long id=new Long(request.getParameter(\ Users users=new Users(); users.setId(id);

23

dao.deleteUsers(users);

return mapping.findForward(\ }

private ActionForward updateUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

UsersForm usersform=(UsersForm)form; Users users=usersform.populate(); dao.updateUsers(users);

return mapping.findForward(\ }

private ActionForward logon(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

UsersForm usersform=(UsersForm)form; Users users=new Users();

users.setUsername(usersform.getUsername()); users.setPassword(usersform.getPassword()); boolean flag=dao.logonUsers(users); if(flag){

request.getSession().setAttribute(\ return mapping.findForward(\ }else{

return mapping.findForward(\ } }

private ActionForward addUsers(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

UsersForm usersform=(UsersForm)form; Users users=usersform.populate();

24

dao.addUsers(users);

return mapping.findForward(\ }

private ActionForward listUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {

request.setAttribute(\ return mapping.findForward(\ }

Struts的Action实现类的execute()方法是最先被执行的,这个方法本身也没有具体的事务,而是根据action的参数不同执行相应的方法。在登陆页里面可以找到有一个“action=logon”的字样,它的目的就是在这里做逻辑判断。当action=logon时调用logon()方法。logon()方法从UsersForm中得到用户提交的数据,然后在调用UsersDao()的logonUsers()方法。并且把UsersForm转成Users类做为logonUsers()方法的参数。调用后会返回一个boolean型的值。如果为真,则返回“mapping.findForward(\”否则返回“mapping.findForward(\”也就是当用户登陆成功后,返回给用户登陆成功的页面,登陆失败后返回用户一个登陆失败的页面。那么UsersDao的logonUsers()方法是根据什么得到的返回值呢,现在就让我们看看这个方法,如下所示:

public boolean logonUsers(Users users) throws HibernateException {

Session session = HibSessionFactory.currentSession(); Transaction tx = session.beginTransaction(); Query query = session

.createQuery(%u.username = :name and u.password =:password and u.isadmin=:isadmin \

query.setString(\ query.setString(\ query.setByte(\ List list = null;

25

list = query.list(); tx.commit();

HibSessionFactory.closeSession(); if (list != null) {

Iterator it = list.iterator(); if (it.hasNext()) {

if (((Integer) it.next()).intValue() == 1) { return true; } } }

return false; }

这个方法先通过HibSessionFactory得到一个Hibernate的Session并且开始一个事务,Session再像使用一个欲编译似的命令似的东西,设定参数、提交事务和最后在关闭Session.。得到一个List里面就存储着所有查询出的结果。根据这个结果就可以判断出该用户是否有登陆的权根了,在返回true 或者false。就这样合法的用户就可以顺利的登陆了。那刚才那些有些类似于欲编译的东西是什么呢,这些就是Hibernate特有的查询语言,被称为Hibernate 查询语言(HQL),而它本身也就是使用的JDBC的欲编译技术。

4.1.2 人员管理模块设计

人员管理模块主要包括浏览人员信息、添加人员信息、人员信息的添加、人员信息的修改。此模块文件架构如图4所示。

各项管理工作都是在用户成功登陆后的管理页面进行的,在管理控制页面的左侧是各项的相关链接,右侧是操作平台。管理控制页面右侧实际上是一个iframe,如下所示:

26

在左侧的链接中使用target=\就可以在这个iframe中打开新的链接了。

单击“添加人员信息”,即打开添加人员信息的页面如图所示。

图4.2 添加人员信息页面

添加人员信息的链接是这样的,如下所示:

在Struts配置文件中,添加人员信息的链接没有使用ActionForm类,也没有使用Action的实现类,如下所示:

adduser.jsp文件,只是一个普通的JSP文件,但是它的表单元素都是与UsersForm相对应的,UsersForm如下所示:

package com.bOS.bPRO_PersonManage.actionform; import com.bOS.bUtil.DateUtil;

import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import com.bOS.bPRO_PersonManage.en.Users; public class UsersForm extends ActionForm {

27


资源管理系统 - 图文(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:原子吸收测定柠檬酸中钙的含量(精)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: