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

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

被折叠的 条评论
为什么被折叠?



