zoukankan      html  css  js  c++  java
  • Maven Hibernate

    1、使用maven管理Hibernate实现自动装配jar包

    2、需要在配置文件pom.xml中引入

    如:引入hibaernate5.2.11.Final版本的jar包,需要做如下配置:

             <!-- 添加Hibernate依赖 -->    
    <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.2.11.Final</version>
    </dependency>

    如果你不知到要如何配置各个版本,请参照:

    http://mvnrepository.com/artifact/org.hibernate/hibernate-core
    
    此网站

    配置好后:也有可能会出现你在使用buildServiceReguistry是找不到该方法,
    原因:可能你所需的包没导入【导入CTRL+SHIFT+O】,也可能是你的包就没下载下来,那你可以去你的本地仓库看看,如果没有进行下载。

    导入的包是【import org.hibernate.boot.registry.StandardServiceRegistryBuilder;】

    也有可能是版本4之后的Hibernate中buildServiceReguistry()方法被替换了。
    解决方法:

    1)版本导入更换为:
    import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
    (2)在版本4及以前中的用法:
    Configuration configuration = new Configuration().configure();
     ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
     SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    (3)在版本5中的用法:
    ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();


    3、完整代码如下:

     

    测试代码如下:
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
    import org.hibernate.cfg.Configuration;
    import org.hibernate.service.ServiceRegistry;
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;
    
    
    public class StudentTest {
        private SessionFactory  sessionFactory;
        private  Session session;
        private Transaction transction;
        @Test
        public void test()
        {
            Students stu=new Students(1,"张三",    "wq","1995年9月1日",    "云南曲靖","15709618888");
            //                Students(int sid, String name, String gender, String birthday, String address, String tel);
            session.save(stu);
        }
        
        @Before
        public void init()
        {
            Configuration config=new Configuration().configure();
            //ServiceRegistry serviceRegistry=new StandardServiceRegistryBuilder().applySettting(config.getProperties()).buildServiceRegistry();
            //这是4及以前的用法
            //ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
    ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(config.getProperties()).build(); session= sessionFactory.openSession();//会话对象 transction=session.beginTransaction();//开启事务 } @After public void distort() { transction.commit();//提交事务 session.close();//关闭session会话 sessionFactory.close();//关闭会话工厂 } }
  • 相关阅读:
    StringTokenizer类的使用
    ResultSet相关ResultSetMetaData详细
    jdbcTemplate 获取数据表结构
    关于数组和List之间相互转换的方法
    cat ,more, Less区别
    落地数据和不落地数据
    eclipse代码格式化
    如何修改word的项目编号
    .Net配置文件——反射+配置文件存储类型实例
    unix mkdir命令的使用方法
  • 原文地址:https://www.cnblogs.com/ywf520/p/7528964.html
Copyright © 2011-2022 走看看