关闭

hibernate使用注解

标签: hibernate使用注解
232人阅读 评论(0) 收藏 举报
分类:

重复配hibernate-mapping导致工作量加大,一张表要配置一个hibernate-mapping

使用注解

1.org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean

下有个方法

public void setPackagesToScan(String... packagesToScan) {
this.packagesToScan = packagesToScan;
}

packagesToScan=》指定使用了注解的类所在的包下即可,不用重复配置hibernate-mapping

2.<!-- 不加 <prop key="hibernate.hbm2ddl.auto">update</prop> 数据库有对应的表没事,没表的话就会异常 -->
  <prop key="hibernate.hbm2ddl.auto">update</prop> 



<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">

	<!-- Hibernate session factory -->
	<!-- org.springframework.orm.hibernate3.LocalSessionFactoryBean
	org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean -->
	<bean id="sessionFactory"
		class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">

		<property name="dataSource">
			<ref bean="dataSource" />
		</property>

		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
				<prop key="hibernate.show_sql">true</prop>
<!-- 	不加	<prop key="hibernate.hbm2ddl.auto">update</prop> 数据库有对应的表没事,没表的话就会异常 -->
 				<prop key="hibernate.hbm2ddl.auto">update</prop> 
			</props>
		</property>

		<!--  <property name="mappingResources">
			<list>
				<value>com/yiibai/customer/hibernate/Customer.hbm.xml</value>
			</list>
		</property> -->
<!-- 		使用注解 -->
		<property name="packagesToScan" value="com.yiibai.customer.model"/></span>
		
		
	</bean>
	<!-- 事务管理器 -->
	 <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>
	<!-- 注解驱动,声明使用注解式事务 -->
	<!-- 设置proxy-target-class="true"可以注入实现类,默认只能注入接口 -->
	 <tx:annotation-driven transaction-manager="transactionManager" 
	                        proxy-target-class="true"/>
	                     <!--    事务代理 -->
	 <bean id="txProxyTemplate" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
		<property name="transactionManager" ref="transactionManager" />
		<property name="transactionAttributes">
			<props>
				<prop key="*">PROPAGATION_REQUIRED</prop>
			</props>
		</property>
	</bean>
</beans>



实体类

package com.yiibai.customer.model;

import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;
@Entity
@DynamicUpdate
public class Customer implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int customerId;
	private String name;
	private String address;
	private Date createdDate;

	public Customer() {
	}

	public Customer(String name, String address, Date createdDate) {
		this.name = name;
		this.address = address;
		this.createdDate = createdDate;
	}
	@Id
	@GeneratedValue
	//@GenericGenerator(name = "", strategy = "")
	public int getCustomerId() {
		return this.customerId;
	}

	public void setCustomerId(int customerId) {
		this.customerId = customerId;
	}

	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAddress() {
		return this.address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public Date getCreatedDate() {
		return this.createdDate;
	}

	public void setCreatedDate(Date createdDate) {
		this.createdDate = createdDate;
	}
	
}





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:36943次
    • 积分:691
    • 等级:
    • 排名:千里之外
    • 原创:33篇
    • 转载:3篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论