首先,定义一个Customer的bean类,设置好Customer.hbm.xml文件。再定义好一个Dao接口。准备好一个jdbc.properties文件。 ?
?
在dao类中定义一个HibernateTemplate类的对象,用该对象调用HibernateTemplate模板封装好的方法,如下:
/***?
?*?hibernateTemplate的转配模式?
?*/??
public?class?CustomerDaoImpl?implements?CustomerDao?{??
????//?设置hibernateTemplate属性??
????private?HibernateTemplate?hibernateTemplate;??
????//?必须设置set方法??
????public?void?setHibernateTemplate(HibernateTemplate?hibernateTemplate)?{??
????????this.hibernateTemplate?=?hibernateTemplate;??
????}??
????//?插入方法??
????@Override??
????public?void?insert(Customer?entity)?{??
????????hibernateTemplate.save(entity);??
????}??
????//?删除方法(按照试题删除)??
????@Override??
????public?void?delete(Customer?entity)?{??
????????hibernateTemplate.delete(entity);??
????}??
????//?删除方法,按id删除,该方法不成功??
????@Override??
????public?void?deleteById(int?id)?{??
????????//?hibernateTemplate.??
????}??
????//?查询所有记录??
????@Override??
????public?List<Customer>?selectAll()?{??
????????//?TODO?Auto-generated?method?stub??
????????List<Customer>?entities?=?hibernateTemplate.find("from?Customer");??
????????return?entities;??
????}??
????//?按照id查找记录??
????@Override??
????public?Customer?selectById(int?id)?{??
????????//?TODO?Auto-generated?method?stub??
????????List<Customer>?entitise?=?hibernateTemplate??
????????????????.find("from?Customer?where?id="?+?id);??
????????if?(entitise.size()?>?0)?{??
????????????Customer?entity?=?entitise.get(0);??
????????????return?entity;??
????????}??
????????return?null;??
????}??
????//?更新方法??
????@Override??
????public?void?update(Customer?entity)?{??
????????//?TODO?Auto-generated?method?stub??
????????hibernateTemplate.update(entity);??
????}??
}??
xml中的部分代码如下:
Java代码??
<!--?分散配置?-->??
????<context:property-placeholder?location="jdbc.properties"?/>??
????<!--?c3p0数据源?-->??
????<bean?id="dataSource"?class="com.mchange.v2.c3p0.ComboPooledDataSource">??
????????<!--?驱动程序?-->??
????????<property?name="driverClass">??
????????????<value>${jdbc.driverClass}</value>??
????????</property>??
????????<!--?连接的url地址?-->??
????????<property?name="jdbcUrl">??
????????????<value>${jdbc.url}</value>??
????????</property>??
????????<!--?连接的用户名?-->??
????????<property?name="user">??
????????????<value>${jdbc.user}</value>??
????????</property>??
????????<!--?连接的密码?-->??
????????<property?name="password">??
????????????<value>${jdbc.password}</value>??
????????</property>??
????????<!--?最大池数?-->??
????????<property?name="maxPoolSize">??
????????????<value>${c3p0.pool.max}</value>??
????????</property>??
????????<!--?最小池数?-->??
????????<property?name="minPoolSize">??
????????????<value>${c3p0.pool.min}</value>??
????????</property>??
????????<!--?默认初始化的池数?-->??
????????<property?name="initialPoolSize">??
????????????<value>${c3p0.pool.init}</value>??
????????</property>??
????</bean>??
????<bean?id="sessionFactory"??
????????class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">??
????????<!--?设置数据源?-->??
????????<property?name="dataSource"?ref="dataSource"?/>??
????????<!--?属性设置?-->??
????????<property?name="hibernateProperties">??
????????????<props>??
????????????????<prop?key="hibernate.show_sql">${hibernate.show_sql}</prop>??
????????????????<prop?key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>??
????????????</props>??
????????</property>??
????????<!--?映射文件配置?-->??
????????<property?name="mappingResources">??
????????????<list>??
????????????????<value>cn/csdn/domain/Customer.hbm.xml</value>??
????????????</list>??
????????</property>??
????</bean>??
????<span?style="background-color:?#ff0000;"><!--?hibernate模板?-->??
????<bean?id="hibernateTemplate"?class="org.springframework.orm.hibernate3.HibernateTemplate">??
????????<property?name="sessionFactory"?ref="sessionFactory"?/>??
????</bean></span>??
????<!--?dao的操作的bean?-->??
????<bean?id="customerDaoImpl"?class="cn.csdn.dao.CustomerDaoImpl">??
????????<!--?注入依赖模板?-->??
????????<property?name="hibernateTemplate"?ref="hibernateTemplate"?/>??
????????</bean>
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....