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

实体类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>

你可能感兴趣的:(java,spring,Hibernate,mysql,jdbc)