温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

hibernate+spring入门实例

发布时间:2020-08-10 20:42:33 来源:ITPUB博客 阅读:149 作者:kaituozhe366 栏目:编程语言

hibernate+spring基础整合入门

*****************************************
映射数据库表 Users.java

package com.hs.bean;

public class Users implements java.io.Serializable {

private Integer id;
private String name;
private String pwd;

public Users() {
}

public Users(String name, String pwd) {
this.name = name;
this.pwd = pwd;
}

public Integer getId() {
return this.id;
}

public void setId(Integer id) {
this.id = id;
}

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

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

public String getPwd() {
return this.pwd;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}
}

自动生成的users.hbm.xml不做介绍

*********************************************
建立一个操作数据的DAO类 里面包含对数据操作的方法
我在这里建立的是UsersDAO 里面只包含一个添加的方法 就不在这里写出了 这个UsersDAO不是一个接口 自己写一个保存的方法测试就可以

重点:记得你自己的DAO类一定要继承HibernateDaoSupport
因为你要用到getHibernateTemplate()方法 否则你得不到这个方法 这是spring+hiber的精华之一

*********************************************
配置xml
这一步很关键,我先导入的spring,后导入hibernate,在导入hibernate时,我选择把hibernate.cfg.xml的内容全部
都集成到已存在的spring的xml中(我定义的名字是config.xml),然后就不用再单独生成hibernate的xml了.

config.xml



*************所有的类文件都被spring以bean的形式看待*************

************************* hibernate的xml中的一部分内容 **************************
class="org.apache.commons.dbcp.BasicDataSource">

com.microsoft.jdbc.sqlserver.SQLServerDriver


jdbc:microsoft:sqlserver://localhost:1433


sa


******************** hibernate的xml中的另一部分内容 ****************************
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">






org.hibernate.dialect.SQLServerDialect





com/hs/bean/Users.hbm.xml



*********************** 设置事务管理 ************************





********************** 这个就是执行代理的bean **************************
<!-- 代理 -->

<!-- 事务管理 -->



<!-- 要代理的对象 -->



<!-- 使用CGlib 如果代理的不是接口类 必须使用CGlib 我上面代理的是UsersDAO 它不是一个接口 -->

<!-- -->


PROPAGATION_REQUIRED
PROPAGATION_REQUIRED,readOnly



********************** 这个是被代理的bean **************************






******************************************************
定义一个测试类 Test.java

package com.hs.util;

import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import com.hs.bean.*;
import com.hs.bean.UsersDAO;
public class Test {
public Test(){

}
public static void main(String[] args){
//获取config.xml
Resource resource = new ClassPathResource("config.xml");
//解析xml
XmlBeanFactory factory = new XmlBeanFactory(resource);
//通过你在xml中设置的bean的id 得到实际的类
UsersDAO dao = (UsersDAO)factory.getBean("daoProxy");
//添加测试
Users userBean = new Users();
userBean.setName("jingjing");
userBean.setPwd("1987");
//自己定义的保存的方法
dao.save(userBean);
}
}

可以测试了 希望能对你有所帮助

[@more@]
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI