1.引入依赖。idea注意在build里面添加插件(idea默认不会扫面src里面xml文件)
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
2.配置数据连接,开启mybatis
server:
port: 80
servlet:
context-path: /mybatis
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3307/luckymoney?serverTimezone=UTC
username: root
password: J*7fiFW1$4wB%5rl
jpa:
show-sql: true
mybatis:
mapper-locations: com.zhangchao.mybatis.mapper/UserMapper.xml #resource文件夹下面mapper.xml路径
type-aliases-package: com.zhangchao.mybatis.mapper #mapper.xml文件中resultMap的type或者parameterType会使用自定义的pojo,这里是让mybatis自动扫描自定义pojo包(就是mapper.java)
3.编辑mapper.xml和mapper.java接口文件,注意:两文件同名,xml里面namespace=mapper.java的路径 。xml里面的id=mapper.java里面的接口名称
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhangchao.mybatis.mapper.UserMapper">
<resultMap id="BaseResultMap" type="com.zhangchao.mybatis.Entity.User">
<result column="id" jdbcType="VARCHAR" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="age" jdbcType="INTEGER" property="age" />
<result column="gender" jdbcType="INTEGER" property="gender" />
</resultMap>
<select id="getUserList" resultMap="BaseResultMap">
select * from user
</select>
</mapper>
package com.zhangchao.mybatis.mapper;
import com.zhangchao.mybatis.Entity.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface UserMapper {
List<User> getUserList();
}
4.等待被调用
package com.zhangchao.mybatis.controller;
import com.zhangchao.mybatis.Entity.User;
import com.zhangchao.mybatis.service.serviceImpl.UserServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class UserController {
@Autowired
private UserServiceImpl service;
@PostMapping("/getUserList")
public List<User> getUserList(){
return service.getUserList();
}
}
package com.zhangchao.mybatis.service.serviceImpl;
import com.zhangchao.mybatis.Entity.User;
import com.zhangchao.mybatis.mapper.UserMapper;
import com.zhangchao.mybatis.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper user;
@Override
public List<User> getUserList() {
return user.getUserList();
}
}
代码结构图

1203

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



