配置类详解
- 新建一个任意java类,继承MarsConfig类
- 所有配置项都有默认值,如果需要自己配置的话,重写对应的方法即可
所有的配置项如下
如有默认值,而你又没有特别需要,可以不重写对应的方法,框架会直接采用默认值
public class DemoConfig extends MarsConfig {
// 数据源,必配,用的是阿里巴巴的 druid数据源,其他属性可自行查阅
@Override
public List<Properties> jdbcProperties() {
List<Properties> list = new ArrayList<Properties>();
Properties properties = new Properties();
properties.put("name","dataSource");
properties.put("url","jdbc:mysql://10.211.55.15:3306/mars?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8");
properties.put("username","root");
properties.put("password","Root123456!");
properties.put("driverClassName","com.mysql.jdbc.Driver");
list.add(properties);
// 如果要多个数据源,add多个到list即可
return list;
}
/* *** 以下内容,如果不需要或者用默认值,则可以不重写 *** */
// 端口号,默认8080
@Override
public int port() {
return super.port();
}
// 线程池配置
@Override
public ThreadPoolConfig getThreadPoolConfig() {
// ThreadPoolConfig里面有三个字段
// backlog: 最大TCP连接数,可以理解为最大并发数
// maxPoolSize: 最大线程池,最多开启多少线程处理请求
// corePoolSize: 核心线程数,最多同时用几个线程处理请求
// keepAliveTime: 多久后回收空余线程
return super.getThreadPoolConfig();
}
// jwt失效时间,默认一天
@Override
public int jwtTime() {
return super.jwtTime();
}
// 文件上传大小限制,默认单个文件2M,一次最多传10M
@Override
public FileUploadConfig fileUploadConfig() {
return super.fileUploadConfig();
}
// 跨域配置,默认可以跨域
@Override
public CrossDomainConfig crossDomainConfig() {
return super.crossDomainConfig();
}
// redis连接池,如果项目不需要连redis,可以不重写
@Override
public JedisConfig jedisConfig() {
return super.jedisConfig();
}
// 自定义配置,如果不需要,可以不重写
@Override
public Map<String, String> marsValues() {
Map<String, String> map = new HashMap<String, String>();
map.put("file.upload.path","/data/upload/files");
map.put("notice.url","http://aaa.com");
return map;
}
}
配置文件隔离
- 为不同的环境创建不同的类即可,在main方法里 传入对应环境的 配置类对象即可使用
- 还可以使用父类来配置公共的配置