Spring和Hibernate整合的CRUD操作实例1

本文介绍了一个基于Hibernate框架的简单用户管理系统的实现过程,包括实体类定义、类映射文件配置、管理层接口及其实现等内容。通过该示例可以了解如何使用Hibernate进行基本的增删查改操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实体类User.java

package org.myclover.user;

import java.util.Date;

public class User {
private int userId;
private String userName;
private String userSex;
private String userEmail;
private Date userBirthday;

public int getUserId() {
return userId;
}

public void setUserId(int userId) {
this.userId = userId;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getUserSex() {
return userSex;
}

public void setUserSex(String userSex) {
this.userSex = userSex;
}

public String getUserEmail() {
return userEmail;
}

public void setUserEmail(String userEmail) {
this.userEmail = userEmail;
}

public Date getUserBirthday() {
return userBirthday;
}

public void setUserBirthday(Date userBirthday) {
this.userBirthday = userBirthday;
}
}


类映射文件User.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="org.myclover.user">
<class name="User" table="t_user">
<id name="userId" column="user_id">
<generator class="native"></generator>
</id>
<!-- type属性中的类型首字母是小写的 -->
<property name="userName" type="string" not-null="true" />
<property name="userSex" type="string" />
<property name="userEmail" type="string" />
<property name="userBirthday" type="date" />
</class>
</hibernate-mapping>



管理层接口UserManager.java

package org.myclover.user.service;

import java.util.List;

import org.myclover.user.User;

public interface UserManager {
public void addUser(User user);

public User findById(Integer id);

public List getAllUser();

public void deleteUser(Integer id);

public void updateUser(User user);
}


管理层实现UserManagerImpl.java

package org.myclover.user.service.impl;

import java.util.List;

import org.myclover.user.User;
import org.myclover.user.service.UserManager;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

public class UserManagerImpl extends HibernateDaoSupport implements UserManager {

/*
* private UserManager userManager;
*
* public void setUserManager(UserManager userManager) { this.userManager =
* userManager; }
*/

@Override
public void addUser(User user) {
this.getHibernateTemplate().save(user);
}

@Override
public List getAllUser() {
return this.getHibernateTemplate().find("from User");
}

@Override
public User findById(Integer id) {
return (User) this.getHibernateTemplate().get(User.class, id);
}

@Override
public void deleteUser(Integer id) {
this.getHibernateTemplate().delete(findById(id));
}

@Override
public void updateUser(User user) {
this.getHibernateTemplate().update(user);
}

}


hibernate.cfg.xml的配置文件

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.url">jdbc:mysql://localhost/spring_hibernate_crud_test</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">fangfang</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.current_session_context_class">thread</property>
<!--
<property name="hibernate.current_session_context_class">jta</property>
-->
<mapping resource="org/myclover/user/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值