JAVA入门 - SpringBoot+mybatis 实现一个接口
本文仅作为 JAVA入门 通过 SpringBoot+mybatis 实现第一个接口 的记录
1、环境搭建
环境搭建相关非本文重点,不做具体叙述
- 安装JAVA环境
- 安装MySQL并运行
- 下载IntelliJ IDEA
- 配置maven
- 下载maven
- 编辑
conf/settings.xml
配置maven
本地仓库路径 - IntelliJ IDEA 中设置 maven 相关路径
2、新建项目
- 选择
Spring Initializr
,选择对应的Java版本
- 添加依赖,此步也可以跳过,在
pom.xml
文件中添加 pom.xml
文件中 添加依赖 在pom.xml
文件,dependencies
中,添加依赖(上一步添加的依赖也在这里)
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
3、创建数据库数据
关于数据库与数据表的相关操作,非本文重点,本文以t_user
数据表为例,数据如下
4、CODE
创建如下文件
application.yml
文件是更改的文件后缀

配置database和mybatis
- 在
application.yml
中配置数据库和mybatis
server:
prot:8080
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/smart_feeder?useUnicode=true&characterEncoding=UTF-8
username: root
password: Test1234
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.orangeal.demo.entity
configuration:
map-underscore-to-camel-case: true
- 启动类
DemoApplication
中使用@MapperScan
@MapperScan
可以扫描对应目录下的所有mapper
@MapperScan("com.orangeal.demo.mapper")
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
entity
TUserInfo
中 加上所需字段
@Data
public class TUserInfo {
Long id;
String name;
String email;
}
mapper
TUserMapper
定义接口
public interface TUserMapper {
List<TUserInfo> getUserList();
}
TUserMapper.xml
中实现接口namespace
对应具体mapper接口,id
对应方法名resultType
对应返回类型
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.orangeal.demo.mapper.TUserMapper">
<select id="getUserList" resultType="com.orangeal.demo.entity.TUserInfo">
select id,email,name from t_user
</select>
</mapper>
service
TUserService
中定义接口
public interface TUserService {
List<TUserInfo> getUserList();
}
TUserServceImpl
实现接口
@Service
public class TUserServceImpl implements TUserService {
@Resource
private TUserMapper mapper;
@Override
public List<TUserInfo> getUserList() {
return mapper.getUserList();
}
}
controller
TUserController
中 定义接口地址以及请求方式,最后调用service实现
@RestController
@RequestMapping("/api/userList")
public class TUserController {
@Autowired
private TUserService service;
@GetMapping
public List<TUserInfo> getUserList() {
return service.getUserList();
}
}
调试
启动项目之后,通过Postman
或者浏览器 调试
转载自:https://juejin.cn/post/7043980668358885383