1.修改日期格式
在配置文件添加如下内容
#返回json的全局时间格式
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
2.配置逻辑删除
2.1在conf的配置类中添加逻辑删除插件
/**
* 逻辑删除插件
*/
@Bean
public ISqlInjector sqlInjector() {
return new LogicSqlInjector();
}
2.2理清逻辑思路
该属性和数据库的列对应,值为1表示删除(不是真正的删除,只是不显示,不是物理删除),0表示未删除。
2.3实现逻辑删除
为该属性添加逻辑删除注解
@TableLogic
3.测试逻辑删除
3.1理清思路
3.1.1对mapping的设置
通过id进行逻辑删除
@DeleteMapping("{id}")
这种形式,是通过路由传id地址
比如http://localhost:8001/eduservice/2
http://localhost:8001/eduservice/12
就是id在url里
3.1.2接收mapping的参数
@PathVariable String id
@PathVariable 该注解是接收mapping中的参数
后边跟参数类型和名字
String id;
3.2在controller编写完整逻辑删除代码
//2逻辑删除讲师
@DeleteMapping("{id}")
public boolean remocveTeacher(@PathVariable String id){
boolean b = eduTeacherService.removeById(id);
return b;
}
4使用swagger进行测试
4.1在父工程下边创建公共模块
4.2common的pom引入依赖
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<scope>provided </scope>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<scope>provided </scope>
</dependency>
</dependencies>
4.3在common下新建子子模块common_base
创建完子模块后,新建servicebase包,并且创建swagger配置类
4.4配置类的了解
@Configuration
注解是生命这是一个配置类
@EnableSwagger2
是swagger需要添加这个注解
4.5swagger固定内容
package com.neusoft.servicebase;
import com.google.common.base.Predicates;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket webApiConfig(){
return new Docket(DocumentationType.SWAGGER_2)
.groupName("webApi")
.apiInfo(webApiInfo())
.select()
.paths(Predicates.not(PathSelectors.regex("/admin/.*")))
.paths(Predicates.not(PathSelectors.regex("/error.*")))
.build();
}
private ApiInfo webApiInfo(){
return new ApiInfoBuilder()
.title("网站-课程中心API文档")
.description("本文档描述了课程中心微服务接口定义")
.version("1.0")
.contact(new Contact("July", "http://july***.com", "6666@163.com"))
.build();
}
}
4.6service_edu模块引用servicebase中的swagger
service下pom中引入servicebase依赖
4.7让service_edu中的启动类加载servicebase里的配置类(设置扫描规则)
在启动类中添加如下注解
@ComponentScan(basePackages = {“com.neusoft”})
表示扫描com.neusoft下的东西
basePackages = {}参数是一个组数
4.8启动项目进行测试!!!!
访问swagger
http://localhost:8001/swagger-ui.html
找到你想测试的功能进行测试