package com.itheima.reggie.config;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import com.itheima.reggie.common.JacksonObjectMapper;
import com.itheima.reggie.entity.Employee;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.math.BigInteger;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
import static com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES;
@Slf4j
@Configuration
@EnableSwagger2
@EnableKnife4j
public class WebMvcConfig extends WebMvcConfigurationSupport {
/**
* 设置静态资源映射
* @param registry
*/
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
log.info("开始进行静态资源映射...");
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
registry.addResourceHandler("/backend/**").addResourceLocations("classpath:/backend/");
registry.addResourceHandler("/front/**").addResourceLocations("classpath:/front/");
}
/**
* 扩展mvc框架的消息转换器
* @param converters
*/
@Override
protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
log.info("扩展消息转换器...");
//创建消息转换器对象
MappingJackson2HttpMessageConverter messageConverter = new MappingJackson2HttpMessageConverter();
//设置对象转换器,底层使用Jackson将Java对象转为json
messageConverter.setObjectMapper(new JacksonObjectMapper());
//将上面的消息转换器对象追加到mvc框架的转换器集合中
converters.add(0,messageConverter);
}
@Bean
public Docket createRestApi() {
// 文档类型
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.itheima.reggie.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("瑞吉外卖")
.version("1.0")
.description("瑞吉外卖接口文档")
.build();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于Web开发的在线外卖平台。该系统使用SpringBoot作为后端框架,Vue作为前端框架,实现了用户登录、订单管理、商家管理等功能。适合于学过SpringBoot+vue,会用Redis的人群(大三、大四)。 优化:黑马视频中不曾开发的后端模块都已全部开发完成。
资源推荐
资源详情
资源评论
收起资源包目录
瑞吉外卖源码及工程项目全套+内容优化(vue+springboot+redis+mybatis-plus) (819个子文件)
axure-chrome-extension.crx 31KB
axure-chrome-extension.crx 31KB
app.6d97d7ec.css 319KB
common.css 288KB
index.css 227KB
styles.css 214KB
vant.min.css 141KB
styles.css 83KB
styles.css 68KB
styles.css 57KB
styles.css 55KB
styles.css 54KB
styles.css 47KB
styles.css 47KB
styles.css 45KB
styles.css 43KB
styles.css 38KB
styles.css 35KB
styles.css 31KB
styles.css 31KB
styles.css 30KB
jquery-ui-themes.css 28KB
jquery-ui-themes.css 28KB
default.css 21KB
default.css 21KB
main.css 18KB
shopTable.91c4c27b.css 18KB
styles.css 12KB
demo.css 9KB
sitemap.css 8KB
sitemap.css 8KB
styles.css 8KB
chunk-vendors.37cc3fbd.css 8KB
index.css 7KB
add-order.css 7KB
axure_rp_page.css 6KB
axure_rp_page.css 6KB
404.bed5d3c8.css 5KB
styles.css 5KB
debug.css 5KB
debug.css 5KB
user.css 4KB
styles.css 4KB
page_notes.css 4KB
page_notes.css 4KB
page.css 4KB
styles.css 3KB
address.css 3KB
address-edit.css 3KB
order.css 3KB
dashboard.885c25c2.css 3KB
login.b4c2cc64.css 2KB
styles.css 2KB
login.css 2KB
index.css 2KB
pay-success.css 2KB
login.css 2KB
recordplay.css 2KB
recordplay.css 2KB
no-wify.css 1KB
iconfont.css 776B
previewfonts.css 607B
previewfonts.css 607B
reset.css 502B
reset.css 502B
touch.cur 17KB
touch.cur 17KB
splitter.gif 1KB
splitter.gif 1KB
newwindow.gif 112B
newwindow.gif 112B
note.gif 98B
note.gif 98B
transparent.gif 43B
transparent.gif 43B
.gitignore 474B
nginx-1.16.1.tar.gz 1008KB
点餐-菜单.html 110KB
套餐管理.html 87KB
菜品管理.html 80KB
员工管理.html 47KB
点餐-购物车.html 37KB
订单明细.html 33KB
分类管理.html 32KB
提交订单.html 29KB
新建套餐.html 29KB
我的订单.html 27KB
add.html 24KB
index.html 24KB
新建菜品.html 24KB
add.html 18KB
添加员工.html 18KB
地址管理.html 17KB
个人信息页.html 17KB
外卖流程.html 15KB
demo_index.html 13KB
list.html 10KB
list.html 10KB
add-order.html 9KB
list.html 9KB
共 819 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
Balance丶
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功