hibernate配置IDEA
Posted nirvana · rebirth
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate配置IDEA相关的知识,希望对你有一定的参考价值。
下载所需资源
- 在官网下载hibernate
链接:http://hibernate.org/orm/
- 下载log4j2
链接:http://logging.apache.org/log4j/2.x/download.html
配置项目
-
引入jar包【hibernate、jdbc、log4j】
按照同样方法引入jdbc、log4j
-
在src目录下创建hibernate.cfg.xml
填写如下内容
头部可在hibernate-core的jar包下,org.hibernate中找到
-
创建数据库表T_USER
-
在src下建立pojo包,并创建两个文件。注意,这两个文件必须在同级目录
User.java内容如下:
User.hbm.xml内容如下:
-
在hibernate.cfg.xml中添加映射文件
使用
-
编写测试代码
-
查看运行结果
成功!
题外话
-
java 日期类Date插入mysql数据库时间少了一天,如果设定为
serverTimezone=UTC
,会比中国时间早8个小时,可以改成serverTimezone=Asia/Shanghai
附带: mysql url 重要参数说明
参数名字 参数说明 缺省值 user 数据库用户名(用于连接数据库) password 用户密码(用于连接数据库) useUnicode 是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true false characterEncoding 当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk false autoReconnect 当数据库连接异常中断时,是否自动重新连接? false autoReconnectForPools 是否使用针对数据库连接池的重连策略 false failOverReadOnly 自动重连成功后,连接是否设置为只读? true maxReconnects autoReconnect设置为true时,重试连接的次数 3 initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒 2 connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本 0 socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时 0 -
如果在hbm.xml中table报红
不影响程序运行
如果没报红,无论写什么都是绿色,没有进行检测,那么添加Facets即可。
报红解决方案:
按照提示点击
Data Source选上,点击OK,即可。
以上是关于hibernate配置IDEA的主要内容,如果未能解决你的问题,请参考以下文章