配置类详解

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

所有的配置项如下

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

public class DemoConfig extends MartianConfig {

    // 数据源,必配,用的是阿里巴巴的 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 RequestConfig requestConfig() {
        RequestConfig requestConfig = new RequestConfig();
        // 读取请求数据超时时间,单位: 毫秒
        requestConfig.setReadTimeout(10000);
        // 写入客户端超时时间,单位: 毫秒
        requestConfig.setWriteTimeout(10000);
        // 每次读取多少请求数据到缓冲区,单位: byte
        requestConfig.setReadSize(1*1024*1024);
        return requestConfig;
    }

    // 业务事件组配置
    public EventGroup workerEventGroup(){
        // 第一个参数是EventRunner的数量,第二个参数是线程池
        // 第一个参数 和 线程池的核心线程数保持一致
        return new EventGroup(5, Executors.newCachedThreadPool());
    }

    // 文件上传大小限制,默认单个文件2M,一次最多传10M
    @Override
    public FileUploadConfig fileUploadConfig() {
        return super.fileUploadConfig();
    }

    // 跨域配置,默认可以跨域
    @Override
    public CrossDomainConfig crossDomainConfig() {
        return super.crossDomainConfig();
    }

}

配置文件隔离

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

results matching ""

    No results matching ""