Java项目实战3——整合springdoc

简单的增删改查,整合springdoc
@TOC

服务编写

service:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package com.hao.service;

import com.hao.mapper.UserMapper;
import com.hao.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {
@Autowired
private UserMapper userMapper;

public User get(String id){
return userMapper.selectById(id);
}
public List<User> queryAll() {
return userMapper.selectList(null);
}

//add
public void create(User user){
userMapper.insert(user);
}
//update
public void update(User user){
userMapper.updateById(user);
}
//删
public void delete(String id){
userMapper.deleteById(id);
}
//批量删
public void batchDelete(List<String> ids){
userMapper.deleteBatchIds(ids);
}


}
JAVA

整合springdoc

pom:

1
2
3
4
5
6
<!-- springdoc -->
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.6.9</version>
</dependency>
XML

配置类,在config包下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.hao.config;

import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class OpenApiConfig {

@Bean
public OpenAPI springOpenAPI() {
return new OpenAPI()
.info(new Info()
.title("SpringDoc API Test")
.description("SpringDoc Simple Application Test")
.version("0.0.1"));
}

}
JAVA

接口编写

controller

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package com.hao.controller;

import com.hao.model.User;
import com.hao.service.UserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;

@Controller
@RequestMapping("user")
@Tag(name = "UserController",description = "用户管理")
public class UserController {
@Autowired
private UserService userService;

@GetMapping("/list")
@ResponseBody
@Operation(summary = "查询用户列表")
public List<User> getUserList(){
return userService.queryAll();
}

@GetMapping("/get")
@ResponseBody
@Operation(summary = "通过ID获取用户")
public User get(String id){
return userService.get(id);
}

@PostMapping("/create")
@ResponseBody
@Operation(summary = "新建用户")
public void create(User user){
userService.create(user);
}
@PostMapping("/update")
@Operation(summary = "更新用户")
@ResponseBody
public void update(User user){
userService.update(user);
}

@PostMapping("/delete")
@ResponseBody
@Operation(summary = "删除用户")
public void delete(String id){
userService.delete(id);
}

@PostMapping("/batchDelete")
@ResponseBody
@Operation(summary = "批量删除")
public void batchDelete(List<String> ids){
userService.batchDelete(ids);
}
}

JAVA

启动

启动成功。
浏览器输入:http://127.0.0.1:9080/swagger-ui/index.html

即可测试。

一个小问题

高版本的open-jdk如18,在idea环境下,控制台的日志打印,所有的中文均为乱码,怎么设置都不行。
所以暂时还是切回到jdk1.8。😊


Java项目实战3——整合springdoc
https://leehoward.cn/2022/01/12/Java项目实战3——整合springdoc/
作者
lihao
发布于
2022年1月12日
许可协议