spring结合hibernate的数据库操作
来源:互联网 发布:vb中的sum是什么意思 编辑:程序博客网 时间:2024/05/22 02:27
本例子为普通java项目,不是web项目
思路:
建一个和数据表对应的类取名为User,在其中定义字段。。
然后在同一个位置建对应的User.hbm.xml映射字段
在src下建UserDAOImp接口和UserDao其中是数据库操作
public class UserDao extends HibernateDaoSupport implements UserDaoImpl {
public void insertUser(User user) {
this.getHibernateTemplate().save(user);
}
在spring的配置文件 bean.xml中
配置datasource---->sessionFactory(datasource为参数)-------->配置UserDao(sessionfactory 为参数)
Hibernate的连接,事务的管理等都有配置sessionfactory开始
在测试方法中和正常的一样,加载bean.xml,拿到Userdao ,然后调用Userdao中的数据库操作方法
---------------------------------------------------------------------------------------------------实现如下
package Dao;
public class User {
private String name;
public User() {
}
public User(String name, String password) {
super();
this.name = name;
this.password = password;
}
private String password;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
--------------------------------------------------------------------
<?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="Dao">
<class name="User" table="user">
<id name="name" column="name">
<generator class="assigned" />
</id>
<property name="password" column="password" not-null="true"
/>
</class>
</hibernate-mapping>
-------------------------------------------------------------------
package Dao;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.DataSource;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class UserDao extends HibernateDaoSupport implements UserDaoImpl {
public void insertUser(User user) {
this.getHibernateTemplate().save(user);
}
}
----------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="jdbc" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" > 引入外部文件配置datasource
<property name="locations" value="jdbc.properties"/>
</bean>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>${jdbc.driverClassName}</value>
</property>
<property name="url">
<value>${jdbc.url}</value>
</property>
<property name="username">
<value>${jdbc.username}</value>
</property>
<property name="password">
<value>${jdbc.password}</value>
</property>
</bean>
<bean id="sessionFactory" //配置sessionfactory 注入datasource
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<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>
</props>
</property>
<property name="mappingResources"> //引入hibernate的映射文件
<value>Dao/User.hbm.xml</value>
</property>
</bean>
<bean id="userdao" class="Dao.UserDao">
<property name="sessionFactory" ref="sessionFactory"></property> 注入sessionfactory
</bean>
<!-- <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean>
<bean id="userdao" class="Dao.UserDao">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean> -->
</beans>
---------------------------------------------------------------------------------------------------------------------
package test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import Dao.User;
import Dao.UserDao;
public class Main {
public static void main(String[] args) {
ApplicationContext ac=new ClassPathXmlApplicationContext("bean.xml");
UserDao userdao=(UserDao) ac.getBean("userdao");
User user=new User();
user.setName("xixi");
user.setPassword("1110000");
userdao.insertUser(user);
System.out.println("添加成功!");
}
}
- spring结合hibernate的数据库操作
- Spring结合Hibernate实现数据库事务性操作范例
- 在spring配置DataSource数据源进行数据库操作及spring结合hibernate操作
- spring结合hibernate访问数据库方式的比较
- Spring 与hibernate 的结合
- 数据库varchar2转Clob结合Hibernate操作
- Hibernate和spring结合的OpenSessionInViewFilter
- Spring与Hibernate结合的使用
- Spring的ORM模块(结合Hibernate)
- Spring + Hibernate 结合后不能自动建立数据库表的解决方法
- [讨论]有关Spring+Hibernate更新数据库的操作
- Spring与Hibernate Dao中操作数据库的另外方式
- Spring boot结合Spring-Data-JPA操作MySQL数据库
- Hibernate的数据库操作
- hibernate结合spring框架配置连接数据库以及事务控制
- Webwork2结合Spring, Hibernate
- JSF+HIbernate+Spring结合
- Spring Hibernate结合
- ForkJoin多核并行框架总结
- 【JDK】Java 8的元空间(metaspace)
- Storm应用系列之——最基本的例子
- Activity启动过程全解析
- XML的基础知识
- spring结合hibernate的数据库操作
- git 快速入门 笔记
- 一位资深程序员大牛给予Java初学者的建议
- GYP使用技巧
- c和c++中a[]的见解
- Magento 2中文文档教程
- 打印沙漏
- AttributeMap类详解
- angularJs中表单的全选与反选