<session-factory>
<property name="connection.username">root</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/test
</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="myeclipse.connection.profile">MySQL</property>
<property name="connection.password">root</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<mapping resource="com/lian/bean/User.hbm.xml" />
</session-factory>
<struts>
<include file="struts-default.xml" />
<package name="default" extends="struts-default">
<action name="login" class="com.lian.action.LoginAction">
<interceptor-ref name="defaultStack" />
<result name="success">/success.jsp</result>
<result name="error">error.jsp</result>
</action>
<action name="register" class="com.lian.action.RegisterAction">
<interceptor-ref name="validationWorkflowStack" />
<result name="success">success.jsp</result>
<result name="error">error.jsp</result>
<result name="input">register.jsp</result>
</action>
</package>
</struts>
<filter>
<filter-name>struts-cleanup</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ActionContextCleanUp
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts-cleanup</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
package com.lian.util;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static SessionFactory sessionFactory;
public static final ThreadLocal<Session> session = new ThreadLocal<Session>();
static {
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Throwable ex) {
throw new ExceptionInInitializerError(ex);
}
}
/*
* 获得当前session
*/
public static Session getSession() throws HibernateException {
Session s = (Session) session.get();
if(s ==null || !s.isOpen()){
s = sessionFactory.openSession();
session.set(s);
}
return s;
}
/*
* 回滚
*/
public static void rollback(Transaction tx) {
try {
if(tx != null) {
tx.rollback();
}
} catch (HibernateException e) {
System.out.println("rollback faild." + e);
}
}
/*
* 关闭session
*/
public static void closeSession() throws HibernateException {
Session s = session.get();
session.set(null);
if(s != null) {
s.close();
}
}
}
package com.lian.dao;
import java.util.Iterator;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.lian.bean.User;
import com.lian.util.HibernateUtil;
public class UserDao {
private Session session;
private Transaction tx;
public UserDao() {
session = HibernateUtil.getSession();
}
/*
* 将User对象插入到数据库中
* @param user
*/
public void create(User user) {
try {
tx = session.beginTransaction();
session.save(user);
tx.commit();
} catch (HibernateException e) {
HibernateUtil.rollback(tx);
} finally {
HibernateUtil.closeSession();
}
}
public void delete(User user) {
try {
tx = session.beginTransaction();
session.delete(user);
tx.commit();
} catch (HibernateException e) {
HibernateUtil.rollback(tx);
} finally {
HibernateUtil.closeSession();
}
}
public User find(int id) {
User user = null;
tx = session.beginTransaction();
user = (User) session.get(User.class, id);
tx.commit();
HibernateUtil.closeSession();
return user;
}
public void update(User user) {
tx = session.beginTransaction();
session.update(user);
tx.commit();
HibernateUtil.closeSession();
}
public boolean check(User user) {
tx = session.beginTransaction();
String sql = "select u.password from User u where u.username='" +user.getUsername()+ "'";
List list = session.createQuery(sql).list();
if(!list.isEmpty()) {
Iterator it = list.iterator();
while(it.hasNext()) {
String get = (String) it.next();
System.out.println(get);
if(get.equals(user.getPassword())) {
HibernateUtil.closeSession();
return true;
}
}
}
HibernateUtil.closeSession();
return false;
}
}
<hibernate-mapping>
<class name="com.lian.bean.User" table="users">
<id name="id" column="id" type= "java.lang.Long">
<generator class="native" />
</id>
<property name="username" column="username" type="java.lang.String" />
<property name="password" column="password" type="java.lang.String" />
</class>
</hibernate-mapping>
package com.lian.action;
import com.lian.bean.User;
import com.lian.dao.UserDao;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
private long id;
private String username;
private String password;
@Override
public String execute() throws Exception {
UserDao userDao = new UserDao();
User user = new User();
user.setUsername(username);
user.setPassword(password);
if(userDao.check(user)) {
return SUCCESS;
}
return ERROR;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
分享到:
相关推荐
在本项目中,开发者使用了Hibernate和Struts2这两个核心框架来构建一个基础的登录注册系统,同时还涉及到了分页查询这一重要的数据处理技术。以下是对这些知识点的详细阐述: **1. Hibernate框架:** Hibernate是一...
标题"jsp+hibernate+struts2简单登录和注册"指出,这个项目是基于Java Web技术栈实现的一个基础的用户登录和注册功能。它结合了三种关键技术:JSP(JavaServer Pages)、Hibernate(一个对象关系映射框架)以及...
总的来说,基于Struts2+Spring+Hibernate+MySql的注册登录系统是利用这些技术协同工作,实现了用户注册、登录的基本功能。Struts2处理请求,Spring管理组件和事务,Hibernate负责数据持久化,而MySql存储数据。...
在IT行业中,集成不同的技术...这个简单的注册功能展示了Spring、Hibernate和Struts2如何协同工作,为实际项目提供了一个基础模板。通过这种方式整合,可以构建出更复杂的业务流程,同时保持良好的代码结构和可维护性。
"学生信息管理系统hibernate+struts2框架"是一个基础但实用的Web应用,展示了如何利用现代Java Web技术实现数据管理。通过学习和实践这个系统,开发者可以深入理解Hibernate和Struts2的整合应用,提升Web开发能力。...
本教程通过一个简单的Demo,展示了如何将这两个框架整合,实现基本的CRUD(创建、读取、更新、删除)操作,并结合登录注册功能,为初学者提供了很好的学习资源。 首先,Struts2是基于Action的MVC框架,它处理用户...
这些操作可以通过后台管理系统实现,SSH2框架能够轻松支持这些功能的实现,例如通过Hibernate进行数据库操作,Struts2处理用户请求,Spring管理事务和数据访问对象(DAO)。 7. **数据库设计** 该系统可能包含新闻...
library_ssh2可能是一个包含系统源代码的压缩文件,"ssh2"可能表示系统使用了Struts2、Spring2和Hibernate2这三个框架的早期版本。这个文件中应包含所有必要的Java源代码、配置文件、Web应用相关的资源(如JSP页面、...
"umanager"通常代表用户管理模块,可能包含用户注册、登录、权限管理等功能。在这个例子中,我们可能会有以下步骤: 1. **配置Spring**:创建Spring配置文件,配置SessionFactory,声明Hibernate的DataSource、...
AJAX实现用户登录注册(Struts+Spring+Hibernate+Ajax框架) AJAX实现用户登录注册(Struts+Spring+Hibernate+Ajax框架) AJAX实现用户登录注册(Struts+Spring+Hibernate+Ajax框架)
该项目是一个综合示例,旨在帮助初学者了解如何将流行的Java开发框架Struts2、Hibernate和Spring4整合在一起,并实现微信登录功能。这三个框架在企业级Java应用开发中广泛使用,它们各自负责不同的职责:Struts2处理...
【标题】:“Hibernate+Struts注册”涉及到的技术栈是企业级Java应用开发中的两大核心框架:Hibernate和Struts。这两个框架在Web应用中扮演着重要的角色,分别负责对象关系映射(ORM)和模型-视图-控制器(MVC)架构...
最简单的Spring+Struts2+Hibernate整合例子,MySql数据库,IDE是JavaEE版的Eclipse,tomcat7.0 ,实现功能:登录+注册+增删改查+一键清空数据库表的数据。所有jar文件都在里面了。
1. **用户模块**:用户注册、登录、个人信息管理等功能,Struts2处理HTTP请求,Spring管理用户服务层(UserService),Hibernate负责用户数据的持久化。 2. **文章模块**:用户可以发布、编辑、删除自己的文章,...
Struts2、Hibernate、...通过这个简单的注册功能实现,开发者可以学习到如何整合Struts2、Hibernate、Spring和MySQL,理解它们各自的角色以及如何协同工作。这个项目是进一步深入学习和实践Java Web开发的良好起点。
页面部分可能使用JSP(JavaServer Pages)技术,结合Struts2标签库(struts2-convention-plugin)实现简单的交互。JSP用于渲染视图,显示数据,接收用户输入,而Struts2标签库简化了表单处理和结果展示。 此外,...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合应用广泛用于构建复杂的Web应用程序,如本例中的图书馆管理系统。这个系统实现了用户登录和注册功能,并且提供了对书籍表的操作,包括增、删、改...
这可能是一个整合了Spring、Hibernate和Struts的简单应用示例,具体实现可能包括用户信息的持久化(由Hibernate处理),业务逻辑的控制(由Spring管理的Service实现),以及Web界面的展示和用户请求的处理(由Struts...
在这个“基于Struts2+Spring+Hibernate+MySql的注册登录系统”中,我们可以深入理解这四个框架的集成与应用。** **Struts2** 是一个强大的MVC(Model-View-Controller)框架,负责处理HTTP请求,调度控制器,以及将...
《基于Hibernate和Struts2的房屋出租管理系统设计与实现》 在信息技术日新月异的今天,Web应用程序已经成为企业管理的重要工具。本项目“基于Hibernate和Struts2的房屋出租管理系统”是一个典型的企业级应用,旨在...