重新开始写博客
好久没写博客,搞得连以前用谷歌邮箱注册的博客园帐号密码给忘,只好用国内邮箱再注册,重新开通博客。想博客域名就想了一会,后来就用自己爱玩的Kindred作名字。
以前我是写iOS开发内容,现在改学JavaWeb网站后台开发。话说最近有真得是很忙,连英雄联盟都没时间玩。我在学习一个用Strust和Hibernate框架写的医药管理系统。先说点题外话,感觉学习编程多少还是要有点兴趣,否则就味如嚼蜡。外国有部小说《Alice's Adventures in Wonderland》,挺适合程序员去看的,里面有很多善于逻辑思维方面的东西。
医药管理系统,开始进入index.jsp,forward转入login.jsp,不管你直接进行哪个页面,只要没有登陆信息,统一都要重新登录一遍。login.jsp页面用的Action的是struts.action包下面的loginAction。
package com.lyq.struts.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.lyq.dao.UserDao; import com.lyq.persistence.User; import com.lyq.struts.form.UserForm; /** * 用户登录Action类 * * @author Li Yong Qiang */ public class LoginAction extends Action { // 处理用户登录请求 public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { UserForm uf = (UserForm) form; // 获取ActionForm String userName = uf.getUsername(); // 用户名 String password = uf.getPassword(); // 密码 User user = null; // 查询用户 if (userName != null && password != null) { UserDao userDao = new UserDao(); user = userDao.login(userName, password); } // 查询到用户则登录成功,否则登录失败返回到登录页面 if (user != null) { request.getSession().setAttribute("user", user); return mapping.findForward("manage"); } else { request.setAttribute("error", "error"); return mapping.findForward("loginFail"); } } }
UserForm对象为用户ActionForm对象,Struts自动将JSP页面表单信息封装在此对象之中,所以可以直接获取ActionForm对象中的属性信息。LoginaAction类通过UserForm中的用户名及密码属性,调用UserForm对象中的login()方法对用户信息进行查询,当数据库中存在与之匹配的数据时,则登陆成功,否则登录失败。

浙公网安备 33010602011771号