1、导入相关jar包
org.springframework spring-webmvc 5.2.0.RELEASE junit junit 4.12 org.aspectj aspectjweaver 1.9.4 mysql mysql-connector-java 5.1.47 org.mybatis mybatis 3.5.2 org.springframework spring-jdbc 5.2.0.RELEASE org.mybatis mybatis-spring 2.0.2 org.projectlombok lombok 1.18.22 org.projectlombok lombok 1.18.22
2、数据库
3、UserMapper.xml
select * from users;
4、mybatis-config.xml
5、实体类
package com.massimo.pojo;
import lombok.Data;
@Data
public class Users {
private int id;
private String name;
private String pwd;
}
6、接口
package com.massimo.mapper;
import com.massimo.pojo.Users;
import java.util.List;
public interface UserMapper {
public List selectUser();
}
二、整合
2.1、spring-dao.xml配置文件
编写数据源配置 + sqlSessionFactory + sqlSessionTemplate + 将自己写的实现类,注入到Spring中
2.2、给接口加实现类
package com.massimo.mapper;
import com.massimo.pojo.Users;
import org.mybatis.spring.SqlSessionTemplate;
import java.util.List;
public class UserMapperImpl implements UserMapper {
//我们所有的操作,在原来,都使用sqlSession来执行,现在都使用SqlSessionTemplate;
private SqlSessionTemplate sqlSession;
public void setSqlSession(SqlSessionTemplate sqlSession) {
this.sqlSession = sqlSession;
}
public List selectUser() {
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
return mapper.selectUser();
}
}
2.3、测试
import com.massimo.mapper.UserMapper;
import com.massimo.pojo.Users;
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 org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class MyTest {
@Test
public void test() throws IOException {
ApplicationContext context = new ClassPathXmlApplicationContext("spring-dao.xml");
UserMapper mapper = context.getBean("userMapper", UserMapper.class);
for (Users users : mapper.selectUser()) {
System.out.println(users);
}
}
}
效果:



