- 需要导的包
- 测试
org.springframework spring-webmvc 5.2.0.RELEASE org.springframework spring-jdbc 5.3.4 junit junit 4.13.1 org.aspectj aspectjweaver 1.9.2 mysql mysql-connector-java 5.1.35 org.mybatis mybatis 3.5.2 org.mybatis.caches mybatis-ehcache 1.1.0 org.mybatis mybatis-spring 2.0.4
工程包结构
- pojo层
User
public class User {
private String id;
private String name;
private int age;
public User() {
}
public User(String id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User{" +
"id='" + id + ''' +
", name='" + name + ''' +
", age=" + age +
'}';
}
}
- dao层
UserMapper接口
public interface UserMapper {
User getUser(@Param("id") int id);
}
UserMapper.xml
select * from user id=#{id}
UserMapperImpl
public class UserMapperImpl implements UserMapper{
private SqlSessionTemplate sqlSessionTemplate;
public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
this.sqlSessionTemplate = sqlSessionTemplate;
}
public User getUser(int id) {
UserMapper mapper=sqlSessionTemplate.getMapper(UserMapper.class);
return mapper.getUser(id);
}
}
UserMapperImpl2
//通过继承SqlSessionDaoSupport,我们不需要再写SqlSessionTemplate,但是注册bean的时候需要引入SqlSessionFactory
public class UserMapperImpl2 extends SqlSessionDaoSupport implements UserMapper {
public User getUser(int id) {
return getSqlSession().getMapper(UserMapper.class).getUser(id);
}
}
- resource目录
spring-mybatis.xml
mybatis-config.xml
applicationbeans.xml
- 测试类
@Test
public void test(){
ApplicationContext context=new ClassPathXmlApplicationContext("applicationbeans.xml");
UserMapper userMapper=context.getBean("userMapper",UserMapper.class);
User user=userMapper.getUser(1);
System.out.println(user);
}



