关于HbernateTemplate的简单用法

来源:互联网 发布:淘宝怎么写标题 编辑:程序博客网 时间:2024/06/06 12:38

通过HbernateTemplate可以简化操作数据库时的代码量:

以下为通过hibernateTemplate实现增删查改

package com.fengqing.dao.impl;import java.util.List;import org.springframework.orm.hibernate3.HibernateTemplate;import com.fengqing.dao.UserDao;import com.fengqing.model.User;public class UserDaoImpl implements UserDao {public HibernateTemplate hibernateTemplate;public HibernateTemplate getHibernateTemplate() {return hibernateTemplate;}public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {this.hibernateTemplate = hibernateTemplate;}//保存@Overridepublic void save(User user) {hibernateTemplate.save(user);}//删除public void delete(int id){Object object = hibernateTemplate.get(User.class, id);hibernateTemplate.delete(object);}@Overridepublic void update(User user) {hibernateTemplate.update(user);}@Overridepublic List<User> getAll() {List<User> list = (List<User>)hibernateTemplate.find("from User");return list;}}

applicationContext.xml中的配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd    http://www.springframework.org/schema/aop     http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /><property name="url" value="jdbc:oracle:thin:@localhost:1521/orcl" /><property name="username" value="scott" /><property name="password" value="123456" /></bean><bean id="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="mappingResources"><list><value>User.hbm.xml</value><value>Log.hbm.xml</value></list></property><property name="hibernateProperties"><props><prop key="dialect">org.hibernate.dialect.Oracle9Dialect</prop><prop key="show_sql">true</prop></props></property></bean><bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"><property name="sessionFactory" ref="sessionFactory"></property></bean><bean id="userDao" class="com.fengqing.dao.impl.UserDaoImpl"><property name="hibernateTemplate" ref="hibernateTemplate"></property></bean><bean id="logDao" class="com.fengqing.dao.impl.LogDaoImpl"><property name="sessionFactory" ref="sessionFactory"></property></bean><bean id="userServer" class="com.fengqing.service.impl.UserServerImpl"><property name="userDao" ref="userDao"></property><property name="logDao" ref="logDao"></property><property name="sessionFactory" ref="sessionFactory"></property></bean><tx:advice id="txAdvice" transaction-manager="txManager"><tx:attributes><tx:method name="get*" read-only="true" /><tx:method name="*" /></tx:attributes></tx:advice><aop:config><aop:pointcut id="userServiceOperation"expression="execution(public * com.fengqing.service.impl.UserServerImpl.*(..))" /><aop:advisor advice-ref="txAdvice" pointcut-ref="userServiceOperation" /></aop:config><bean id="txManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource" /></bean></beans>

0 0
原创粉丝点击