一头扎进Mybatis_学习笔记

第一讲 问候MyBatis他大爷


一.简介
MyBatis是持久层的ORM框架,文中用到的版本是MyBatis3.
二.HelloWorld版实现
1.引入mybatis-3.2.8.jar和ojdbc6.jar
2.引入jdbc.properties
3.引入mybatis-config.xml,
4.新建SqlSessionFactoryUtil类,用于获取SqlSession。SqlSession相当于获取的数据库连接。
5.新建数据库表t_student和对应Student类。
6.新建StudentMapper接口及其add(Student student)方法,Mapper层相当于是Dao层,也可以为
StudentDao
7.新建StudentMapper.xml文件,实现StudentMapper接口
8.新建Service层的StudentTestService调用入数据

第二讲 MyBatis项目配置


对于mybatis-config.xml文件的讲解

第一节:environments
MBatis 支持多个环境,可以任意配置

第二节:transactionManager
MyBatis 支持两种类型的事务管理器:JDBC 和 MANAGED(托管);
JDBC:应用程序负责管理数据库连接的生命周期;
MANAGED:由应用服务器负责管理数据库连接的生命周期;(一般商业服务器才有此功能,如
JBOSS,WebLogic)

第三节:dataSource
用来配置数据源;类型type有:UNPOOLED,POOLED,JNDI;
UNPOOLED:没有连接池,每次数据库操作,MyBatis 都会创建一个新的连接,用完后,关闭;适合小并
发项目;
POOLED:用上了连接池;
JNDI:使用应用服务器配置 JNDI 数据源获取数据库连接;

第四节:properties
配置属性

第五节:typeAlias
给类的完成限定名取别名,方便使用;
如果类很多的话,也可以配置成扫描包
<typeAlases>
   <package name="com.java1234.model"/>
</typeAlases>

第六节:mappers
引入映射文件,有两种配置方式
如果类很多的话,也可以配置成扫描包
<mappers>
    <package name="com.java1234.mappers"/>    
</mappers>

第七节:配置 Log4j 日志
引入log4j.properties
引入log4j-1.2.17.jar
在StudentTestService中使用Logger类记录日志

第三讲 使用 XML 配置 SQL 映射器


第一节:INSERT 映射语句
第二节:UPDATE 映射语句
第三节:DELETE 映射语句
第四节:SELECT 映射语句

第四讲 MyBatis 关系映射

第一节:一对一关系实现
学生和地址之间一对一
一对一学生对应地址查询推荐使用
新建AddressMapper.java和它的findById方法。
新建AddressMapper.xml和它的findById方法。
配置student的resultMap,里面增加address的association。
配置StudentMapper和StudentMapper.xml的findStudentWithAddress 

第二节 一对多关系实现
学生和年级一对多
方向1:查询年级下面有多少学生
新建model层Grade类,带List<Student> students.
新建GradeMapper及其方法findById。
新建GradeMapper.xml,注意resultMap中配置collection
StudentMapper和StudentMapper.xml中新建findByGradeId(根据gradeId查找学生)
方向二:查询学生带年级信息
与查询学生带地址信息一样。
已经新建GradeMapper及其方法findById。
在resultMap中增加grade的association。

第三节 多对多关系实现
用两个一对多实现


第五讲 动态SQL

参见MyBaitis02项目
第一节:if 条件
参见student.searchStudents方法


第二节:choose,when 和 otherwise 条件
参见student.searchStudents2方法


第三节:where 条件
参见student.searchStudents3方法
作用:
1,自动加上 where子句; 
2,如果 where 子句以 and 或者 or 开头,则自动删除第一个 and 或者 or;


第四节:trim 条件
参见student.searchStudents4方法
功能和 where 元素类似,提供了前缀,后缀功能,更加灵活;


第五节:foreach 循环
参见student.searchStudents5方法


第六节:set 条件
参见student.updateStudent方法
1,set标签会自动加上 set语句; 
2,可以自动剔除最后一个逗号“,”;

第八讲 Mybatis 与 Spring,SpringMvc整合 


一,Spring 与 SpringMvc 整合 二,Spring 与 Mybatis 整合
1.引入jar包
2.引入web.xml
3.引入applicationContext.xml支持spring。applicationContext.xml中将sqlSessionFactory交给
spring来管理
4.引入mybatis-config.xml支持mybatis
5.引入spring-mvc.xml支持springmvc
6.引入log4j.properties和对应log4jjar包支持log4j
三.分层的包
entity mappers dao controller service service.impl

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值