前言
我一直在想,最小化接口是什么,思来想去还是想按照我理解的来写,什么是最小化,就好比一个页面,用最简单,最少的代码,来获取到数据,甚至不需要装饰。
就好比上面这张图,只需要右边的数据,其他全部都不需要考虑。
实现最小化接口思路
建立一个项目文件,里面用来存放模块
在项目文件中新建模块
如果没有jdk可以下载jdk,我这边用的是17,稳定而且版本较新,不会出现依赖冲突。
因为是一个最小化接口,所以我就建立了一个模块,web模块,将所有的工作全部集中到一块了。
接着在main资源目录下新建一个resoures目录,用于存放资源配置文件,也就是跟数据库对接。
在资源目录下新建一个.yml格式的文件,用于配置连接数据库.一般叫启动配置,application.yml
spring:
datasource:
#数据库账号默认为root
username: root
#数据库密码
password: root
#carbon替换为你的架构名称,用于指定数据库当中的架构。
url: jdbc:mysql://localhost:3306/carbon?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
#启用驼峰命名,由于数据库当中的表的字段名一般会用到下划线比如user_name当启用了驼峰命名在java中定义字段属性就可以谢为userName。
mybatis:
configuration:
map-underscore-to-camel-case: true #启用驼峰命名
接着在java目录下的底层目录下新建一个启动类,一般命名为项目名称加上Application
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MinApplication {
public static void main(String[] args) {
SpringApplication.run(MinApplication.class, args);
System.out.println("启动成功");
}
}
建完以后会爆红,但是没关系,因为我们还没有引入mybatis-plus相关依赖 我们在项目文件找到最顶层的pom.xml文件,用于配置maven的依赖。 如果没有maven可以点击参考这里 配置好了以后就可以直接写入相关依赖 首先引用父依赖可以用于统一版本 写在
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.0</version>
</parent>
直接在dependencies标签当中写入
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.0</version>
</parent>
<dependencies>
<!-- Spring Boot Starter 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- MyBatis-Plus 依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3</version>
</dependency>
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join-boot-starter</artifactId>
<version>1.5.2</version>
</dependency>
<!-- MySQL 驱动 -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!-- Lombok 依赖 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.28</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
引入完以后记得重载一下,
我们的项目初始化就完成了,接着回到启动类启动试一试。
可以看到启动成功了,接着我们就可以运用mybatis-plus的框架来调用数据库内容, 接着可以从数据库中直接生成类
接着我们创建一个mapper,用于编写数据库的增删改查,当然,可以直接用mybatis-plus自带的增删改查方法帮我们省去了写sql语句的麻烦。
里面什么都不用写,因为我们什么都不考虑,只需要拿到数据就行。
然后写一个controller类,用于指定干什么方法,用户可以通过controller类里面的路径来访问到数据
@RestController
@RequestMapping("/test")
public class WmsController {
@Autowired
private WmsMapper wmsMapper;
@RequestMapping
public List<WmsMaterialInfo> list(){
return wmsMapper.selectList(null);
}
}
接着我们在网页测试,默认端口号是8080,使用本地ip即可访问127.0.0.1:8080/test
这样我们就拿到了数据,我们的一个最小化接口也就完成了。
结语
究竟什么才是最小化接口,我也不太明白,但是按照我理解的来看就是运用最少最简洁的代码来写一个接口。但是在中大型项目中,文件一旦多起来,就不得不创建多个模块来分工合作了,不然全部的代码放在一块,根本找不到要写的是哪一块了。java写代码的层次结构虽然复杂并且庞大,但是有利也有弊吧。