关于Hibernate的相关配置

对于Hibernate的相关配置:

1.先把jar包导入到classpath下,再增加相应数据库的jar包,(mysql或者oracle的)


2.在src下新建hibernate.cfg.xml文件,这个是hibernate的核心的配置文件。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
         "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory><!-- 配置数据源的地方 -->
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.url">oracle:jdbc:thin:@localhost:1521:
orcl(自己数据库的名字)</property>
<property name="connection.username">scott</property>
<property name="connection.password">tiger</property>

</session-factory>
</hibernate-configuration>
       

 3.对数据库的表进行映射:

(1)创建实体类。

(2)利用xml文件说明数据库中表相关参数和实体类的对应关系。(我这里用的是oracle数据库)

<hibernate-mapping>
<!-- 说明Emp实体类对应于scott.emp表 -->
<class name="com.example.hibernate.entity.Emp" table="emp" catalog="scott">
<!-- id代表主键是哪个列,对应于哪个属性 name代表属性名,column对应于字段名
这句话说明emp表的主键为empno 且对应于 Emp类的eno属性
-->
<id name="eno" column="empno">
<!-- 主键生成策略, increment代表在新增数据的时候主键最大值+1作为新纪录的编号 -->
<generator class="incrment"></generator>
</id>
<!-- 除了主键 其他字段均使用property标签进行映射 -->
<property name="ename" column="ename"></property>
<property name="job" column="job"></property>
<property name="mgr" column="mgr"></property>
<property name="hiredate" column="hiredate"></property>
<property name="salary" column="sal"></property>
<property name="comm" column="comm"></property>
<property name="deptno" column="deptno"></property>
</class>
</hibernate-mapping>

(3)在hibernate.cfg.xml文件中进行注册。

<mapping resource="com/example/hibernate/entity/emp.hbm.xml"/> (这里只是我个人的映射文件,具体情况依据 自己的而定)。

4.利用Hibernate 完成数据的CRUD(增删改查)操作。

(1)加载hibernate.cfg.xml配置文件

Configuration conf = new Configuration().configure();

(2)创建SessionFactory, SessionFacory相当于创建数据库操作对象(Session)的工厂

SessionFactory sf = conf.buildSessionFactory();

    (3)利用SessionFactory(会话工厂)创建Session(会话)对象.

Session session = sf.openSession();

  (4)进行数据的crud(增删改查)。

这里需要注意的是:

将sql语句转为hql语句,只需要遵循以下三点基本:

1.大多数情况下,不用使用select * ;

2.hql中出现的表名对应于实体类名,并且区分大小写。

3.出现的字段名对应于实体类中的属性名。

(5)关闭结果。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无殇的无奈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值