package com.sam.config;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.sql.DataSource;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.mapper.MapperScannerConfigurer;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import com.sam.interceptor.UserInterceptor;
@SpringBootConfiguration //WebMvcConfigurerAdapter
@MapperScan(basePackages="com.sam.mapper.master",sqlSessionFactoryRef="masterSqlSessionFactoryBean")
public class MyConfig extends WebMvcConfigurationSupport {
/**
* 拦截器配置
*/
public void addInterceptors(InterceptorRegistry registry) {
//registry.addInterceptor(new UserInterceptor()).addPathPatterns("/**").excludePathPatterns("/resources/**");
}
/**
* 静态资源映射配置
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("file:C:\\Temp\\","classpath:/static/");
super.addResourceHandlers(registry);
}
/**
* 数据源
*/
@Bean
@Primary
public DataSource createDataSource() {
DruidDataSource dataSource=new DruidDataSource();
dataSource.setUrl("jdbc:mysql://localhost:3306/samsung?useUnicode=true&characterEncoding=utf8");
dataSource.setUsername("root");
dataSource.setPassword("root");
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
return dataSource;
}
/**
* sqlSessionFactory
* @throws IOException
*/
@Bean(name="masterSqlSessionFactoryBean")
@Primary
public SqlSessionFactoryBean initSqlSessionFactory() throws IOException {
SqlSessionFactoryBean sessionFactoryBean=new SqlSessionFactoryBean();
sessionFactoryBean.setDataSource(createDataSource());
sessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mybatis/master/*Mapper.xml"));
sessionFactoryBean.setTypeAliasesPackage("com.sam.entity");
return sessionFactoryBean;
}
/**
* json格式消息转换
*/
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
super.extendMessageConverters(converters);
FastJsonHttpMessageConverter converter=new FastJsonHttpMessageConverter();
/**
* WriteNullListAsEmpty :List字段如果为null,输出为[],而非null
WriteNullStringAsEmpty : 字符类型字段如果为null,输出为"",而非null
DisableCircularReferenceDetect :消除对同一对象循环引用的问题,默认为false(如果不配置有可能会进入死循环)
WriteNullBooleanAsFalse:Boolean字段如果为null,输出为false,而非null
WriteMapNullValue:是否输出值为null的字段,默认为false。
*/
FastJsonConfig config=new FastJsonConfig();
config.setSerializerFeatures(
SerializerFeature.WriteNullStringAsEmpty,
SerializerFeature.WriteNullListAsEmpty,
SerializerFeature.WriteNullBooleanAsFalse,
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteMapNullValue
);
converter.setFastJsonConfig(config);
// start 处理中文乱码开始
List<MediaType> fastMediaType = new ArrayList<>();
fastMediaType.add(MediaType.APPLICATION_JSON_UTF8);
converter.setSupportedMediaTypes(fastMediaType);
// end 处理中文乱发结束
converters.add(converter);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
springboot+springMVC练习项目
共366个文件
class:95个
java:71个
jar:46个
需积分: 34 22 下载量 131 浏览量
2019-01-04
17:00:27
上传
评论
收藏 60.37MB ZIP 举报
温馨提示
springboot+springMVC练习项目,包括常用的基础功能呢
资源推荐
资源详情
资源评论
收起资源包目录
springboot+springMVC练习项目 (366个子文件)
UserController.class 7KB
UserController.class 5KB
MyConfig.class 5KB
MyConfig.class 5KB
ProductController.class 4KB
UserController.class 4KB
UserController.class 4KB
Main3.class 4KB
Main3.class 4KB
CartController.class 3KB
UrlTestService.class 3KB
UrlTestService.class 3KB
UserController.class 3KB
UserEntity.class 3KB
UserEntity.class 2KB
App.class 2KB
Main2.class 2KB
Main2.class 2KB
SysConfig.class 2KB
SysInterceptor.class 2KB
MyBatisSalverConfig.class 2KB
MyBatisSalverConfig.class 2KB
FreemerkerController.class 2KB
Main3$CityInfo.class 2KB
Main3$CityInfo.class 2KB
PayManager.class 2KB
PayManager.class 2KB
UserInterceptor.class 2KB
UserInterceptor.class 2KB
TestServlet.class 2KB
TestServlet.class 2KB
UserInterceptor.class 1KB
UserInterceptor.class 1KB
UserInterceptor.class 1KB
MenuController.class 1KB
Application.class 1KB
Application.class 1KB
ServerConfig.class 1KB
ServerConfig.class 1KB
SnowTest.class 1KB
SnowTest.class 1KB
RunnableTest.class 1KB
RunnableTest.class 1KB
CartEntity.class 1KB
UserProperty.class 1KB
App.class 1KB
ServerProperty.class 1KB
ServerProperty.class 1KB
SessionManager.class 1KB
SessionManager.class 1KB
Main.class 1KB
Main.class 1KB
UserEntity.class 1KB
UserConfig.class 1KB
UserConfig.class 1KB
ReturnData.class 1KB
ErrorConfig.class 1KB
SysConfig.class 1KB
ExceptionHandle.class 1KB
ExceptionHandle.class 1KB
Product.class 1KB
UserService.class 1KB
UserService.class 1KB
UserController.class 1KB
MenuEntity.class 1KB
ThreadTest.class 1020B
ThreadTest.class 1020B
UserProperty.class 965B
UserProperty.class 965B
App.class 903B
PreHandlerSpringboot.class 889B
PreHandlerSpringboot.class 889B
SimpleController.class 855B
SimpleController.class 855B
AliPay.class 839B
AliPay.class 839B
WxPay.class 832B
WxPay.class 832B
CommonConstants.class 743B
App.class 730B
NumberUtils.class 702B
UserMapper.class 519B
Person.class 368B
Person.class 368B
UserMapper.class 350B
DeptMapper.class 349B
DeptMapper.class 349B
SpringMvcDispatcher.class 322B
SpringMvcDispatcher.class 322B
UrlTestService$UserService.class 282B
UrlTestService$UserService.class 282B
CommonPay.class 226B
CommonPay.class 226B
Pay.class 173B
Pay.class 173B
.classpath 1KB
.classpath 1KB
.classpath 1KB
.classpath 1KB
.classpath 1KB
共 366 条
- 1
- 2
- 3
- 4
资源评论
A_Ashao
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功