Mybatis
海绵糖
学习
展开
-
使用注解开发一对多和开启二级缓存
简单的CRUDpublic interface IUserDao {/*** 查询所有用户* @return*/@Select("select * from user")@Results(id="userMap",value= {@Result(id=true,column="id",property="userId"),@Result(column="username",pr...原创 2020-02-12 21:52:33 · 154 阅读 · 0 评论 -
Mybatis二级缓存
二级缓存是 mapper 映射级别的缓存,多个 SqlSession 去操作同一个 Mapper 映射的 sql 语句,多个SqlSession 可以共用二级缓存,二级缓存是跨 SqlSession 的。使用步骤:1.SqlMapConfig.xml中配置(此步骤可省略)`<settings> <!-- 开启二级缓存的支持 --> <setting n...原创 2020-02-12 20:19:06 · 70 阅读 · 0 评论 -
Mybatis一级缓存
一级缓存是 SqlSession 级别的缓存,只要 SqlSession 没有 flush 或 close,它就存在。此处调用findById方法@Test public void cacheTest() throws IOException { inputStream = Resources.getResourceAsStream("SqlMapConfig.xml"...原创 2020-02-12 19:49:18 · 78 阅读 · 0 评论 -
延迟加载
延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载。好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。坏处:因为只有当需要用到数据时,才会进行数据库查询,这样在大批量数据查询时,因为查询工作也要消耗时间,所以可能造成用户等待时间变长,造成用户体验下降。主要是通过 association、co...原创 2020-02-12 14:56:08 · 239 阅读 · 0 评论 -
JNDI
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI服务供应接口(SPI)的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互。目录服务是命名服务的一种自然扩...原创 2020-02-12 11:57:31 · 82 阅读 · 0 评论 -
动态sql
if标签<select id="findByUser" resultType="user" parameterType="user"> select * from user where 1=1 <if test="username!=null and username != '' "> and username like #{username} ...原创 2020-02-11 21:02:54 · 124 阅读 · 0 评论 -
Mybatis使用配置文件实现多表查询
对应的User类和Role类public class User implements Serializable { private Integer id; private String username; private Date birthday; private String sex; private String address; ...原创 2020-02-11 20:13:25 · 415 阅读 · 0 评论 -
进阶SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration&...原创 2020-02-10 21:18:34 · 1228 阅读 · 0 评论 -
资源映射文件实现CRUD示例IUserDaoMapper.xml
注意文件在resources中的路径应该与dao接口一致<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"&...原创 2020-02-10 12:19:52 · 349 阅读 · 0 评论 -
maven依赖添加
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.3</version> <...原创 2020-02-10 12:15:18 · 125 阅读 · 0 评论 -
SqlMapConfig.xml配置
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration&...原创 2020-02-10 12:11:33 · 189 阅读 · 0 评论 -
mybatis简介
mybatis 是一个优秀的基于 java 的持久层框架,它内部封装了 jdbc,使开发者只需要关注 sql 语句本身,而不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。mybatis 通过 xml 或注解的方式将要执行的各种 statement 配置起来,并通过 java 对象和 statement 中sql 的动态参数进行映射生成最终执行的 sql 语句,最后由...原创 2020-02-10 12:03:27 · 140 阅读 · 0 评论