Struts 2 + Hibernate 用户的登录与注销
来源:互联网 发布:上海 软件设计师报名 编辑:程序博客网 时间:2024/05/29 20:01
1.反向工程生成用户实体类
User.java
package com.sunline.entity;/** * User entity. @author MyEclipse Persistence Tools */public class User implements java.io.Serializable { // Fields private Integer userId; private String userName; private String userPassword; private String userStatus; // Constructors /** default constructor */ public User() { } /** full constructor */ public User(String userName, String userPassword, String userStatus) { this.userName = userName; this.userPassword = userPassword; this.userStatus = userStatus; } // Property accessors public Integer getUserId() { return this.userId; } public void setUserId(Integer userId) { this.userId = userId; } public String getUserName() { return this.userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserPassword() { return this.userPassword; } public void setUserPassword(String userPassword) { this.userPassword = userPassword; } public String getUserStatus() { return this.userStatus; } public void setUserStatus(String userStatus) { this.userStatus = userStatus; }}
User.hbm.xml
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><!-- Mapping file autogenerated by MyEclipse Persistence Tools--><hibernate-mapping> <class name="com.sunline.entity.User" table="user" catalog="hengfeng"> <id name="userId" type="java.lang.Integer"> <column name="user_id" /> <generator class="native"></generator> </id> <property name="userName" type="java.lang.String"> <column name="user_name" length="40" not-null="true" /> </property> <property name="userPassword" type="java.lang.String"> <column name="user_password" length="30" not-null="true" /> </property> <property name="userStatus" type="java.lang.String"> <column name="user_status" length="30" not-null="true" /> </property> </class></hibernate-mapping>
Hibernate配置文件
Hibernate.cfg.xml
<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools. --><hibernate-configuration><session-factory><property name="dialect">org.hibernate.dialect.MySQLDialect</property><property name="connection.url">jdbc:mysql://localhost:3306/hengfeng?characterEncoding=UTF-8</property><property name="connection.username">root</property><property name="connection.password">******</property><property name="connection.driver_class">com.mysql.jdbc.Driver</property><property name="myeclipse.connection.profile">com.mysql.jdbc.Driver</property><property name="show_sql">true</property><property name="format_sql">true</property><property name="hbm2ddl.auto">update</property><mapping resource="com/sunline/entity/Basedata.hbm.xml" /><mapping resource="com/sunline/entity/Targetdimension.hbm.xml" /><mapping resource="com/sunline/entity/User.hbm.xml" /></session-factory></hibernate-configuration>
Struts 2 配置文件
Struts.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"><struts><package name="SunlineShow" extends="struts-default"> <!-- 登录 --> <action name="Main" class="com.sunline.action.LoginAction"><result name="success">/jsp/Main.jsp</result><result name="error">/error.jsp</result></action> <!-- 注销登录 --> <action name="LogOut" class="com.sunline.action.LogoutAction"><result name="success">/index.jsp</result></action></package></struts>
Hibernate配置文件解析类
HibernateSessionFactory.java
package com.sunline.dao;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HibernateSessionFactory { private SessionFactory sessionFactory; public HibernateSessionFactory(){ } public SessionFactory config(){ try{ Configuration configuration= new Configuration(); Configuration configure=configuration.configure("hibernate.cfg.xml"); return configure.buildSessionFactory(); }catch(Exception e){ e.getMessage(); return null; } } public Session getSession(){ sessionFactory=config(); return sessionFactory.openSession(); }}
数据访问层Dao类
UserDao.java
package com.sunline.dao;import java.util.List;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.Transaction;import com.sunline.entity.User;public class UserDao {private Session session;private Transaction transaction;private Query query;HibernateSessionFactory getSession; public List<User> Login(String user_name,String user_password){ getSession = new HibernateSessionFactory(); session = getSession.getSession(); try{ String hqlsql="from User as u where u.userName=? and u.userPassword=?"; query=session.createQuery(hqlsql); query.setParameter(0, user_name); query.setParameter(1, user_password); List<User> list=query.list(); transaction=session.beginTransaction(); System.out.println("查询成功!"); transaction.commit(); return list; }catch(Exception e){ System.out.println("查询错误!"); e.printStackTrace(); return null; } }}
Action控制类
登录控制类:
LoginAction.java
package com.sunline.action;import java.util.List;import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import com.sunline.dao.UserDao;import com.sunline.entity.User;public class LoginAction extends ActionSupport {private static final long serialVersionUID = 1889710968497585080L;private String user_name ;private String user_password;public String getUser_name() {return user_name;}public void setUser_name(String user_name) {this.user_name = user_name;}public String getUser_password() {return user_password;}public void setUser_password(String user_password) {this.user_password = user_password;}@Overridepublic String execute() throws Exception {// TODO Auto-generated method stubUserDao dao = new UserDao();List<User> list = dao.Login(this.user_name, this.user_password);if(list.size()>=1){ActionContext context = ActionContext.getContext();Map<String, Object> session = context.getSession();//session.put("user",list);session.put("user",this.user_name);return SUCCESS;}else{return ERROR;}}}
注销控制类:
LogoutAction.java
package com.sunline.action;import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class LogoutAction extends ActionSupport {private static final long serialVersionUID = 1L;@Overridepublic String execute() throws Exception {// TODO Auto-generated method stub Map session = ActionContext.getContext().getSession(); session.remove("user"); return SUCCESS;} }
登录前端页面:
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>登录验证</title><link rel="stylesheet" href="bootstrap-3.3.7/css/bootstrap.min.css"> <script src="js/jquery-3.2.1.min.js"></script> <script src="js/bootstrap.min.js"></script> <script type="text/javascript">function check(){var uname = document.getElementById("uname").value;var upassword = document.getElementById("upassword").value;if(uname==""){alert("用户名为空!");return false;}if(upassword==""){alert("密码为空!");return false;}}</script><style type="text/css"> .input-group{ margin:10px 0px;//输入框上下外边距为10px,左右为0px } h3{ padding:5px; border-bottom:1px solid #ddd;//h3字体下边框 } em{//强调的样式 color:#c7254e; font-style: inherit; background-color: #f9f2f4; } .center{ margin-left: auto; margin-right: auto; vertical-align:middle; text-align: center; }</style></head><body style="background-image: url(image/3.jpg)"> <center><nav class="navbar navbar-default" role="navigation" style="text-align: center;"> <div class="container-fluid"><div class="navbar-header"><a class="navbar-brand" href="#"><span class="glyphicon glyphicon-flag" aria-hidden="true"></span>财务数据集市系统</a></div> </div></nav><div class="row center" style="margin-top:100px;"> <div class="col-md-5 col-sm-offset-4"> <div class="well col-md-10"> <h3>用户登录</h3> <div> <span style="font-size: 16px;"><font color="red">${message}</font></span><br/> <span style="font-size: 16px;"><font color="red">${verify}</font></span> </div> <form action="Main" method="post" onsubmit="return check()"> <div class="input-group input-group-md"> <span class="input-group-addon" id="sizing-addon1"><i class="glyphicon glyphicon-user" aria-hidden="true"></i></span> <input type="text" class="form-control" id="uname" name="user_name" placeholder="用户名" aria-describedby="sizing-addon1"> </div> <div class="input-group input-group-md"> <span class="input-group-addon" id="sizing-addon1"><i class="glyphicon glyphicon-lock"></i></span> <input type="password" class="form-control" id="upassword" name="user_password" placeholder="密码" aria-describedby="sizing-addon1"> </div> <div style="float: right"> <a href="#">忘记密码?</a> </div> <input type="submit" name="sub" class="btn btn-success btn-block" value="登录"/> </form> </div> </div> </div> </center></body></html>
截图:
阅读全文
0 0
- Struts 2 + Hibernate 用户的登录与注销
- PHP与MYSQL实现用户登录注销
- 利用session完成用户登录与注销
- Asp.Mvc 2.0用户登录实例讲解---(2)用户登录与注销
- session的登录与注销
- 注销其他已登录用户的命令
- 用户登录和注销
- linux注销登录用户
- 用户登录及用户注销
- 集成Struts+Spring+Hibernate 用户登录实例
- Struts+Hibernate的登录验证
- 利用Session完成用户的登录和注销
- 利用Session完成用户的登录和注销(1)
- 利用Session完成用户的登录和注销
- 利用Session完成用户的登录和注销
- 关于网站用户登录和注销的操作
- 利用Session完成用户的登录和注销 .
- 利用Session完成用户的登录和注销
- 15算法课程 20. Valid Parentheses
- iOS APP网络分析之rvictl
- 开发部发送patch的相关规范,请务必遵守
- Node 初探异步编程
- BZOJ4519: [Cqoi2016]不同的最小割
- Struts 2 + Hibernate 用户的登录与注销
- Bootstrap实现图片弹出放大
- opencv将图像转换成二维数组再将数组数据传给新图像
- 安装scipy遇到的问题
- mongodb物理备份迁移
- (一)Python基础笔记
- [INS-30014] 无法检查指定的位置是否位于 CFS 上
- 洛谷 P1895 数字序列
- 2017.8.8测试 题三 两人过桥