Hibernate简单登录例子

1、登录用户表loginusers:

2、新建JavaWeb工程hibernateModel1,完成部署hibernate(可参照hibernate部署),工程目录如下

3、在WebRoot下新建login.jsp,编写登录页

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>Hibernate login</title>

  </head>
  
  <body>
    <h3>User Login</h3>
    <form action="validate.jsp" method="post">
    	<label>Account:&nbsp;&nbsp;&nbsp;</label>
    	<input type="text" name="userName"/><br>
    	<label>Password:</label>
    	<input type="password" name="password"/><br><br>
    	<input type="reset" value="reset"/>
    	<input type="submit" value="submit"/>
    </form>
  </body>
</html>

4、在WebRoot下新建validate.jsp,编写验证页

<%@ page language="java" import="java.util.*,com.bean.Loginusers" pageEncoding="utf-8"%>
<%@ page import="org.hibernate.*,com.tools.HibernateSessionFactory" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>  
    <title>hibernate validate.jsp</title>
  </head>
  
  <body>
    <%
    	request.setCharacterEncoding("utf-8");
    	String account=request.getParameter("userName");
    	String password=request.getParameter("password");
    	boolean flag=false;
    	Loginusers user=null; //创建登录用户
    	user=(Loginusers)session.getAttribute("user");
    	
    	if(user==null){      //判断是否是第一次登录          
    		String hql="from Loginusers u where u.userName=? and u.password=?";
    		Session hsession=HibernateSessionFactory.getSession();
    		Query query=hsession.createQuery(hql);
    		query.setParameter(0,account);
    		query.setParameter(1,password);
    		List list=query.list();
    		if(list!=null){
    			Iterator it=list.iterator();
    			while(it.hasNext()){
    			   	user=(Loginusers)it.next();
    			   	session.setAttribute("user",user);
    			   	flag=true;
    			}
    		}
    	}else{
    		flag=true;
    	}
    	if(flag)
	    	response.sendRedirect("success.jsp");
	    else
	    	response.sendRedirect("error.jsp");
     %>
  </body>
</html>

5、在WebRoot下新建success.jsp,编写验证成功页

<%@ page language="java" import="java.util.*" import="com.bean.Loginusers" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>My JSP 'success.jsp' starting page</title>
  </head>  
  <body>
  	<% 
  		Loginusers user=(Loginusers)session.getAttribute("user");
  		String uName=user.getUserName();
  	 %>
    <h2 style="text-align:center;margin:200xp auto">Welcome <%=uName %>,Login Success</h2>
  </body>
</html>

6、在WebRoot下新建error.jsp,编写验证失败页

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>My JSP 'error.jsp' starting page</title>
  </head>
  
  <body>
    <h2 style="text-align:center;margin:100px auto">Login Error</h2>
  </body>
</html>

7、保存所有启动Tomcat,浏览器测试

猜你喜欢

转载自blog.csdn.net/zero_130/article/details/81203276