<!--配置文件-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 数据源配置 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"><value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value></property>
<property name="url"><value>jdbc:microsoft:sqlserver://localhost:1433;databasename=pubs</value></property>
<property name="username"><value>sa</value></property>
<property name="password"><value></value></property>
</bean>
<!-- hibernate Session 工厂添加数据源和数据映射文件-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" destroy-method="close">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="mappingResources">
<list>
<value>com/spring/text/Login.hbm.xml</value>
</list>
</property>
<!-- 数据适配置器 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
</props>
</property>
</bean>
<!--
userDao组件
<bean id="userDAO" class="com.spring.text.UserDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
--><!-- LoginDao组件 -->
<bean id="loginDao" class="com.spring.text.LoginDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="hello" class="com.spring.text.HelloBean">
<property name="peng">
<value>Hello!penghao</value>
</property>
</bean>
</beans>
[color=red]LoginDao[/color]
[code]package com.spring.text;
import java.util.List;
import javax.sql.DataSource;
import org.hibernate.SessionFactory;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Example;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate.support.HibernateDaoSupport;
/**
* Data access object (DAO) for domain model class Login.
* @see com.spring.text.Login
* @author MyEclipse - Hibernate Tools
*/
public class LoginDAO implements Ilogin
{
private HibernateTemplate hibernateTemplate;
//注入sessionFactory
public void setSessionFactory(SessionFactory sessionFactory) {
hibernateTemplate =new HibernateTemplate(sessionFactory);
}
//查找一个用户
public Login find(Integer id) {
// TODO Auto-generated method stub
Login user = (Login) hibernateTemplate.get(Login.class, id);
return user;
}
//添加一个用户
public void insert(Login user) {
// TODO Auto-generated method stub
hibernateTemplate.save(user);
}
//删除一个用户
public void delete(Integer id){
Login user = (Login) hibernateTemplate.get(Login.class, id);
hibernateTemplate.delete(user);
}
}[/code]
[color=red]ILogin[/color]
[code]
package com.spring.text;
public interface Ilogin {
//spring 抽象insert,delete,update,select 为一个接口
//增加一个用户和查找一个用户
public void insert(Login user);
public Login find(Integer id);
}
[/code]
[size=large][color=red]测试类[/color][/size]
package com.spring.text;
import java.sql.SQLException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.*;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class SpringHibernateDemo {
public static void main(String[] args) {
ApplicationContext context = new
FileSystemXmlApplicationContext("beans-config.xml");
LoginDAO login = (LoginDAO) context.getBean("loginDao");
try {
Login user = new Login();
user.setId(1);
user.setName("右面");
user.setAge(10);
login.insert(user);
System.out.println("添加成功了s");
Login usera =login.find(new Integer(5));
System.out.println("查找成功"+usera.getName());
login.delete(new Integer(5));
System.out.println("删除一个用户成功");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}