Hibernate学习笔记(Hibernate4.2 + SQL server2016)二

HibernateUtil.java

 

package com.spider.util;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder; 

public final class HibernateUtil {    
    
    private HibernateUtil(){}    
    private static SessionFactory sessionFactory;    
    static{        
        
        Configuration cfg = new Configuration();        
        cfg.configure();                
        
        ServiceRegistry  sr = new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry();          sessionFactory = cfg.buildSessionFactory(sr);    
        
    }    
    
    
    public static SessionFactory getSessionFactory() {
        return sessionFactory;    
        
    }    
    
    public static Session getSession(){    
        return sessionFactory.openSession();
        
    }
    
}
 

StudentsTest3   测试类

package hibernate001;

 

import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.criterion.Projections;
import org.junit.Test;
import com.spider.util.HibernateUtil;
import com.trash.Sqtudent2;

 

public class StudentsTest3 {
 
    
    private Session session   =  HibernateUtil.getSession();
     

  
    @Test
    public void testCriteriaRows() {
        
        
        Criteria  criteria2 = session.createCriteria(Sqtudent2.class);
        criteria2.setProjection(Projections.rowCount());
        long  rowcount   =  (long) criteria2.uniqueResult();
                 
            System.out.println("总页数是:     "+rowcount);    
                            
    }
    
    
    @Test
    public void testSQL() {
        
        
        String  sqlstr= "SELECT *   FROM  STUDENT2 where sid = ?  ";
        
         SQLQuery query = session.createSQLQuery(sqlstr);
         
         query.setParameter(0, 14);
         
         query.addEntity(Sqtudent2.class);
        
         List  list = query.list();
         
            System.out.println("list:     "+list);    
             
       
    }
    
    
    
}
 

 

 

 

teacherTest.java

package com.spider.test;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.spider.domain.Student;
import com.spider.domain.Teacher;
import com.spider.util.HibernateUtil;

public class teacherTest {

    
    private Session session =HibernateUtil.getSession();
    
    private  Transaction transaction;
    
    @After
    public void destory() {

     
        transaction.commit();
         
        session.close();
         
         
    }
    
    @Test
    public void testSaveStudent() {
        
        transaction  = session.beginTransaction();
        
        Teacher t1 = new Teacher("王五","女",26,new Date());
        session.save(t1);
        
    }

}
 

http://howtodoinjava.com/hibernate/hibernate-one-to-one-mapping-using-annotations/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值