MyBatis第五篇:注解及缓存

本文详细介绍了MyBatis中的注解使用方法,包括UserMapper.java的注解配置以及对应的测试操作。同时,深入讲解了MyBatis的一级缓存和二级缓存机制,一级缓存为sqlSession级别,二级缓存则可在不同sqlSession间共享,并提供了配置二级缓存的步骤,包括在sqlMapConfig.xml中的设置、pojo实现序列化接口、在UserMap.xml中启用二级缓存等。

9. 注解

1. UserMapper.java

package com.yong.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Select;

import com.yong.po.User;

public interface UserMapper {

	void insert(User user);
	
	User queryUserById(int id);
	
	//${}拼接符,当参数传递的是java简单类型的时候,花括号中的内容只能是:value
	@Select("select * from user where username like '%${value}%'")
	List<User> queryUserByUsernameUseAnnotation(String username);
}
 

2. 测试

package com.yong.test;

import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;

import com.yong.mapper.UserMapper;
import com.yong.po.User;

public class MyBatisTest03 {

	private SqlSessionFactory sqlSessionFactory = null;

	@Before
	public void initSqlSessionFactory() throws IOException {

		// 加载MyBatis主配置文件
		InputStream inputStream = Resources.getResourceAsStream("sqlMapConfig.xml");

		// 读取配置文件
		SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();

		// sqlSessionFactory对象:是MyBatis框架的核心对象,一个应用只需要一个(单例设计模式应用)
		sqlSessionFactory = sqlSessionFactoryBuilder.build(inputStream);

	}

	@Test
	public void insert() throws IOException {
		
		SqlSession sqlSession = sqlSessionFactory.openSession(true);

		// 使用sqlSession对象,获取mapper代理对象
			// getMapper方法:获取mapper代理对象
			// 参数:mapper接口class
		Us
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值