配置类详解

  • 新建一个任意java类,继承MarsConfig类
  • 所有配置项都有默认值,如果需要自己配置的话,重写对应的方法即可

所有的配置项如下

如有默认值,而你又没有特别需要,可以不重写对应的方法,框架会直接采用默认值

  1. public class DemoConfig extends MarsConfig {
  2. // 数据源,必配,用的是阿里巴巴的 druid数据源,其他属性可自行查阅
  3. @Override
  4. public List<Properties> jdbcProperties() {
  5. List<Properties> list = new ArrayList<Properties>();
  6. Properties properties = new Properties();
  7. properties.put("name","dataSource");
  8. properties.put("url","jdbc:mysql://10.211.55.15:3306/mars?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8");
  9. properties.put("username","root");
  10. properties.put("password","Root123456!");
  11. properties.put("driverClassName","com.mysql.jdbc.Driver");
  12. list.add(properties);
  13. // 如果要多个数据源,add多个到list即可
  14. return list;
  15. }
  16. /* *** 以下内容,如果不需要或者用默认值,则可以不重写 *** */
  17. // 端口号,默认8080
  18. @Override
  19. public int port() {
  20. return super.port();
  21. }
  22. // 线程池配置
  23. @Override
  24. public ThreadPoolConfig getThreadPoolConfig() {
  25. // ThreadPoolConfig里面有三个字段
  26. // backlog: 最大TCP连接数,可以理解为最大并发数
  27. // maxPoolSize: 最大线程池,最多开启多少线程处理请求
  28. // corePoolSize: 核心线程数,最多同时用几个线程处理请求
  29. // keepAliveTime: 多久后回收空余线程
  30. return super.getThreadPoolConfig();
  31. }
  32. // jwt失效时间,默认一天
  33. @Override
  34. public int jwtTime() {
  35. return super.jwtTime();
  36. }
  37. // 文件上传大小限制,默认单个文件2M,一次最多传10M
  38. @Override
  39. public FileUploadConfig fileUploadConfig() {
  40. return super.fileUploadConfig();
  41. }
  42. // 跨域配置,默认可以跨域
  43. @Override
  44. public CrossDomainConfig crossDomainConfig() {
  45. return super.crossDomainConfig();
  46. }
  47. // redis连接池,如果项目不需要连redis,可以不重写
  48. @Override
  49. public JedisConfig jedisConfig() {
  50. return super.jedisConfig();
  51. }
  52. // 自定义配置,如果不需要,可以不重写
  53. @Override
  54. public Map<String, String> marsValues() {
  55. Map<String, String> map = new HashMap<String, String>();
  56. map.put("file.upload.path","/data/upload/files");
  57. map.put("notice.url","http://aaa.com");
  58. return map;
  59. }
  60. }

配置文件隔离

  1. 为不同的环境创建不同的类即可,在main方法里 传入对应环境的 配置类对象即可使用
  2. 还可以使用父类来配置公共的配置