第3.114课 上课 MyBatis3入门, MyBatis3基于xml实现CRU…

3_114

MyBatis3入门

 SqlSessionFactory

  它底层封装了数据源

  它对应一个数据库(一个应用只对应一个SqlSessionFactory)

  常用方法

   openSession()打开SqlSession

 SqlSession

  它底层封装了数据库连接

  用它来完成所有持久化操作

  用完就要关闭

  默认事务是开启的

  常用方法

   insert()插入数据

   update()修改数据

   delete()删除数据

   selectOne()查询一条

   selectList()查询多条返回List

   selectMap()查询多条返回Map

   getMapper()获取数据访问接口代理对象

   commit()提交事务

   rollback()回滚事务

   事务

(commit()提交事务rollback()回滚事务)

 mybatis-config.xml文件配置说明

  properties配置属性

<properties resource="jdbc.properties"></properties>

  settings配置全局的设置信息

   setting

<!-- 全局资源配置 -->

<settings>

<!-- 开启缓存 -->

<setting name="cacheEnabled" value="true"/>

<!-- 开启延迟加载 -->

<setting name="lazyLoadingEnabled" value="true"/>

<!-- 设置需要的时候才延迟加载 -->

<setting name="aggressiveLazyLoading" value="false"/>

</settings>

  typeAliases配置类型别名

   typeAlias

<typeAliases>

<!-- 给数据传输类起一个别名 (type:数据传输类 alias:别名) -->

<typeAlias type="com.yayadou.domain.Province" alias="province"/>

</typeAliases>

  environment配置环境

   transactionManager配置事务管理器

    JDBC(有事务)

    MANAGED(托管)

   dataSource配置数据源

    type类型

     JNDI(使用JNDI实现的数据源)

     POOLED(使用连接池的数据源)

     UNPOOLED(不使用连接池的数据源)

    driver数据库驱动

    url连接数据库url

    username连接数据库用户名

    password连接数据库密码

  mappers配置XxxMapper.xml数据访问文件

   mapper

<mapper resource="com/yayadou/domain/ProvinceMapper.xml"/>

 MyBatis3的XxxMapper.xml文件配置

  <insert/>添加

 

  <update/>修改

  <delete/>删除

  <select/>查询

 

 

  <sql/>通用sql语句片断

  <resultMap/> 结果集映射ResultSet Mapping

resultMap 元素是 MyBatis 中最重要最强大的元素。它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情。 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码。 ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系。

 

 MyBatis3日志配置操作

DEBUG: ==> Preparing: insert into province(name) values(?)

  log4j.properties放到src目录下

MyBatis3基于xml实现CRUD操作

 <insert>元素

1.在xxx-mapping.xml文件定义insert元素。

说明:执行完插入操作之后,会把最新的ID添加到Province对象的provinceId属性。

 

2.调用SqlSession对象的的delete方法。

因此,这里可以调用Province对象的getProvinceId()方法直接获取最新的ID。

  <selectKey>获取生成的主键值

 <update>元素

1.在xxx-mapping.xml文件定义update元素。

 

2.调用SqlSession对象的update方法。

 <delete>元素

1.在xxx-mapping.xml文件定义delete元素。

 

2.调用SqlSession对象的delete方法。

 <select>元素

1.在xxx-mapping.xml文件定义select元素。

说明:

resultType:指定返回的类型,能自动映射就用它;

resultMap:指定查询出来的数据ResultSet该如何映射, 指定<resultMap/>的id属性值;

 

 

2.调用SqlSession对象的selectXxx方法。

selectOne:返回单条结果数据;

selectList:返回一组结果的List集合;

selectMap:将一个List结果集转换成Map集合,需要指定一个对象中的一个属性作为Key;

select:该方法没有返回值,它是通过ResultHandler对象获取每条数据;

 

 <ResultMap>元素

posted on 2018-01-31 23:36  東風★破  阅读(144)  评论(0)    收藏  举报

导航