博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
001——Spring、Hibernate整合
阅读量:5099 次
发布时间:2019-06-13

本文共 2216 字,大约阅读时间需要 7 分钟。

1.       引入jar包:

2.       根目录下创建spring.xml配置信息: 

3.       建立接口:

package com.sinosoft.manage;

 

public interface UserManage {

  

   public static final String uname="XSY";

  

   public abstract void testHib();

}

4.       实现接口:

package com.sinosoft.manage.impl;

 

import java.util.Iterator;

import java.util.List;

 

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import org.springframework.stereotype.Service;

 

import com.sinosoft.manage.UserManage;

import com.sinosoft.po.User;

 

@Service

public class UserManageImpl extends HibernateDaoSupport implements UserManage {

 

   @Autowired

   public void setSF(SessionFactory sessionFactory){

            //给父类复制

            setSessionFactory(sessionFactory);

   }

  

   @Override

   public void testHib() {

            //获取父类的方法  hibernate中的

            Session session = getSession();

            List list = session.createQuery(" from User").list();

            for (Iterator iterator = list.iterator(); iterator.hasNext();) {

                     User user = (User) iterator.next();

                     System.out.println(user.getUname());

            }

           

            //三个hibernate特有的方法

//                  List users = getHibernateTemplate().find(" from User");

//                  long count = (Long) getHibernateTemplate().find("select count(*) from User where id < ?",6).get(0);

//                  long count1 = (Long) session.createQuery("select count(*) from User where id < ?").setInteger(0, 6).uniqueResult();

 

            User user = new User();

            user.setUname("xsy");

            session.save(user);

            //发生错误信息   事物回退 不进行提交操作

            int i  = 1/0;

   }

}

5.       建立pojo实体对象:

package com.sinosoft.po;

 

public class User {

   private String uname;

   private String pwd;

   private String sex;

   public User() {

      super();

      // TODO Auto-generated constructor stub

   }

 

   public User(String uname, String pwd, String sex) {

      super();

      this.uname = uname;

      this.pwd = pwd;

      this.sex = sex;

   }

 

   //get set 方法

}

6.  在pojo同一级别创建映射文件 TbUser.hbm.xml

7.  测试:

package test;

 

import org.junit.Test;

import org.springframework.beans.factory.annotation.Autowired;

 

import com.sinosoft.manage.UserManage;

import com.sinosoft.manage.impl.UserManageImpl;

 

public class SpringTest {

 

@Autowired

private UserManage userManage = new UserManageImpl();

 

@Test

public void test(){

    userManage.testHib();

}

}

 

转载于:https://www.cnblogs.com/xushuyi/articles/4393113.html

你可能感兴趣的文章
修改登录密码
查看>>
Android中shape的使用
查看>>
(转)解决点击a标签返回页面顶部的问题
查看>>
用join取代not in
查看>>
how to correct spelling?
查看>>
《算法4》回顾(一)
查看>>
Repeater用ul li,一行显示多条数据
查看>>
Java并发(四):并发集合ConcurrentHashMap的源码分析
查看>>
5. Longest Palindromic Substring
查看>>
Maven 三种archetype说明
查看>>
oracle自关联表的子删父变功能实现
查看>>
程序员需要具备的基本技能
查看>>
jsoncpp cmake
查看>>
Web消息主体风格(Message Body Style)
查看>>
eclipse- 智能提示设置
查看>>
回调函数实例——数学计算
查看>>
C#文件路径乱码
查看>>
俞伯牙摔琴谢知音的故事
查看>>
【简单dp】2080->最长公共子序列问题 动态规划
查看>>
数据库隔离级别
查看>>