MyBatis笔记
文章平均质量分 72
deargua
学下吧,软件工程师
展开
-
MyBatis-逆向工程
所谓的逆向工程是指:通过数据库的表生成需要的mapper.java,mapper.xml,POJO代码。jar包下载地址:http://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-coreGithub地址:https://github.com/mybatis/generator原创 2016-06-27 21:03:59 · 445 阅读 · 0 评论 -
MyBatis-一级缓存
MyBatis-一级缓存原创 2016-06-19 22:32:19 · 319 阅读 · 0 评论 -
MyBatis-延迟加载
MyBatis-延迟加载原创 2016-06-19 22:31:40 · 318 阅读 · 0 评论 -
MyBatis-高级映射:多对多
数据库表的实现请参照:MyBatis-高级映射:一对一1.resultType和resultMap的选择其实很多查询结果都是可以用resultType来实现,只有当想实现某个查询结果中包含一个子list,即出现list嵌套时,才会用到resultMap。resutType的方法相对比较简单,建议除非有嵌套list需求,其他都使用resultType方式。以下是用resultMap方式进行多原创 2016-06-19 21:59:28 · 553 阅读 · 0 评论 -
MyBatis-高级映射:一对一
本篇将以一个简单的商品交易过程中的操作为实例,讲解MyBatis高级映射,即一对一,一对多,多对多的处理。1.高级映射用到的数据库表user表+----------+-------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra原创 2016-06-19 11:21:10 · 539 阅读 · 0 评论 -
MyBatis-高级映射:一对多
数据库表,请参照 MyBatis-高级映射之一对一 。这里展示的一对多的例子:1对1:从order表中查询对应的User信息1对多:从order表中查询对应orderdetail内容。1.原生sql语句:mysql> select `order`.*, user.username, orderdetail.id, orderdetail.item_num from `orde原创 2016-06-19 17:19:23 · 448 阅读 · 0 评论 -
MyBatis-输出映射
1.resultType上一篇中讲过可以自己封装任意的类型来作为PO对象,那么查询的时候,MyBatis返回结果会去mysql数据表中,或者sql语句的别名中查找列名。若找到了和resultType中任意一个属性相同的列名,则创建PO对象,将查找到的列名对应的值,赋值到resultType中对应的属性中。若找不到PO对象属性名和数据表中的列名对应的内容,则不会创建PO对象。2.result原创 2016-06-17 23:07:43 · 697 阅读 · 0 评论 -
Mybatis-Mapper代理
1.Hibernate和Mybatis简单对比Hibernate适用于需求变化不大的中小型项目,比如:后台管理系统,ERP,OA系统等。适用于数据库变更频繁,或者要求支持多数据库的情况。出现bug调试时,要求技术人员对Hibernate有较深的立即。Mybatis:适用于需求变化较多的项目,比如新出的系统等。适合于性能要求,数据库单一的情况。框架简单,出问题好修原创 2016-06-14 23:07:45 · 730 阅读 · 0 评论 -
MyBatis-动态SQL
1.where,if用法如下面动态select的写法,当where句中的if判断的是参数中给的数据,而不是数据库中的值。若条件不成立的时候,则忽略where语句。注意下面子句中使用了 and name like 这里的and会由MyBatis进行自动判断,若只有一个子句会自动被去掉。 select * from student where name like "%${name原创 2016-06-18 11:24:24 · 402 阅读 · 0 评论 -
MyBatis-输入输出包装
VO(value object) 值对象 通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.个人觉得同DTO(数据传输对象),在web上传递。PO(persistant object) 持久对象 在o/r映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用原创 2016-06-15 23:42:11 · 873 阅读 · 0 评论 -
MyBatis-高级配置
1.properties可以将数据库配置信息配置到db.properties中,然后再引用。注意properties中的名字尽量配置有独特性,防止跟其他数据名重名。jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/highjdbc.username=rootjdbc.password=1235s原创 2016-06-15 23:27:59 · 386 阅读 · 0 评论 -
MyBatis-环境配置以及查询
1.mybatis官网https://github.com/mybatishttps://github.com/mybatis/mybatis-3/releases2.mybatis配置文件、代码举例需要有两个配置文件:1)sqlMapConfig.xml配置数据源,事务等mybatis运行环境,该xml文件名可以自己定义。2)xxxmapper.xml配置文件,配置对原创 2016-06-13 22:31:51 · 1067 阅读 · 0 评论 -
MyBatis-数据修改
update,insert,delete操作基础配置请参照上一篇文章-> MyBatis-环境配置以及查询这里仅列出变更的代码部分。studentMapper.xml<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-m原创 2016-06-14 21:05:59 · 1888 阅读 · 0 评论 -
MyBatis-整合Spring
1.要点:1)利用Spring的容器通过单例的方式管理SqlSessionFactory。2)Spring和MyBatis整合生成代理对象,使用sqlSessionFactory创建SqlSession3)持久层的mapper需要由Spring进行管理。2.代码结构该章节是接续前面的例子继续学习,下面db.properties,log4j.properteis,User.java同前面章节相同,不在重复。需要加入MyBatis,MyBatis-Spring,Spring的jar包,这里lib中的内原创 2016-06-19 22:35:52 · 381 阅读 · 0 评论 -
MyBatis-二级缓存
MyBatis-二级缓存原创 2016-06-19 22:35:19 · 249 阅读 · 0 评论