hibernate 开发流程

简介:

   4.1 导包

   4.2 配置文件:

文件名:hibernate.cfg.xml

位置:src下

<session-factory>

<!-- 添加配置信息:数据库连接参数 -->

<property name="hibernate.connection.driver_class">oracle.jdbc.OracleDriver</property>

<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>

<property name="hibernate.connection.username">hr</property>

<property name="hibernate.connection.password">hr</property>

<!-- 添加配置信息:hibernate 自身属性

dialect :方言,指定数据类型,hibernate可以针对不同的数据库做出相应的优化

 -->

<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>

</session-factory>

4.3 ORM 搭建:

*搭建映射文件,实现对Object 和RelationShip的映射。

文件名:任意        xx.hbm.xml

位置:任意

<!-- 

映射文件,映射点:

1.将实体类和库表映射起来

2.实体中的属性和表中的列

 -->

<class  name="com.c40.entity.User" table="t_user40">

<id name="id" column="t_id" type="java.lang.Integer">

<!-- 

主键生成器:负责在 插入数据时,维护主键,保证主键唯一

increment:递增

 -->

<generator class="increment"></generator>

</id>

<property name="name" column="t_name" type="java.lang.String"></property>

<property name="age" column="t_age" type="java.lang.Integer"></property>

</class>

4.4  在配置文件 注册 映射文件

<!-- 注册映射文件 -->

<mapping resource="com/c40/config/user.hbm.xml"/>

4.5 API

      *Configuration:负责加载所有配置,并构建SessionFactory

  *SessionFactory:Session工厂,负责生产Session

  *Session  : 等价于JDBC中的Connection,可以进行CURD

    查询:User user=(User)session.get(User.class,1);//查询ID为1的用户数据

    插入://开启事务

Transaction tx=session.beginTransaction();

User user=new User(null,"liuxuhui",20);

session.save(user);//插入数据

//提交事务

tx.commit();

删除://开启事务

Transaction tx=session.beginTransaction();

User user=(User)session.get(User.class,4);

session.delete(user);//删除

//提交事务

tx.commit();

修改://开启事务

Transaction tx=session.beginTransaction();

User user=(User)session.get(User.class,1);

user.setAge(21);

user.setName("luzhenw");

session.update(user);//更新

//提交事务

tx.commit();

事务控制:

//开启事务

Transaction tx=session.beginTransaction();

//提交事务

tx.commit();

//回滚事务

tx.rollback();

关闭资源:

session.close();

本文转自12691034博客51CTO博客,原文链接http://blog.51cto.com/12701034/1929246如需转载请自行联系原作者

笑容掩饰爱
相关文章
|
Java 数据库连接 数据库
MyBatis-Plus——逆向工程之AutoGenerator代码生成器
MyBatis-Plus——逆向工程之AutoGenerator代码生成器
MyBatis-Plus——逆向工程之AutoGenerator代码生成器
|
6月前
|
SQL Java 关系型数据库
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能
257 0
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能
|
11月前
|
XML Java 数据库连接
Mybatis基础(上)
Mybatis基础(上)
|
11月前
|
SQL 缓存 Java
Mybatis基础(下)
Mybatis基础(下)
|
Java 数据库连接 mybatis
mybatis自动生成代码
mybatis自动生成代码
|
SQL Java 关系型数据库
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能(三)
3.3Lambda IService中还提供了Lambda功能来简化我们的复杂查询及更新功能。我们通过两个案例来学习一下。 案例一:实现一个根据复杂条件查询用户的接口,查询条件如下:
164 0
|
SQL Java 数据库连接
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能(一)
刚才的案例中都是以id为条件的简单CRUD,一些复杂条件的SQL语句就要用到一些更高级的功能了。
284 0
|
SQL
【MyBatis-Plus】快速精通Mybatis-plus框架—核心功能(二)
3.2基本用法 由于Service中经常需要定义与业务有关的自定义方法,因此我们不能直接使用IService,而是自定义Service接口,然后继承IService以拓展方法。
268 0
|
Java 数据库连接 mybatis
Mybatis自动生成代码
Mybatis自动生成代码
|
Java 数据库连接 数据库
搭建MyBatis逆向工程
搭建MyBatis逆向工程
91 0