JAVAEE实践系列
1. Spring入门程序2. 依赖注入实现方法
3. Bean基于注解方式的装配
4. Mybatis入门程序-根据id查询数据
5. Mybatis入门程序-添加,根据id更新和删除客户信息
6. Mybatis入门程序-根据客户名模糊查询客户信息
Mybatis入门程序-根据客户名模糊查询客户信息
概括
本文包括以下内容:
按照查询的代码对映射文件和测试文件进行修改,实现根据客户名模糊查询客户信息
说明
需要5个文件,这里只需修改映射文件和测试文件的代码,其余的代码在本系列之前的博客:Mybatis入门程序中
一、步骤及截图
①. 修改映射文件中的内容
②. 修改测试文件中的内容
四、输出结果
数据库信息:
输出结果:
五、整体代码
目录结构
1. 映射文件:Mapper包下CustomerMapper.xml
<?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">
<mapper namespace="com.itheima.mapper.CustomerMapper">
<select id="findCustomerByName" parameterType="String" resultType="com.itheima.po.Customer">
select * from t_costomer where username like '%${value}%'
</select>
</mapper>
2. 测试类:Test包下MyBatisTest.java
package com.ithiema.test;
import java.io.InputStream;
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.Test;
import com.itheima.po.Customer;
public class MyBatisTest {
/*
* 根据客户名字模糊查询客户信息
* */
@Test
public void findCustomerByNameTest() throws Exception{
//1. 读取核心配置文件
String resource = "mybatis-config.xml";
//通过输入流读取配置文件
InputStream inputStream = Resources.getResourceAsStream(resource);
//2. 根据配置文件构建sqlSessionFactory;
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//3. 通过sqlSessionFactory创建sqlSession
SqlSession sqlSession = sqlSessionFactory.openSession();
//4. sqlSession执行映射文件中定义的sql,并返回映射结果
List<Customer> customers = sqlSession.selectList("com.itheima.mapper"+".CustomerMapper.findCustomerByName",'高');
//打印输出结果
for(Customer customer : customers) {
System.out.println(customer);
}
//5. 关闭sqlSession
sqlSession.close();
}
}