文档章节

Hibernate好难,让我们来自动导入吧

suzhenwin
 suzhenwin
发布于 2015/04/23 23:22
字数 626
阅读 17
收藏 0

Hibernate这个怪物级的框架,一般都会把没接触过ORM的人吓的不轻

 

下面主要介绍如何自动从数据库中创建我们需要使用的POD类

 

第一步,下载hibernate的库包,Copy hibernate 依赖的jar文件,如果你不知道那些要拷过来,那你就都拷过来。

 

第二步,非常简单,动动手指,让我们连接下Mysql数据库【其余SQL同理】

 

第三步,填一下用户名密码,选一下你要处理的数据库,也是非常简单,我这里做例子,用的是mysql这个database

 

第四步,在src目录下创建一个hibernate.cfg.xml

然后把配置hibernate ,下面这一长串的配置,copy一下,放到这个xml文件里

 

注:这里还缺了一个hibernate.connection.username字段,表示你的数据库连接用户名,与其对应的还有一个password属性

第五步,看看图~动动手指头~左击,右击,搞定!

第六步,等待生成代码ing

看,到这里的时候,所有的表都搞定了,是不是简单?

第七步,好紧张啊,生成了这么多表映射文件,整理下,将用不到的,或者没必要的,都移除。

看,是不是一下子清爽了很多?

第八步,喂,别忘了把hibernate.cfg.xml里面的红色的那些“字符串”删掉

然后,你应该和我下面的这个差不多

第九步,爽完了,接下来到了愉快的包教不包会的写代码阶段了

Ctrl+C ,Ctrl+V,                   ok 完事儿了

 

/**
 * Main
 */
public class Main {

    public static void main(String[] args) {
        //读取XML文件,并且解析映射关系,更新数据库结构【如果配置了autoDDL为update等】
        Configuration cfg = new Configuration().configure();
        //用Configuration来创建一个工厂,注意这是很"重"的,频繁创建销毁,很慢
        SessionFactory factory = cfg.buildSessionFactory();
        //
        Session session = null;
        Transaction transaction = null;
        try {
            session = factory.openSession();
            transaction = session.beginTransaction();
            //可以不管这个IDE警告,因为我们就是用MySqlUserEntity来查询的
            //此时可以确保是安全的
            List<MySqlUserEntity> users = session.createQuery("from MySqlUserEntity ").list();
            //为了做个测试,直接输出用户名吧
            for (MySqlUserEntity usr : users) {
                System.out.println("usr Name --> " + usr.getUser());
            }
            transaction.commit();
        } catch (Exception err) {
            if (transaction != null && !transaction.wasCommitted()) {
                transaction.rollback();
            }
            System.out.println(err.getMessage());
            throw err;
        } finally {
            if (session != null) {
                //程序结束,关闭这个session
                session.close();
            }
            //主程序结束,关闭factory
            factory.close();
        }
    }
}

 

最后,完成了!

看我们的输出结果,是把数据库user表的所有用户名都输出了。

© 著作权归作者所有

共有 人打赏支持
suzhenwin
粉丝 1
博文 4
码字总数 1249
作品 0
南通
私信 提问
Hibernate初体验及简单错误排除

Hibernate是什么,有多少好处,想必查找这类博文的都知道,所以就不多说了。下面是我对Hibernate简单使用的一个小小的总结。与君(主要是刚入门的)共勉吧! 创建的顺序 创建Hibernate的配置...

郭璞
2016/05/19
0
0
eclipse中hibernate和mybatis中xml配置文件的没有标签提醒解决方法

  当我们使用eclipse编写Mybatis或hibernate的xml文件时,面对众多标签的配置文件,却没有自动提醒,对于工作和学习都十分不方便。   之所以没有自动提醒,是因为dtd文件没有加载成功。 ...

宇的季节
2017/11/21
0
0
jPA自动创建数据库表的一些配置

jPA自动创建数据库表的一些配置 hibernate.cfg.xml 中hibernate.hbm2ddl.auto配置节点如下: <properties> <property name="hibernate.show_sql" value="true" /> <property name="hibernate......

风中帆
2015/12/26
443
0
Hibernate主键生成策略strategy = "increment"报错违反唯一性约束

背景 2018年7月份,系统爆出一条bug。就是支持Excel导入的功能,导入第二次同模板不同数据时,报错,违反唯一性约束。就死活用不了了,重启Tomcat才能恢复使用。但只能到一个文件 分析 需要重...

沫沫金
07/23
0
0
eclipse上依据hibernate tools逆向生成PO(Domain Object)的过程

使用eclipse开发一个基于java的maven的web项目,业务逻辑基于spring实现,数据库服务器采用mysql。我们项目的业务逻辑(面向对象)和数据(关系型数据库)之间,依靠hibernate进行映射、对应...

pandamonica
2017/12/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

jquery通过id显示隐藏

var $div3 = $('#div3'); 显示 $div3.show(); 隐藏 $div3.hide();

yan_liu
今天
3
0
《乱世佳人》读书笔记及相关感悟3900字

《乱世佳人》读书笔记及相关感悟3900字: 之前一直听「荔枝」,后来不知怎的转向了「喜马拉雅」,一听就是三年。上班的时候听房产,买房了以后听装修,兴之所至时听旅行,分手后听亲密关系,...

原创小博客
今天
3
0
大数据教程(9.6)map端join实现

上一篇文章讲了mapreduce配合实现join,本节博主将讲述在map端的join实现; 一、需求 实现两个“表”的join操作,其中一个表数据量小,一个表很大,这种场景在实际中非常常见,比如“订单日志...

em_aaron
今天
3
0
cookie与session详解

session与cookie是什么? session与cookie属于一种会话控制技术.常用在身份识别,登录验证,数据传输等.举个例子,就像我们去超市买东西结账的时候,我们要拿出我们的会员卡才会获取优惠.这时...

士兵7
今天
3
0
十万个为什么之为什么大家都说dubbo

Dubbo是什么? 使用背景 dubbo为什么这么流行, 为什么大家都这么喜欢用dubbo; 通过了解分布式开发了解到, 为适应访问量暴增,业务拆分后, 子应用部署在多台服务器上,而多台服务器通过可以通过d...

尾生
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部