初始化
This commit is contained in:
@@ -0,0 +1,454 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<parent>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>ca-data</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>adc-da-main</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>web</name>
|
||||
<description>web project for Spring Boot</description>
|
||||
<properties>
|
||||
<docker.image.prefix>adc</docker.image.prefix>
|
||||
<!-- 阿里云仓库地址-->
|
||||
<docker.repository.url>registry.cn-hangzhou.aliyuncs.com</docker.repository.url>
|
||||
<!-- 阿里云仓库命名空间-->
|
||||
<docker.repository.namespace>adc-da</docker.repository.namespace>
|
||||
<docker.repository.serverId>adc-da-docker</docker.repository.serverId>
|
||||
<docker.registry.name>adc</docker.registry.name>
|
||||
</properties>
|
||||
<!--setting.xml-->
|
||||
<!--<servers>-->
|
||||
<!--<server>-->
|
||||
<!--<!–登陆仓库的账号密码–>-->
|
||||
<!--<id>docker-aliyun-my</id>-->
|
||||
<!--<username>xxxx@xxx.com</username>-->
|
||||
<!--<password>xxxx</password>-->
|
||||
<!--<configuration>-->
|
||||
<!--<email>xxx@xxxx.com</email>-->
|
||||
<!--</configuration>-->
|
||||
<!--</server>-->
|
||||
<!--</servers>-->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>adc</id>
|
||||
<url>http://60.247.58.121:8182/repository/public</url>
|
||||
<releases>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>snapshot</id>
|
||||
<url>http://60.247.58.121:8182/repository/snapshots/</url>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
<checksumPolicy>warn</checksumPolicy>
|
||||
</snapshots>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<dependencies>
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-demo</artifactId>-->
|
||||
<!--<version>2.5.0</version>-->
|
||||
<!--</dependency>-->
|
||||
<!--<!– ADC-DA框架前台 –>-->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-ui</artifactId>-->
|
||||
<!--<version>2.5.0</version>-->
|
||||
<!--</dependency>-->
|
||||
<!-- 框架基础组件 -->
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-base</artifactId>
|
||||
<version>3.0.0-SNAPSHOT</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>adc-da-util</artifactId>
|
||||
<groupId>com.adc</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<!-- 工具类组件 -->
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-util</artifactId>
|
||||
<version>2.3.3-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<!-- 系统管理组件 -->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-sys</artifactId>-->
|
||||
<!--<version>2.3.2-SNAPSHOT</version>-->
|
||||
<!--<exclusions>-->
|
||||
<!--<exclusion>-->
|
||||
<!--<artifactId>adc-da-base</artifactId>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--</exclusion>-->
|
||||
<!--<exclusion>-->
|
||||
<!--<artifactId>adc-da-util</artifactId>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--</exclusion>-->
|
||||
<!--</exclusions>-->
|
||||
<!--</dependency>-->
|
||||
<!-- 登录组件 -->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-login</artifactId>-->
|
||||
<!--<version>2.3.3-SNAPSHOT</version>-->
|
||||
<!--<exclusions>-->
|
||||
<!--<exclusion>-->
|
||||
<!--<artifactId>adc-da-sys</artifactId>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--</exclusion>-->
|
||||
<!--<exclusion>-->
|
||||
<!--<artifactId>adc-da-util</artifactId>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--</exclusion>-->
|
||||
<!--<exclusion>-->
|
||||
<!--<artifactId>adc-da-base</artifactId>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--</exclusion>-->
|
||||
<!--</exclusions>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-login</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-sys</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-report</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</dependency>
|
||||
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>com.adc</groupId>-->
|
||||
<!-- <artifactId>adc-da-price</artifactId>-->
|
||||
<!-- <version>2.5.0</version>-->
|
||||
<!-- </dependency>-->
|
||||
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>com.adc</groupId>-->
|
||||
<!-- <artifactId>adc-da-configuration</artifactId>-->
|
||||
<!-- <version>2.5.0</version>-->
|
||||
<!-- </dependency>-->
|
||||
|
||||
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-ui</artifactId>-->
|
||||
<!--<version>2.5.0</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<version>3.1.0</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<!-- <dependency> -->
|
||||
<!-- <groupId>com.adc</groupId> -->
|
||||
<!-- <artifactId>adc-da-jmetrics</artifactId> -->
|
||||
<!-- <version>2.0.0</version> -->
|
||||
<!-- </dependency> -->
|
||||
|
||||
<!-- <dependency> -->
|
||||
<!-- <groupId>com.adc</groupId> -->
|
||||
<!-- <artifactId>adc-da-threadpool</artifactId> -->
|
||||
<!-- <version>2.0.0</version> -->
|
||||
<!-- </dependency> -->
|
||||
|
||||
<!-- <dependency> -->
|
||||
<!-- <groupId>com.adc</groupId> -->
|
||||
<!-- <artifactId>adc-da-redis</artifactId> -->
|
||||
<!-- <version>2.0.0</version> -->
|
||||
<!-- </dependency> -->
|
||||
<!-- 文件上传下载组件 -->
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-file</artifactId>
|
||||
<version>2.0.0</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>adc-da-base</artifactId>
|
||||
<groupId>com.adc</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<artifactId>adc-da-util</artifactId>
|
||||
<groupId>com.adc</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<!-- 代码生成组件 -->
|
||||
<dependency>
|
||||
<groupId>com.adc</groupId>
|
||||
<artifactId>adc-da-gen</artifactId>
|
||||
<version>2.3.2-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<!-- Druid数据库连接池组件 -->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>com.adc</groupId>-->
|
||||
<!--<artifactId>adc-da-druid</artifactId>-->
|
||||
<!--<version>2.0.2</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>druid-spring-boot-starter</artifactId>
|
||||
<version>1.1.9</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>log4j</groupId>
|
||||
<artifactId>log4j</artifactId>
|
||||
<version>1.2.17</version>
|
||||
</dependency>
|
||||
|
||||
<!-- jdk1.7支持2.4.6版本es客户端,jdk1.8支持6.0版本es客户端 -->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.elasticsearch</groupId>-->
|
||||
<!--<artifactId>elasticsearch</artifactId>-->
|
||||
<!--</dependency>-->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.elasticsearch.client</groupId>-->
|
||||
<!--<artifactId>transport</artifactId>-->
|
||||
<!--<version>6.0.0</version>-->
|
||||
<!--</dependency>-->
|
||||
<!-- 6.0版本es需添加此依赖,解决依赖冲突 -->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.apache.logging.log4j</groupId>-->
|
||||
<!--<artifactId>log4j-core</artifactId>-->
|
||||
<!--</dependency>-->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||
</dependency>
|
||||
<!-- MybatisPlus代码生成器 -->
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-generator</artifactId>
|
||||
<version>3.2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.freemarker</groupId>
|
||||
<artifactId>freemarker</artifactId>
|
||||
<version>2.3.29</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>net.sourceforge.javacsv</groupId>
|
||||
<artifactId>javacsv</artifactId>
|
||||
<version>2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sf.opencsv</groupId>
|
||||
<artifactId>opencsv</artifactId>
|
||||
<version>2.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-fileupload</groupId>
|
||||
<artifactId>commons-fileupload</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>fastjson</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.guava</groupId>
|
||||
<artifactId>guava</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.mashape.unirest</groupId>
|
||||
<artifactId>unirest-java</artifactId>
|
||||
</dependency>
|
||||
<!-- 支持sql server的驱动 -->
|
||||
<dependency>
|
||||
<groupId>com.microsoft.sqlserver</groupId>
|
||||
<artifactId>mssql-jdbc</artifactId>
|
||||
</dependency>
|
||||
<!-- 支持oracle 12c的驱动 -->
|
||||
<dependency>
|
||||
<groupId>com.oracle</groupId>
|
||||
<artifactId>ojdbc7</artifactId>
|
||||
</dependency>
|
||||
<!-- 支持MySQL的驱动 -->
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sf.json-lib</groupId>
|
||||
<artifactId>json-lib</artifactId>
|
||||
<version>2.4</version>
|
||||
<classifier>jdk15</classifier>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>commons-logging</artifactId>
|
||||
<groupId>commons-logging</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<artifactId>commons-beanutils</artifactId>
|
||||
<groupId>commons-beanutils</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<artifactId>commons-collections</artifactId>
|
||||
<groupId>commons-collections</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents</groupId>
|
||||
<artifactId>httpclient</artifactId>
|
||||
<version>4.4.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents</groupId>
|
||||
<artifactId>httpcore</artifactId>
|
||||
<version>4.4.1</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.aspectj</groupId>
|
||||
<artifactId>aspectjweaver</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.github.xiaoymin</groupId>
|
||||
<artifactId>swagger-bootstrap-ui</artifactId>
|
||||
<version>1.8.9</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>javax.mail</groupId>
|
||||
<artifactId>mailapi</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>javax.mail</groupId>-->
|
||||
<!-- <artifactId>mailapi</artifactId>-->
|
||||
<!-- <version>1.4.7</version>-->
|
||||
<!-- </dependency>-->
|
||||
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
|
||||
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<includeSystemScope>true</includeSystemScope>
|
||||
</configuration>
|
||||
<!-- <configuration> -->
|
||||
<!-- <executable>true</executable> -->
|
||||
<!-- <fork>true</fork> -->
|
||||
<!-- <addResources>true</addResources> -->
|
||||
|
||||
<!-- <includeSystemScope>true</includeSystemScope> -->
|
||||
<!-- </configuration> -->
|
||||
|
||||
<!-- <executions> -->
|
||||
<!-- <execution> -->
|
||||
<!-- <goals> -->
|
||||
<!-- <goal>repackage</goal> -->
|
||||
<!-- </goals> -->
|
||||
<!-- <configuration> -->
|
||||
<!-- 非必填项,即在生成的jar包名称后面追加该分类名称 -->
|
||||
<!-- <classifier>boot</classifier> -->
|
||||
<!-- <mainClass>com.adc.StandardApplication</mainClass> -->
|
||||
<!-- </configuration> -->
|
||||
<!-- </execution> -->
|
||||
<!-- </executions> -->
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>io.github.swagger2markup</groupId>
|
||||
<artifactId>swagger2markup-maven-plugin</artifactId>
|
||||
<version>1.3.1</version>
|
||||
<configuration>
|
||||
<swaggerInput>http://localhost:8080/v2/api-docs</swaggerInput>
|
||||
<outputDir>src/docs/asciidoc/generated</outputDir>
|
||||
<config>
|
||||
<swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
|
||||
</config>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.asciidoctor</groupId>
|
||||
<artifactId>asciidoctor-maven-plugin</artifactId>
|
||||
<version>1.5.6</version>
|
||||
<configuration>
|
||||
<sourceDirectory>src/docs/asciidoc/generated</sourceDirectory>
|
||||
<outputDirectory>src/docs/asciidoc/html</outputDirectory>
|
||||
<backend>html</backend>
|
||||
<sourceHighlighter>coderay</sourceHighlighter>
|
||||
<attributes>
|
||||
<toc>left</toc>
|
||||
</attributes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.spotify</groupId>
|
||||
<artifactId>docker-maven-plugin</artifactId>
|
||||
<version>1.1.1</version>
|
||||
<configuration>
|
||||
<forceTags>true</forceTags>
|
||||
<pushImage>true</pushImage>
|
||||
<buildArgs>
|
||||
<JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
|
||||
</buildArgs>
|
||||
<imageName>${docker.repository.url}/${docker.repository.namespace}/${docker.registry.name}/${project.artifactId}:${project.version}</imageName>
|
||||
<serverId>${docker.repository.serverId}</serverId>
|
||||
<registryUrl>${docker.repository.url}</registryUrl>
|
||||
<dockerDirectory>src/main/docker</dockerDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<targetPath>/</targetPath>
|
||||
<directory>${project.build.directory}</directory>
|
||||
<include>${project.build.finalName}.jar</include>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.adc.da;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.web.servlet.ServletComponentScan;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
|
||||
@SpringBootApplication
|
||||
@ServletComponentScan
|
||||
@ComponentScan("com.adc")
|
||||
public class AdcDaApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
ApplicationContext applicationContext = SpringApplication.run(AdcDaApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.adc.da;
|
||||
|
||||
import org.springframework.boot.builder.SpringApplicationBuilder;
|
||||
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
|
||||
|
||||
/**
|
||||
* Springboot打war包的启动口
|
||||
*/
|
||||
public class ServletInitializer extends SpringBootServletInitializer {
|
||||
|
||||
@Override
|
||||
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
|
||||
// 注意这里要指向原先用main方法执行的Application启动类
|
||||
return builder.sources(AdcDaApplication.class);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.adc.da.main.advice;
|
||||
|
||||
import com.adc.da.util.exception.AdcDaBaseException;
|
||||
import com.adc.da.util.http.ResponseMessage;
|
||||
import com.adc.da.util.http.ResponseMessageCodeEnum;
|
||||
import com.adc.da.util.http.Result;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@ControllerAdvice
|
||||
@Order(value=3)
|
||||
public class AdcDaBaseExceptionAdvice {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(AdcDaBaseExceptionAdvice.class);
|
||||
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
@ExceptionHandler(AdcDaBaseException.class)
|
||||
@ResponseBody
|
||||
public ResponseMessage handlerAdcDaBaseException(AdcDaBaseException exception) {
|
||||
logger.warn(exception.getMessage(), exception);
|
||||
return Result.error(exception.getErrorCode(), exception.getMessage());
|
||||
}
|
||||
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
@ExceptionHandler(Exception.class)
|
||||
@ResponseBody
|
||||
public ResponseMessage handlerAdcDaBaseException(Exception exception) {
|
||||
logger.error(exception.getMessage(), exception);
|
||||
// TODO 在数据库中记录程序异常,这个地方的异常是未处理的异常,需要管理员查看并进行处理以防重复出现
|
||||
return Result.error(ResponseMessageCodeEnum.ERROR.getCode(), "程序异常,请重试。如果重复出现请联系管理员处理!");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.adc.da.main.advice;
|
||||
|
||||
import com.adc.da.util.http.ResponseMessage;
|
||||
import com.adc.da.util.http.Result;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
import org.springframework.web.multipart.MultipartException;
|
||||
|
||||
@ControllerAdvice
|
||||
public class MultipartExceptionAdvice {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(MultipartExceptionAdvice.class);
|
||||
|
||||
@Value("${spring.servlet.multipart.max-file-size}")
|
||||
private String maxFileSize;
|
||||
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
@ExceptionHandler(MultipartException.class)
|
||||
@ResponseBody
|
||||
public ResponseMessage handlerAdcDaBaseException(MultipartException exception) {
|
||||
logger.warn(exception.getMessage(), exception);
|
||||
return Result.error("文件大小超过限制(" + maxFileSize.toUpperCase() + ")");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
package com.adc.da.main.advice;
|
||||
|
||||
import com.adc.da.util.http.ResponseMessage;
|
||||
import com.adc.da.util.http.ResponseMessageCodeEnum;
|
||||
import com.adc.da.util.http.Result;
|
||||
import com.adc.da.util.http.ValidError;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.FieldError;
|
||||
import org.springframework.web.bind.MethodArgumentNotValidException;
|
||||
import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
import javax.validation.ConstraintViolation;
|
||||
import javax.validation.ConstraintViolationException;
|
||||
import javax.validation.ValidationException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* 参考:http://javaninja.net/2013/12/getting-spring-mvc-validation-messages-from-a-json-service/
|
||||
*/
|
||||
@ControllerAdvice
|
||||
public class NotValidExceptionAdvice {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(NotValidExceptionAdvice.class);
|
||||
|
||||
@ExceptionHandler(MethodArgumentNotValidException.class)
|
||||
@ResponseStatus(HttpStatus.BAD_REQUEST)
|
||||
@ResponseBody
|
||||
public ResponseMessage<List<ValidError>> handleMethodArgumentNotValidException(
|
||||
MethodArgumentNotValidException exception) {
|
||||
// logger.error(exception.getMessage(), exception);
|
||||
|
||||
List<ValidError> validErrorList = new ArrayList<>();
|
||||
BindingResult result = exception.getBindingResult();
|
||||
for (FieldError fieldError : result.getFieldErrors()) {
|
||||
validErrorList.add(new ValidError(fieldError.getField(), fieldError.getDefaultMessage()));
|
||||
logger.warn("valid error: obj[{}], filed[{}], message[{}]",
|
||||
fieldError.getObjectName(),
|
||||
fieldError.getField(),
|
||||
fieldError.getDefaultMessage());
|
||||
}
|
||||
|
||||
return Result.error(ResponseMessageCodeEnum.VALID_ERROR.getCode(), "", validErrorList);
|
||||
}
|
||||
|
||||
@ExceptionHandler(ConstraintViolationException.class)
|
||||
@ResponseStatus(HttpStatus.BAD_REQUEST)
|
||||
@ResponseBody
|
||||
public ResponseMessage<List<ValidError>> handleConstraintViolationException(
|
||||
ConstraintViolationException exception) {
|
||||
// logger.error(exception.getMessage(), exception);
|
||||
|
||||
List<ValidError> validErrorList = new ArrayList<>();
|
||||
Set<ConstraintViolation<?>> violationSet = exception.getConstraintViolations();
|
||||
for (ConstraintViolation violation : violationSet) {
|
||||
validErrorList.add(new ValidError(violation.getPropertyPath().toString(), violation.getMessage()));
|
||||
logger.warn("param valid error: obj[{}], filed[{}], message[{}]",
|
||||
violation.getRootBeanClass(),
|
||||
violation.getPropertyPath(),
|
||||
violation.getMessage());
|
||||
}
|
||||
|
||||
return Result.error(ResponseMessageCodeEnum.VALID_ERROR.getCode(), "", validErrorList);
|
||||
}
|
||||
|
||||
@ExceptionHandler(value = ValidationException.class)
|
||||
public ResponseMessage validationExceptionHandling(ValidationException e) {
|
||||
ResponseMessage result = Result.error(e.getMessage());
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.adc.da.main.advice;
|
||||
|
||||
import org.apache.shiro.authc.AuthenticationException;
|
||||
import org.apache.shiro.authc.IncorrectCredentialsException;
|
||||
import org.apache.shiro.authc.UnknownAccountException;
|
||||
import org.apache.shiro.authz.UnauthenticatedException;
|
||||
import org.apache.shiro.authz.UnauthorizedException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
import com.adc.da.util.http.ResponseMessage;
|
||||
import com.adc.da.util.http.ResponseMessageCodeEnum;
|
||||
import com.adc.da.util.http.Result;
|
||||
|
||||
@ControllerAdvice
|
||||
@Order(value=0)
|
||||
public class ShiroExceptionAdvice {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(ShiroExceptionAdvice.class);
|
||||
|
||||
@ResponseStatus(HttpStatus.UNAUTHORIZED)
|
||||
@ExceptionHandler({AuthenticationException.class, UnknownAccountException.class,
|
||||
UnauthenticatedException.class, IncorrectCredentialsException.class})
|
||||
@ResponseBody
|
||||
public ResponseMessage unauthorized(Exception exception) {
|
||||
logger.warn(exception.getMessage(), exception);
|
||||
logger.info("catch UnknownAccountException");
|
||||
return Result.error(ResponseMessageCodeEnum.ERROR.getCode(), exception.getMessage());
|
||||
}
|
||||
|
||||
@ResponseStatus(HttpStatus.UNAUTHORIZED)
|
||||
@ExceptionHandler(UnauthorizedException.class)
|
||||
@ResponseBody
|
||||
public ResponseMessage unauthorized1(UnauthorizedException exception) {
|
||||
logger.warn(exception.getMessage(), exception);
|
||||
return Result.error(ResponseMessageCodeEnum.ERROR.getCode(), exception.getMessage());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.adc.da.main.advice;
|
||||
|
||||
import com.adc.da.util.http.ResponseMessage;
|
||||
import com.adc.da.util.http.Result;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.MethodArgumentNotValidException;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
import org.springframework.web.bind.annotation.RestControllerAdvice;
|
||||
|
||||
/**
|
||||
* @Author doudxw
|
||||
* @Date 2021/4/27 14:13
|
||||
*/
|
||||
@RestControllerAdvice
|
||||
@Order(1)
|
||||
public class ValidExcetipnAdvice {
|
||||
|
||||
@ExceptionHandler(MethodArgumentNotValidException.class)
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public ResponseMessage valisException(MethodArgumentNotValidException ex){
|
||||
return Result.error(ex.getBindingResult().getFieldError().getDefaultMessage());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.adc.da.main.aspect;
|
||||
|
||||
import org.aspectj.lang.ProceedingJoinPoint;
|
||||
import org.aspectj.lang.annotation.Around;
|
||||
import org.aspectj.lang.annotation.Aspect;
|
||||
import org.aspectj.lang.annotation.Pointcut;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import com.adc.da.util.utils.GsonUtil;
|
||||
|
||||
/**
|
||||
* 用于记录调用controller层返回日志
|
||||
*/
|
||||
@Aspect
|
||||
@Component
|
||||
public class ResponseLogAspect {
|
||||
private static Logger logger = LoggerFactory.getLogger(ResponseLogAspect.class);
|
||||
|
||||
/**
|
||||
* 匹配controller层的方法
|
||||
*/
|
||||
@Pointcut(value = "(execution(* com.adc.da.*.rest.*.*(..)))")
|
||||
private void controllerPointcut() {
|
||||
// 切面方法
|
||||
}
|
||||
|
||||
@Around(value = "controllerPointcut()")
|
||||
public Object process(ProceedingJoinPoint joinPoint) throws Throwable {
|
||||
Object result = joinPoint.proceed();
|
||||
logger.info("==================== 调用Controller层返回json值 ====================");
|
||||
logger.info(GsonUtil.toJson(result));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
//package com.adc.da.main.config.DataSource;
|
||||
//
|
||||
//import com.baomidou.mybatisplus.core.MybatisConfiguration;
|
||||
//import com.baomidou.mybatisplus.core.MybatisXMLLanguageDriver;
|
||||
//import com.baomidou.mybatisplus.core.config.GlobalConfig;
|
||||
//import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
|
||||
//import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
|
||||
//import org.apache.ibatis.plugin.Interceptor;
|
||||
//import org.apache.ibatis.session.SqlSessionFactory;
|
||||
//import org.apache.ibatis.type.JdbcType;
|
||||
//import org.mybatis.spring.SqlSessionTemplate;
|
||||
//import org.mybatis.spring.annotation.MapperScan;
|
||||
//import org.springframework.beans.factory.annotation.Qualifier;
|
||||
//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
//import org.springframework.context.annotation.Bean;
|
||||
//import org.springframework.context.annotation.Configuration;
|
||||
//import org.springframework.context.annotation.Primary;
|
||||
//import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
//
|
||||
//import javax.sql.DataSource;
|
||||
//
|
||||
///**
|
||||
// * @Author doudxw
|
||||
// * @Date 2022/1/5 09:19
|
||||
// * for kylin
|
||||
// * 连接长安麒麟的数据源
|
||||
// */
|
||||
//@Configuration
|
||||
//@ConditionalOnProperty(prefix = "datatype",name ="change",havingValue ="kylin" )
|
||||
//@MapperScan(basePackages = "com.adc.da.**.dao.kylin", sqlSessionTemplateRef = "ds1SqlSessionTemplate")
|
||||
//public class DataSource1 {
|
||||
//
|
||||
// //ds1数据源
|
||||
// @Bean("ds1SqlSessionFactory")
|
||||
// public SqlSessionFactory ds1SqlSessionFactory(@Qualifier("ds1DataSource") DataSource dataSource) throws Exception {
|
||||
// MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
|
||||
// sqlSessionFactory.setDataSource(dataSource);
|
||||
// MybatisConfiguration configuration = new MybatisConfiguration();
|
||||
// configuration.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class);
|
||||
// configuration.setJdbcTypeForNull(JdbcType.NULL);
|
||||
// sqlSessionFactory.setConfiguration(configuration);
|
||||
// sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().
|
||||
// getResources("classpath*:mybatis/mapper/**/kylin/**/*.xml"));
|
||||
// sqlSessionFactory.setPlugins(new Interceptor[]{
|
||||
// new PaginationInterceptor()
|
||||
//// .setFormat(true),
|
||||
// });
|
||||
// sqlSessionFactory.setGlobalConfig(new GlobalConfig().setBanner(false));
|
||||
// return sqlSessionFactory.getObject();
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "ds1TransactionManager")
|
||||
// public DataSourceTransactionManager ds1TransactionManager(@Qualifier("ds1DataSource") DataSource dataSource) {
|
||||
// return new DataSourceTransactionManager(dataSource);
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "ds1SqlSessionTemplate")
|
||||
// public SqlSessionTemplate ds1SqlSessionTemplate(@Qualifier("ds1SqlSessionFactory") SqlSessionFactory sqlSessionFactory) {
|
||||
// return new SqlSessionTemplate(sqlSessionFactory);
|
||||
// }
|
||||
//
|
||||
//}
|
||||
@@ -0,0 +1,61 @@
|
||||
//package com.adc.da.main.config.DataSource;
|
||||
//
|
||||
//import com.baomidou.mybatisplus.core.MybatisConfiguration;
|
||||
//import com.baomidou.mybatisplus.core.MybatisXMLLanguageDriver;
|
||||
//import com.baomidou.mybatisplus.core.config.GlobalConfig;
|
||||
//import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
|
||||
//import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
|
||||
//import org.apache.ibatis.plugin.Interceptor;
|
||||
//import org.apache.ibatis.session.SqlSessionFactory;
|
||||
//import org.apache.ibatis.type.JdbcType;
|
||||
//import org.mybatis.spring.SqlSessionTemplate;
|
||||
//import org.mybatis.spring.annotation.MapperScan;
|
||||
//import org.springframework.beans.factory.annotation.Qualifier;
|
||||
//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
//import org.springframework.context.annotation.Bean;
|
||||
//import org.springframework.context.annotation.Configuration;
|
||||
//import org.springframework.context.annotation.Primary;
|
||||
//import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
//
|
||||
//import javax.sql.DataSource;
|
||||
//
|
||||
///**
|
||||
// * @Author doudxw
|
||||
// * @Date 2022/1/5 09:19
|
||||
// * for mysql
|
||||
// */
|
||||
//@Configuration
|
||||
//@ConditionalOnProperty(prefix = "datatype",name ="change",havingValue ="kylin" )
|
||||
//@MapperScan(basePackages ={"com.adc.da.**.dao.mysql","com.adc.da.file.dao"}, sqlSessionTemplateRef = "ds2SqlSessionTemplate")
|
||||
//public class DataSource2 {
|
||||
// //ds2数据源
|
||||
// @Bean("ds2SqlSessionFactory")
|
||||
// public SqlSessionFactory ds2SqlSessionFactory(@Qualifier("ds2DataSource") DataSource dataSource) throws Exception {
|
||||
// MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
|
||||
// sqlSessionFactory.setDataSource(dataSource);
|
||||
// MybatisConfiguration configuration = new MybatisConfiguration();
|
||||
// configuration.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class);
|
||||
// configuration.setJdbcTypeForNull(JdbcType.NULL);
|
||||
// sqlSessionFactory.setConfiguration(configuration);
|
||||
// sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().
|
||||
// getResources("classpath*:mybatis/mapper/**/mysql/**/*.xml"));
|
||||
// sqlSessionFactory.setPlugins(new Interceptor[]{
|
||||
// new PaginationInterceptor()
|
||||
//// .setFormat(true),
|
||||
// });
|
||||
// sqlSessionFactory.setGlobalConfig(new GlobalConfig().setBanner(false));
|
||||
// return sqlSessionFactory.getObject();
|
||||
// }
|
||||
//
|
||||
// @Primary
|
||||
// @Bean(name = "ds2TransactionManager")
|
||||
// public DataSourceTransactionManager ds2TransactionManager(@Qualifier("ds2DataSource") DataSource dataSource) {
|
||||
// return new DataSourceTransactionManager(dataSource);
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "ds2SqlSessionTemplate")
|
||||
// public SqlSessionTemplate ds2SqlSessionTemplate(@Qualifier("ds2SqlSessionFactory") SqlSessionFactory sqlSessionFactory) {
|
||||
// return new SqlSessionTemplate(sqlSessionFactory);
|
||||
// }
|
||||
//}
|
||||
@@ -0,0 +1,79 @@
|
||||
package com.adc.da.main.config.DataSource;
|
||||
|
||||
/**
|
||||
* @Author doudxw
|
||||
* @Date 2022/1/5 09:26
|
||||
*/
|
||||
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.DataTruncation;
|
||||
|
||||
/**
|
||||
* 多数据源配置
|
||||
*/
|
||||
@Configuration
|
||||
@ConditionalOnProperty(prefix = "datatype",name ="change",havingValue ="kylin" )
|
||||
public class DataSourceConfig {
|
||||
|
||||
//主数据源配置 ds1数据源
|
||||
// @Primary
|
||||
// @Bean(name = "ds1DataSourceProperties")
|
||||
// @ConfigurationProperties(prefix = "spring.datasource.kylin")
|
||||
// public DataSourceProperties ds1DataSourceProperties() {
|
||||
// return new DataSourceProperties();
|
||||
// }
|
||||
|
||||
//主数据源 ds1数据源
|
||||
// @Primary
|
||||
// @Bean(name = "ds1DataSource")
|
||||
// public DataSource ds1DataSource(@Qualifier("ds1DataSourceProperties") DataSourceProperties dataSourceProperties) {
|
||||
// DataSource dataSource = dataSourceProperties.initializeDataSourceBuilder().build();
|
||||
//// HikariDataSource hikariDataSource = (HikariDataSource) dataSource;
|
||||
//// hikariDataSource.setMinimumIdle(200);
|
||||
//// hikariDataSource.setMaximumPoolSize(500);
|
||||
// DataSource build = dataSourceProperties.initializeDataSourceBuilder().build();
|
||||
// DruidDataSource druidDataSource = new DruidDataSource(dataSourceProperties);
|
||||
// druidDataSource.setInitialSize(500);
|
||||
// druidDataSource.setMinIdle(500);
|
||||
// druidDataSource.setMaxActive(500);
|
||||
// return druidDataSource;
|
||||
// }
|
||||
|
||||
// @Primary
|
||||
// @Bean(name = "ds1DataSource")
|
||||
// public DataSource druidDataSource(@Qualifier("ds1DataSourceProperties") DataSourceProperties dataSourceProperties){
|
||||
// DruidDataSource druidDataSource = new DruidDataSource();
|
||||
// druidDataSource.setDriverClassName(dataSourceProperties.getDriverClassName());
|
||||
// druidDataSource.setUrl(dataSourceProperties.getUrl());
|
||||
// druidDataSource.setUsername(dataSourceProperties.getUsername());
|
||||
// druidDataSource.setPassword(dataSourceProperties.getPassword());
|
||||
// druidDataSource.setInitialSize(500);
|
||||
// druidDataSource.setMinIdle(500);
|
||||
// druidDataSource.setMaxActive(500);
|
||||
// return druidDataSource;
|
||||
// }
|
||||
//
|
||||
// //第二个ds2数据源配置
|
||||
// @Bean(name = "ds2DataSourceProperties")
|
||||
// @ConfigurationProperties(prefix = "spring.datasource.mysql")
|
||||
// public DataSourceProperties ds2DataSourceProperties() {
|
||||
// return new DataSourceProperties();
|
||||
// }
|
||||
//
|
||||
// //第二个ds2数据源
|
||||
// @Bean("ds2DataSource")
|
||||
// public DataSource ds2DataSource(@Qualifier("ds2DataSourceProperties") DataSourceProperties dataSourceProperties) {
|
||||
// return dataSourceProperties.initializeDataSourceBuilder().build();
|
||||
// }
|
||||
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
//package com.adc.da.main.config.DataSource;
|
||||
//
|
||||
//import com.alibaba.druid.filter.Filter;
|
||||
//import com.alibaba.druid.filter.logging.Slf4jLogFilter;
|
||||
//import com.alibaba.druid.filter.stat.StatFilter;
|
||||
//import com.alibaba.druid.pool.DruidDataSource;
|
||||
//import com.alibaba.druid.support.http.StatViewServlet;
|
||||
//import com.alibaba.druid.support.http.WebStatFilter;
|
||||
//import com.alibaba.druid.support.spring.stat.DruidStatInterceptor;
|
||||
//import com.alibaba.druid.wall.WallConfig;
|
||||
//import com.alibaba.druid.wall.WallFilter;
|
||||
//import org.bouncycastle.pqc.math.linearalgebra.PolynomialRingGF2;
|
||||
//import org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator;
|
||||
//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
//import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
//import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||
//import org.springframework.boot.web.servlet.ServletRegistrationBean;
|
||||
//import org.springframework.context.EnvironmentAware;
|
||||
//import org.springframework.context.annotation.Bean;
|
||||
//import org.springframework.context.annotation.Configuration;
|
||||
//import org.springframework.core.env.Environment;
|
||||
//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
//
|
||||
//import javax.sql.DataSource;
|
||||
//import java.util.ArrayList;
|
||||
//import java.util.HashMap;
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//
|
||||
///**
|
||||
// * @Author sima
|
||||
// * @Date 2022/6/9 11:45
|
||||
// */
|
||||
////@Configuration
|
||||
////@ConditionalOnProperty(prefix = "datatype",name ="change",havingValue ="mysql" )
|
||||
//public class DruidDataSourceConfig {
|
||||
//// @ConfigurationProperties(prefix = "spring.datasource")
|
||||
//// @Bean
|
||||
//// public DataSource druidDataSource(){
|
||||
//// return new DruidDataSource();
|
||||
//// }
|
||||
//}
|
||||
//
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.adc.da.main.config;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.dozer.DozerBeanMapper;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* 各个模块的dozer配置文件
|
||||
*/
|
||||
@Configuration
|
||||
public class DozerConfig {
|
||||
|
||||
@Bean(name = "org.dozer.Mapper")
|
||||
public DozerBeanMapper dozer() {
|
||||
List<String> mappingFiles = Arrays.asList("dozer/dozer-mappings-sys.xml");
|
||||
DozerBeanMapper dozerBean = new DozerBeanMapper();
|
||||
dozerBean.setMappingFiles(mappingFiles);
|
||||
return dozerBean;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.adc.da.main.config;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
|
||||
//import com.baomidou.mybatisplus.extension.plugins.PerformanceInterceptor;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
|
||||
/**
|
||||
* MybatisPlus配置
|
||||
*/
|
||||
@Configuration
|
||||
@MapperScan({"com.adc.da.**.dao","com.adc.**.dao"})
|
||||
@EnableTransactionManagement
|
||||
public class MybatisPlusConfig {
|
||||
|
||||
/**
|
||||
* MybatisPlus分页插件
|
||||
*/
|
||||
@Bean
|
||||
public PaginationInterceptor paginationInterceptor() {
|
||||
return new PaginationInterceptor();
|
||||
}
|
||||
|
||||
/***
|
||||
* MybatisPlus的性能优化
|
||||
*/
|
||||
// @Bean
|
||||
// public PerformanceInterceptor performanceInterceptor() {
|
||||
// PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
|
||||
// /* <!-- SQL 执行性能分析,开发环境使用,线上不推荐。 maxTime 指的是 sql 最大执行时长 --> */
|
||||
// // performanceInterceptor.setMaxTime(1000);
|
||||
// /* <!--SQL是否格式化 默认false--> */
|
||||
// performanceInterceptor.setFormat(true);
|
||||
// return performanceInterceptor;
|
||||
// }
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.adc.da.main.config;
|
||||
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.data.redis.connection.RedisConnectionFactory;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
|
||||
|
||||
/**
|
||||
* @Author doudxw
|
||||
* @Date 2021/11/11 09:38
|
||||
*/
|
||||
@Configuration
|
||||
public class RedisConfig {
|
||||
|
||||
@Bean
|
||||
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
|
||||
RedisTemplate<String, Object> template = new RedisTemplate();
|
||||
template.setConnectionFactory(factory);
|
||||
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
|
||||
template.setDefaultSerializer(jackson2JsonRedisSerializer);
|
||||
return template;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
package com.adc.da.main.config;
|
||||
|
||||
import com.adc.da.util.filter.CorsFilter;
|
||||
import com.adc.da.util.filter.CsrfFilter;
|
||||
import com.adc.da.util.filter.FakeJSessionIdFilter;
|
||||
import com.adc.da.util.filter.HttpCacheFilter;
|
||||
import com.adc.da.util.filter.RequestInfoFilter;
|
||||
import com.adc.da.util.security.filter.TimestampFilter;
|
||||
import com.adc.da.util.xss.XssFilter;
|
||||
import com.adc.da.util.security.filter.NonceFilter;
|
||||
import com.adc.da.util.xssshield.XssShieldFilter;
|
||||
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* Web配置,用于注入过滤器,拦截器等
|
||||
*/
|
||||
//@Configuration
|
||||
public class WebConfig {
|
||||
|
||||
|
||||
// @Bean
|
||||
// public FilterRegistrationBean urlFilter(){
|
||||
// FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
// registration.setFilter(new UrlFilter());
|
||||
// registration.addUrlPatterns("/home/pic/html/*");
|
||||
// registration.setName("urlFilter");
|
||||
// registration.setOrder(1);
|
||||
// return registration;
|
||||
//
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* xss过滤器(高标准)
|
||||
*/
|
||||
@Bean
|
||||
public FilterRegistrationBean xssFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new XssFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("xssFilter");
|
||||
registration.setOrder(10);
|
||||
return registration;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public FilterRegistrationBean csrfFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new CsrfFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("csrfFilter");
|
||||
registration.setOrder(9);
|
||||
return registration;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public FilterRegistrationBean requestInfoFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new RequestInfoFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("RequestInfoFilter");
|
||||
registration.setOrder(8);
|
||||
return registration;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public FilterRegistrationBean corsFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new CorsFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("corsFilter");
|
||||
registration.setOrder(7);
|
||||
return registration;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public FilterRegistrationBean httpCacheFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new HttpCacheFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("httpCacheFilter");
|
||||
registration.addInitParameter("maxAge", String.valueOf(60 * 60 * 24 * 7));
|
||||
registration.setOrder(6);
|
||||
return registration;
|
||||
}
|
||||
|
||||
/**
|
||||
* 防伪造jsessionid
|
||||
*/
|
||||
@Bean
|
||||
public FilterRegistrationBean fakeJSessionIdFilter() {
|
||||
FilterRegistrationBean registration = new FilterRegistrationBean();
|
||||
registration.setFilter(new FakeJSessionIdFilter());
|
||||
registration.addUrlPatterns("/*");
|
||||
registration.setName("fakeJSessionIdFilter");
|
||||
registration.setOrder(5);
|
||||
return registration;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.adc.da.main.config;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||
|
||||
/**
|
||||
* @Author doudxw
|
||||
* @Date 2021/6/30 14:21
|
||||
*/
|
||||
@Configuration
|
||||
public class WebMvcConfig implements WebMvcConfigurer {
|
||||
|
||||
@Value("${picPath}")
|
||||
private String picPath;
|
||||
|
||||
@Value("${uploadFile}")
|
||||
private String uploadFile;
|
||||
|
||||
@Override
|
||||
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
||||
// /home/file/**为前端URL访问路径 后面 file:xxxx为本地磁盘映射
|
||||
registry.addResourceHandler(picPath+"**").addResourceLocations("file://"+uploadFile);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.adc.da.main.schedule;
|
||||
|
||||
/**
|
||||
* @Author sima
|
||||
* @Date 2022/7/15 16:32
|
||||
*/
|
||||
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.ApplicationContextAware;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* @Auther: sima
|
||||
* @Date: 2022/7/15 16:32
|
||||
* 配置类,解决定时任务无法注入的问题
|
||||
*/
|
||||
@Component
|
||||
public class ApplicationContextUtil implements ApplicationContextAware {
|
||||
|
||||
private static ApplicationContext applicationContext;
|
||||
|
||||
public static ApplicationContext getApplicationContext() {
|
||||
return applicationContext;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
|
||||
ApplicationContextUtil.applicationContext = applicationContext;
|
||||
|
||||
}
|
||||
|
||||
|
||||
public static Object getBean(String beanName) {
|
||||
return applicationContext.getBean(beanName);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
//package com.adc.da.main.schedule;
|
||||
//
|
||||
//import com.adc.da.price.service.impl.CarQueryServiceImpl;
|
||||
//import lombok.extern.slf4j.Slf4j;
|
||||
//import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
//import org.springframework.scheduling.annotation.Scheduled;
|
||||
//import org.springframework.stereotype.Component;
|
||||
//
|
||||
///**
|
||||
// * @Author sima
|
||||
// * @Date 2022/7/15 16:32
|
||||
// */
|
||||
//@Component
|
||||
//@EnableScheduling
|
||||
//@Slf4j
|
||||
//public class ScheduleUtil {
|
||||
//
|
||||
//
|
||||
// @Scheduled(cron = "0 0 0 * * ?")
|
||||
//// @Scheduled(cron = "0 */1 * * * ?")
|
||||
// public void updateCarQuery() {
|
||||
// log.debug("开始更新查询表--------------***************--------------");
|
||||
// CarQueryServiceImpl carQueryService= (CarQueryServiceImpl) ApplicationContextUtil.getBean("carQueryServiceImpl");
|
||||
// carQueryService.insert();
|
||||
//// System.out.println(carQueryService);
|
||||
// log.debug("查询表更新完成--------------***************--------------");
|
||||
//
|
||||
// }
|
||||
//}
|
||||
@@ -0,0 +1,133 @@
|
||||
#Development System
|
||||
#spring.datasource.driverClassName = oracle.jdbc.OracleDriver
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//60.247.58.117:50011/ADC
|
||||
##spring.datasource.username = ADC_PLATFORM
|
||||
##spring.datasource.password = ADC_PLATFORM
|
||||
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//192.168.144.136:19290/ADC
|
||||
#spring.datasource.username = EPR
|
||||
#spring.datasource.password = EPR
|
||||
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//192.168.144.103:19290/ADC
|
||||
#spring.datasource.username = EPR_TEST
|
||||
#spring.datasource.password = EPR_TEST
|
||||
|
||||
#spring.datasource.driverClassName = com.mysql.jdbc.Driver
|
||||
#spring.datasource.url = jdbc:mysql://192.168.144.124:3306/cadata2?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#spring.datasource.username = adc_forecast
|
||||
#spring.datasource.password = adc_forecast
|
||||
|
||||
|
||||
#kylin数据库 ds1
|
||||
#spring.datasource.kylin.name=PROJECT_MI
|
||||
#spring.datasource.kylin.driverClassName=org.apache.kylin.jdbc.Driver
|
||||
#spring.datasource.kylin.url=jdbc:kylin://10.64.23.8:7070/PROJECT_MI
|
||||
#spring.datasource.kylin.username=64459
|
||||
#spring.datasource.kylin.password=ichangan_ps9
|
||||
##10s
|
||||
#spring.datasource.kylin.maxWaitTime=10000
|
||||
#spring.datasource.kylin.poolSize=10
|
||||
#
|
||||
##mysql数据库 ds2
|
||||
#spring.datasource.mysql.driverClassName = com.mysql.jdbc.Driver
|
||||
#spring.datasource.mysql.url = jdbc:mysql://192.168.144.80:3306/cadata?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#spring.datasource.mysql.username = root
|
||||
#spring.datasource.mysql.password = root
|
||||
|
||||
spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver
|
||||
spring.datasource.url = jdbc:mysql://121.36.69.172:3307/report-library?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
|
||||
spring.datasource.username = root
|
||||
spring.datasource.password = hzwlsoft.com
|
||||
|
||||
#后端端口
|
||||
server.port=7060
|
||||
|
||||
#验证码后台模式,默认为1:1为不开启,2为开启,3为输错 用户名或密码 ${maxLoginErrorCount} 次 才开启
|
||||
verifyCodeMode=3
|
||||
#仅当验证码模式 ${verifyCodeMode} 为 3时生效,设置错误登录出现验证码的阈值,默认为3
|
||||
maxLoginErrorCount=3
|
||||
|
||||
#密码Base64加密开关,true为开启,false为关闭
|
||||
isPassEncrypted=true
|
||||
#{
|
||||
#"password": "YWJjMTIz",
|
||||
#"username": "YWRtaW4x"
|
||||
#}
|
||||
#swagger 显示api,1为只显示${restPath:/api}前缀的api,0为显示所有api,其他为不显示api
|
||||
swaggerLevel=0
|
||||
|
||||
|
||||
#uploadFile=/EPR/file/EPR/test/
|
||||
#
|
||||
#picPath=/EPR/file/home/pic/
|
||||
|
||||
# 本地存储文件的磁盘地址
|
||||
uploadFile=D:\\work\\idea\\changan\\
|
||||
# 本地文件访问的url地址
|
||||
picPath=/api/home/pic/
|
||||
|
||||
|
||||
serverIp=http://127.0.0.1:7060/
|
||||
|
||||
|
||||
#MAIL_SMTP =smtp.163.com
|
||||
#MAIL_SMTP_PORT=465
|
||||
#MAIL_USERNAME=cagds@catarc.ac.cn
|
||||
#MAIL_PASSWORD=Cagds9760
|
||||
|
||||
MAIL_SMTP =smtp.163.com
|
||||
MAIL_SMTP_PORT=465
|
||||
MAIL_USERNAME=simashihao@163.com
|
||||
MAIL_PASSWORD=VQBNNQBLDIALAYCV
|
||||
|
||||
#MAIL_SMTP =cmp.changan.com
|
||||
#MAIL_SMTP_PORT=25
|
||||
MAIL_POP_PORT=110
|
||||
#MAIL_USERNAME=64459@Any3.com
|
||||
#MAIL_PASSWORD=65316975Xiaoq
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IPANDPORT=http://localhost:7061/
|
||||
|
||||
#redis
|
||||
#Redis服务器地址
|
||||
spring.redis.host=192.168.144.29
|
||||
#spring.redis.host=localhost
|
||||
## Redis服务器连接端口
|
||||
spring.redis.port=6379
|
||||
## Redis服务器连接密码(默认为空)
|
||||
spring.redis.password=123321
|
||||
## 连接超时时间(毫秒)
|
||||
spring.redis.timeout=200000ms
|
||||
## 连接池中的最大空闲连接,默认值是8。
|
||||
spring.redis.jedis.pool.max-idle=50
|
||||
##连接池中的最小空闲连接,默认值是0。
|
||||
spring.redis.jedis.pool.min-idle=10
|
||||
## 如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
|
||||
spring.redis.jedis.pool.max-active=2000
|
||||
## 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException
|
||||
spring.redis.jedis.pool.max-wait=2000ms
|
||||
|
||||
spring.redis.database=6
|
||||
|
||||
|
||||
# ======= 阿里OSS配置 =========
|
||||
aliyun.OSS.endpoint=https://oss-cn-hangzhou.aliyuncs.com
|
||||
aliyun.OSS.accessKeyId= LTAI5tBmUfVF6Z8R6sHTdTG7
|
||||
aliyun.OSS.accessKeySecret= mY6UvWv20Tg2R46ORe6uV5gL6TQloC
|
||||
aliyun.OSS.bucketName=qqxexamplebucket
|
||||
aliyun.OSS.fileMaxSize=10 #文件上传最大M数
|
||||
|
||||
logging.level.com.adc: debug
|
||||
|
||||
|
||||
# ======= ddm权限接口 集成 =========
|
||||
ddm-identity=changan_test
|
||||
ddm-company=9
|
||||
ddm-ras-public-key=
|
||||
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
spring.profiles.active=dev
|
||||
|
||||
###############################################
|
||||
#公共配置部分
|
||||
##############################################
|
||||
# ===============================
|
||||
# = DATA SOURCE
|
||||
# ===============================
|
||||
spring.datasource.type = com.alibaba.druid.pool.DruidDataSource
|
||||
# 下面为连接池的补充设置,应用到上面所有数据源中
|
||||
# 初始化大小,最小,最大
|
||||
spring.datasource.initialSize = 500
|
||||
spring.datasource.minIdle = 500
|
||||
spring.datasource.maxActive = 500
|
||||
# 配置获取连接等待超时的时间
|
||||
spring.datasource.maxWait = 60000
|
||||
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
|
||||
spring.datasource.timeBetweenEvictionRunsMillis = 30000
|
||||
# 配置一个连接在池中最小生存的时间,单位是毫秒
|
||||
spring.datasource.minEvictableIdleTimeMillis = 100000
|
||||
spring.datasource.validationQuery= 'SELECT 1 FROM DUAL'
|
||||
spring.datasource.testWhileIdle = true
|
||||
spring.datasource.testOnBorrow = false
|
||||
spring.datasource.testOnReturn = false
|
||||
# 打开PSCache,并且指定每个连接上PSCache的大小
|
||||
spring.datasource.poolPreparedStatements = true
|
||||
spring.datasource.maxPoolPreparedStatementPerConnectionSize = 20
|
||||
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
|
||||
spring.datasource.filters = stat,wall,log4j
|
||||
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
|
||||
#spring.datasource.connectionProperties = 'druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000'
|
||||
# 合并多个DruidDataSource的监控数据
|
||||
#useGlobalDataSourceStat: true
|
||||
spring.datasource.mergeSql=true
|
||||
spring.datasource.slowSqlMillis=1
|
||||
spring.datasource.logSlowSql=true
|
||||
# ===============================
|
||||
#默认关闭SpringBootActuator
|
||||
endpoints.enabled=false
|
||||
# http-only
|
||||
server.servlet.session.cookie.http-only=true
|
||||
|
||||
# mybatis_config
|
||||
mybatis-plus.config-locations=classpath:mybatis/mybatis-config.xml
|
||||
mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/mysql/**/*.xml
|
||||
|
||||
#显示sql
|
||||
logging.level.com.adc=debug
|
||||
logging.level.org.hibernate=info
|
||||
logging.level.org.springframework=info
|
||||
|
||||
adminPath=/library/a
|
||||
restPath=/library/api
|
||||
portalPath=/library/portalSystem
|
||||
|
||||
#是否使用rsa非对称加密(adc-ad-login:2.3.3-SNAPSHOT支持) 使用时,请设置 isPassEncrypted=false
|
||||
isPassEncrypted=true
|
||||
useRSALogin=true
|
||||
#请您执行main模块下test包com.adc.da.rsa.RSATest 的测试方法 生成公钥及私钥,并由公钥前端加密(前端建议使用 jsencrypt工具包),后端配置useRSALogin=true开启加密,并且将生成的私钥配置到RAS_PRI_KEY
|
||||
RAS_PRI_KEY=MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAq1I/fLYOTKgNCwUavqyfixosEXByKMQ9axZDUefPywi+ftXdPI2tJ6x/7uc+CdST0a3/toqxdSRjrsHMwnnGQQIDAQABAkB5ZPBDiCUdwD5tvpIy5dKvGD59pPXfWR5EESRmlyGwNTlJ/fIV1wL7UsRYoFslAEcHLyKY7kX8wIefqw2k9R8hAiEA6mH2xls2BZ6nftz6aA8V6CSrsZ49qO9l6SPirXrxg0UCIQC7H1WXLHEV65PUaMTNvzuLc43xkac9DZX4FpUXDeuIzQIgXghhjiEH4mdNgas8V0U+H72emIsI597r/wYjqj/55xUCIDATfuQWUP+2xQZ/3ICYL25GxCNarsMq6GsTMj74HpnJAiAb6BqTkVklIMsl2lAZbE49fluSm3YLt4eNnVVdzJkpFg==
|
||||
#{
|
||||
#"password": "SN/qCzazttK/kzezk+bMo/b/aZP0Mqfpl66hj24p2oayZs3/vDmv7MM9+451I5FTaq2jq/EbOxIjiK2zLAiZ5w==",
|
||||
#"username": "SC/dfdsf/kzezk+fd/b/fdf/vDmv7MM9+fd/fds=="
|
||||
#}
|
||||
#useRSALogin=
|
||||
#RAS_PRI_KEY=
|
||||
|
||||
# file模块上传文件的服务器地址
|
||||
file.path=/Users/sxh/uploadFiles
|
||||
|
||||
# ppt图片保存的路径
|
||||
file.pptPath=/pptImg
|
||||
|
||||
# file模块上传文件大小限制
|
||||
spring.servlet.multipart.max-request-size=100MB
|
||||
spring.servlet.multipart.max-file-size=100MB
|
||||
|
||||
# 系统日志类别dev:开发模式不拦截方法记日志, custom:客户自定义需要拦截记日志的方法, sys:系统原设需要拦截记日志的方法
|
||||
sysLogType=dev
|
||||
|
||||
#rabbitMQ
|
||||
spring.rabbitmq.host=192.168.1.219
|
||||
spring.rabbitmq.port=5672
|
||||
spring.rabbitmq.username=guest
|
||||
spring.rabbitmq.password=guest
|
||||
spring.rabbitmq.publisher-confirms=true
|
||||
|
||||
#redis
|
||||
# Redis服务器地址
|
||||
spring.redis.host=221.239.111.146
|
||||
# Redis服务器连接端口
|
||||
spring.redis.port=15777
|
||||
# Redis服务器连接密码(默认为空)
|
||||
spring.redis.password=cvdecs
|
||||
|
||||
#线程池
|
||||
core.pool.size=10
|
||||
max.pool.size=30
|
||||
keep.alive.seconds=60
|
||||
queue.capacity=8
|
||||
|
||||
|
||||
mybatis-plus.configuration.map-underscore-to-camel-case=true
|
||||
|
||||
modelpath=/EPR/file/template/eprmodel.docx
|
||||
|
||||
wordurl=http://localhost:8333/word/make
|
||||
|
||||
#datatype.change=kylin
|
||||
#datatype.change=mysql
|
||||
|
||||
#elastic search
|
||||
#clusterName=elasticsearch
|
||||
#clusterNodes=10.10.0.3:9300
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
${AnsiColor.RED} _ _
|
||||
__ _ __| | ___ __| | __ _
|
||||
/ _` |/ _` |/ __|____ / _` |/ _` |
|
||||
| (_| | (_| | (_|_____| (_| | (_| |
|
||||
\__,_|\__,_|\___| \__,_|\__,_|
|
||||
|
||||
${AnsiColor.YELLOW}------------------------------------------------
|
||||
${AnsiColor.YELLOW} :: ${AnsiColor.YELLOW}@数据资源中心
|
||||
${AnsiColor.YELLOW}------------------------------------------------${AnsiColor.WHITE}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="hibernateCache">
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/hibernate" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Dict" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.officeList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.menuList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="hibernateCache">
|
||||
<!--
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=manual, socketTimeoutMillis=2000, rmiUrls=//localhost:40001/hibernateCache" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
|
||||
properties="hostName=localhost, port=40000, socketTimeoutMillis=2000"/>-->
|
||||
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=automatic,multicastGroupAddress=230.0.0.1, multicastGroupPort=4446" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" />
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/hibernate" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" >
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicatePuts=false,replicateUpdatesViaCopy=false" />
|
||||
</defaultCache>
|
||||
|
||||
<!-- Special objects setting. -->
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Dict" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.officeList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.menuList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="defaultCache">
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/default" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="sysCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="errorCache" maxElementsInMemory="100" timeToIdleSeconds="180" timeToLiveSeconds="300" eternal="false" overflowToDisk="true"/>
|
||||
|
||||
<cache name="cmsCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="shiro-activeSessionCache" maxElementsInMemory="100" overflowToDisk="true"
|
||||
eternal="true" timeToLiveSeconds="0" timeToIdleSeconds="0"
|
||||
diskPersistent="true" diskExpiryThreadIntervalSeconds="600"/>
|
||||
|
||||
<cache name="org.apache.shiro.realm.text.PropertiesRealm-0-accounts"
|
||||
maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="SimplePageCachingFilter" maxElementsInMemory="100" eternal="false" overflowToDisk="true"
|
||||
timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LFU"/>
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="defaultCache">
|
||||
<!--
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=manual, socketTimeoutMillis=2000, rmiUrls=//localhost:40001/mainCache" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
|
||||
properties="hostName=localhost, port=40000, socketTimeoutMillis=2000"/> -->
|
||||
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=automatic,multicastGroupAddress=230.0.0.1, multicastGroupPort=4446" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" />
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/default" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" >
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicatePuts=false,replicateUpdatesViaCopy=false"/>
|
||||
</defaultCache>
|
||||
|
||||
<!-- Special objects setting. -->
|
||||
<cache name="sysCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>
|
||||
</cache>
|
||||
|
||||
<cache name="cmsCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>
|
||||
</cache>
|
||||
|
||||
<cache name="shiro-activeSessionCache" maxElementsInMemory="100" overflowToDisk="true"
|
||||
eternal="true" timeToLiveSeconds="0" timeToIdleSeconds="0"
|
||||
diskPersistent="true" diskExpiryThreadIntervalSeconds="600">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
<cache name="org.apache.shiro.realm.text.PropertiesRealm-0-accounts"
|
||||
maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
<cache name="SimplePageCachingFilter" maxElementsInMemory="100" eternal="false" overflowToDisk="true"
|
||||
timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LFU">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,44 @@
|
||||
#define code path
|
||||
source_root_package=src/main/java
|
||||
resources_root_package=src/main/resources
|
||||
test_root_package=src/test/java
|
||||
webroot_package=src/app
|
||||
|
||||
#define project
|
||||
core_project=/adc-da-configuration
|
||||
#client_project=/data-cloud-report/ui
|
||||
client_project=..
|
||||
|
||||
rest_project=/adc-da-configuration
|
||||
|
||||
#define base class package
|
||||
base_class_package=com.adc.da.base
|
||||
|
||||
#bussi_package[User defined]
|
||||
biz_package=com.adc.da
|
||||
biz_app_package=admin
|
||||
|
||||
|
||||
|
||||
#ftl resource url
|
||||
template_path=template
|
||||
system_encoding=utf-8
|
||||
|
||||
#Search Param num [User defined]
|
||||
table_id=id
|
||||
search_filed_num=1
|
||||
|
||||
#table_prefix=TD_DC_VISUAL_,TD_DC_,dict_,UM_,TD_
|
||||
table_prefix=TS_,TR_,T,dmk.
|
||||
|
||||
#PageType 1: mapper_xml, 2: dao, 3: service, 4: rest, 5: javascript, 6: html
|
||||
|
||||
page_gen_type=1,2,3,4
|
||||
|
||||
|
||||
|
||||
#Not Used
|
||||
mapper_xml_only=false
|
||||
backend_only=true
|
||||
entity_open_type=dialog
|
||||
entity_save_type=form
|
||||
@@ -0,0 +1,30 @@
|
||||
#mysql
|
||||
#----------------------------- mysql ------------------------------------------
|
||||
#diver_name=com.mysql.jdbc.Driver
|
||||
#url=jdbc:mysql://localhost:3306/adc_platform?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#username=root
|
||||
#password=root
|
||||
#database_name=adc_platform
|
||||
|
||||
|
||||
#oracle
|
||||
#----------------------------- oracle ------------------------------------------
|
||||
#diver_name=oracle.jdbc.driver.OracleDriver
|
||||
#url=jdbc:oracle:thin:@60.247.58.117:50011/ADC
|
||||
#username=ADC_PLATFORM
|
||||
#password=ADC_PLATFORM
|
||||
#database_name=adc_platform
|
||||
|
||||
diver_name = com.mysql.jdbc.Driver
|
||||
url = jdbc:mysql://192.168.144.80:3306/cadata?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
username = root
|
||||
password = root
|
||||
database_name=cadata
|
||||
|
||||
#ldap
|
||||
#----------------------------- LDAP ------------------------------------------
|
||||
ldap.connection.url=ldap://localhost:10389
|
||||
ldap.connection.base=dc=wlt,dc=com
|
||||
ldap.connection.username=uid=admin,ou=system
|
||||
ldap.connection.password=12345678
|
||||
ldap.schema.cn=um
|
||||
@@ -0,0 +1,177 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<configuration>
|
||||
|
||||
<!--*****************************property start*****************************-->
|
||||
<!-- 设置变量。定义变量后,可以使“${}”来使用变量。 -->
|
||||
|
||||
<!-- 项目名称 -->
|
||||
<property name="PROJECT_NAME" value="adc-da" />
|
||||
<!-- 定义日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME" value="../logs" />
|
||||
<!-- 定义系统日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME_SYSTEM" value="system" />
|
||||
<!-- 定义Druid日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME_DRUID" value="druid" />
|
||||
<!--*****************************property end*****************************-->
|
||||
|
||||
<!--*****************************appender start*****************************-->
|
||||
<!-- 负责写日志的组件。有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。 -->
|
||||
|
||||
|
||||
<!-- 彩色日志 -->
|
||||
<!-- 彩色日志依赖的渲染类 -->
|
||||
<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
|
||||
<conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
|
||||
<conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
|
||||
<!-- 彩色日志格式 -->
|
||||
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 控制台输出 -->
|
||||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<!-- 对日志进行格式化。 -->
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 系统日志输出:记录所有日志 -->
|
||||
<!-- RollingFileAppender:滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件。 -->
|
||||
<appender name="SYSTEM_ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- 过滤器,打印指定级别的日志 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<!-- 过滤的日志级别 -->
|
||||
<level>INFO</level>
|
||||
<!-- 满足指定级别的日志操作 -->
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<!-- 不满足指定级别的日志操作 -->
|
||||
<onMismatch>ACCEPT</onMismatch>
|
||||
</filter>
|
||||
<!-- rollingPolicy:当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名。 -->
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_SYSTEM}/${PROJECT_NAME}.system_all.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>7</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>100MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 系统错误日志输出 -->
|
||||
<appender name="SYSTEM_ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- 过滤器,只打印ERROR级别的日志 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>ERROR</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_SYSTEM}/${PROJECT_NAME}.system_error.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>100MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- Druid日志输出,用于记录执行INFO级别的慢SQL -->
|
||||
<appender name="DRUID_SLOWSQL_INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- LevelFilter: 级别过滤器,根据日志级别进行过滤 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>INFO</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_DRUID}/${PROJECT_NAME}.druid_info.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>15</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>50MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- Druid打印的日志文件,用于记录执行WARN级别的SQL -->
|
||||
<appender name="DRUID_SLOWSQL_WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
||||
<level>WARN</level>
|
||||
</filter>
|
||||
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_DRUID}/${PROJECT_NAME}.druid_warn.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
||||
<maxFileSize>50MB</maxFileSize>
|
||||
</timeBasedFileNamingAndTriggeringPolicy>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
<!--*****************************appender end*****************************-->
|
||||
|
||||
<!--*****************************logger start*****************************-->
|
||||
<!-- logger用来设置某一个包或者具体的某一个类的日志打印级别、以及指定<appender> -->
|
||||
<!-- <logger>仅有一个name属性,一个可选的level和一个可选的additivity属性。 -->
|
||||
<!-- name:用来指定受此logger约束的某一个包或者具体的某一个类。 -->
|
||||
<!-- level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特殊值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前logger将会继承上级的级别。 -->
|
||||
<!-- additivity:是否向上级logger传递打印信息。默认是true。 -->
|
||||
|
||||
<logger name="com.alibaba.druid" level="INFO" additivity="true">
|
||||
<appender-ref ref="DRUID_SLOWSQL_INFO_FILE"/>
|
||||
</logger>
|
||||
|
||||
<logger name="com.alibaba.druid" level="warn">
|
||||
<appender-ref ref="DRUID_SLOWSQL_WARN_FILE"/>
|
||||
</logger>
|
||||
<!--*****************************logger end*****************************-->
|
||||
|
||||
<!-- 开发环境下的日志配置 -->
|
||||
<springProfile name="dev">
|
||||
<root level="INFO">
|
||||
<appender-ref ref="CONSOLE" />
|
||||
<appender-ref ref="SYSTEM_ALL_FILE"/>
|
||||
</root>
|
||||
</springProfile>
|
||||
|
||||
<!-- 生产环境下的日志配置 -->
|
||||
<springProfile name="prod">
|
||||
<root level="INFO">
|
||||
<appender-ref ref="SYSTEM_ALL_FILE"/>
|
||||
<appender-ref ref="SYSTEM_ERROR_FILE"/>
|
||||
</root>
|
||||
</springProfile>
|
||||
|
||||
</configuration>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 138 KiB |
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-config.dtd">
|
||||
<configuration>
|
||||
<!-- 全局参数 -->
|
||||
<settings>
|
||||
<setting name="callSettersOnNulls" value="true" />
|
||||
</settings>
|
||||
<!-- 配置别名用 -->
|
||||
<typeAliases>
|
||||
|
||||
|
||||
</typeAliases>
|
||||
</configuration>
|
||||
@@ -0,0 +1,297 @@
|
||||
a#阿
|
||||
ao#拗口/违拗/拗断/执拗/拗口/拗口风/拗口令/拗曲/拗性/拗折/警拗
|
||||
ai#艾
|
||||
bang#膀/磅/蚌
|
||||
ba#扒
|
||||
bai#叔伯/百/柏杨/㧳/梵呗/呗佛/呗音/呗唱/呗偈/呗声/呗赞/赞呗
|
||||
bao#剥皮/薄/暴/堡/曝
|
||||
bei#呗
|
||||
beng#蚌埠
|
||||
bi#复辟/臂/秘鲁/泌阳
|
||||
bing#屏息/屏弃/屏气/屏除/屏声
|
||||
bian#扁/便/便宜坊
|
||||
bo#薄荷/单薄/伯/泊/波/柏/萝卜/孛
|
||||
bu#卜/柨
|
||||
can#参
|
||||
cang#藏/欌
|
||||
cen#参差
|
||||
ceng#曾/噌
|
||||
cha#差/刹那/宝刹/一刹/查/碴/喳喳/喀喳
|
||||
chai#公差/差役/专差/官差/听差/美差/办差/差事/差使/肥差/当差/钦差/苦差/出差
|
||||
chan#颤/单于/禅
|
||||
chang#长/厂
|
||||
chao#朝/嘲/焯
|
||||
che#工尺/车
|
||||
chen#称职/匀称/称心/相称/对称
|
||||
cheng#称/乘/澄/噌吰/橙 秤/盛满/盛器/盛饭
|
||||
chu#畜
|
||||
chui#椎心
|
||||
chuai#揣
|
||||
chuan#传
|
||||
chi#匙/尺/吃
|
||||
chong#重庆/重重/虫
|
||||
chou#臭/帱
|
||||
chuang#经幢
|
||||
chuo#绰
|
||||
ci#参差/鳞差/伺候/龟兹
|
||||
cuan#攒聚/攒动/攒集/攒宫/攒所
|
||||
cuo#撮儿/撮要/撮合
|
||||
da#大/嗒
|
||||
dao#叨/帱载/帱察
|
||||
dai#大夫
|
||||
dan#单/弹/掸/澹
|
||||
dang#铛
|
||||
de#的/得
|
||||
di#堤/底/怎的/有的/目的/标的/打的/的确/有的放/的卢/矢之的/言中的/语中的/的士/地/提防/快的/美的
|
||||
diao#蓝调/调调/音调/论调/格调/调令/低调/笔调/基调/强调/声调/滥调/老调/色调/单调/腔调/跑调/曲调/步调/语调/主调/情调
|
||||
ding#丁
|
||||
du#读/都/度
|
||||
dou#全都/句读
|
||||
duo#舵/测度/忖度/揣度/猜度
|
||||
dun#粮囤/盾/顿/沌/敦
|
||||
e#阿谀/阿胶/阿弥/恶/擜
|
||||
er#儿
|
||||
fan#番
|
||||
feng#冯
|
||||
fei#婔
|
||||
fo#佛
|
||||
fu#仿佛/果脯/罘/莩
|
||||
fou#否
|
||||
fiao#覅
|
||||
ga#咖喱/伽马/嘎/戛纳
|
||||
gai#盖
|
||||
gao#告
|
||||
gang#扛鼎
|
||||
ge#革/蛤蚧/文蛤/蛤蜊/咯
|
||||
gei#给
|
||||
geng#脖颈
|
||||
gong#女红/共
|
||||
gu#谷/中鹄/鼓
|
||||
gui#龟/柜/硅/倭傀/傀异/傀然/傀垒/傀怪/傀卓/傀奇/傀伟/傀民/傀俄/琦傀/奇傀
|
||||
gua#呱
|
||||
guan#纶巾/东莞
|
||||
guang#广
|
||||
ha#蛤/哈/虾蟆
|
||||
hai#还/嗨/咳声/咳笑
|
||||
hao#貉子/貉绒
|
||||
hang#夯/总行/分行/支行/行业/排行/行情/央行/商行/外行/银行/中行/交行/招行/农行/工行/建行/商行/酒行/麻行/琴行/行业/同行/行列/行货/行会/行家/巷道/引吭/扼吭/批吭/搤吭/高吭/喉吭/咔吭/絶吭/吭嗌/吭咽/吭首
|
||||
he#和/合/核/鶴/猲
|
||||
heng#道行/涥
|
||||
hu#鹄/水浒/嗀/唬
|
||||
hua#滑/呚/椛
|
||||
huan#归还/放还/奉还/圜
|
||||
hui#会/浍河/媈/灳/哕/瑗珲
|
||||
hong#红/虹
|
||||
huo#软和/热和/暖和
|
||||
hun#尡/珲
|
||||
ji#病革/给养/自给/给水/薪给/给予/供给/稽/缉/藉/奇数/亟/诘屈/荠菜/愱
|
||||
jia#雪茄/伽/家/价/贾/戛
|
||||
jian#见/浅浅
|
||||
jiang#降
|
||||
jiao#嚼舌/嚼字/嚼蜡/角/剿/饺/脚/蕉/矫/睡觉/侥/校对/校验/校正/校准/审校/校场/校核/校勘/校订/校阅/校样
|
||||
jie#解/慰藉/蕴藉/诘/媘/煯
|
||||
jin#矜/劲/禁
|
||||
jing#颈/景/强劲/劲风/劲旅/劲敌/劲射/苍劲/遒劲/劲草
|
||||
jiong#炅
|
||||
ju#咀/居/桔/句/婮
|
||||
jun#均
|
||||
juan#棚圈/圈养/猪圈/羊圈
|
||||
jue#主角/角色/旦角/女角/丑角/角力/名角/配角/嚼/觉/䏐
|
||||
jun#龟裂/俊
|
||||
ka#咖/卡/喀
|
||||
kai#楷
|
||||
kang#扛
|
||||
ke#咳/壳
|
||||
keng#吭
|
||||
kuai#会计/财会/浍
|
||||
kui#傀
|
||||
kuo#括
|
||||
la#癞痢/腊/蜡
|
||||
lai#癞疮/癞子/癞蛤/癞皮
|
||||
lao#积潦/络子/落枕/落价/粩/姥
|
||||
le#乐/勒/了
|
||||
lei#勒紧
|
||||
lo#然咯
|
||||
lou#佝偻/泄露/露面/露脸/露骨/露底/露馅/露一手/露相/露马脚/露怯
|
||||
long#里弄/弄堂/泷
|
||||
li#跞/礼/櫔/栃
|
||||
liao#了解/了结/明了/了得/末了/未了/了如/潦/撩
|
||||
liang#靓/俩
|
||||
lie#挘
|
||||
lin#崊
|
||||
ling#霗/令
|
||||
liu#六/遛
|
||||
lu#碌/陆/露
|
||||
luo#络/落/漯/囖/洜/泺
|
||||
lv#率/绿
|
||||
lve#鋢/稤
|
||||
lun#纶
|
||||
ma#嫲/抹布/抹脸/抹桌子/摩挲
|
||||
mai#埋
|
||||
man#埋怨/蔓
|
||||
mai#脉
|
||||
mang#氓/芒
|
||||
mao#冒
|
||||
me#嚒
|
||||
men#椚
|
||||
meng#群氓/盟/癦
|
||||
mei#没/旀
|
||||
mo#淹没/没收/出没/沉没/没落/吞没/覆没/没入/埋没/鬼没/隐没/湮没/辱没/脉脉/模/摩/抹
|
||||
mou#绸缪/牟
|
||||
mi#秘/泌尿/分泌/谜/檷枸
|
||||
mian#渑
|
||||
ming#掵
|
||||
miu#谬/谬论/纰缪
|
||||
mu#大模/字模/模板/模样/模具/装模/模子/牟尼/子牟/夷牟/悬牟/相牟/头牟/宾牟/曹牟/岑牟/兜牟/卢牟/弥牟/牟食/牟槊/牟衫/牟光/牟牟/牟甲
|
||||
na#哪/娜/那
|
||||
nao#臑
|
||||
nan#南
|
||||
ne#哪吒/呢
|
||||
nei#氞
|
||||
neus#莻
|
||||
nong#弄/燶
|
||||
ni#毛呢/花呢/呢绒/线呢/呢料/呢子/呢喃/溺/檷
|
||||
niao#尿/鸟/便溺
|
||||
nian#粘膜/粘度/粘土/粘合剂/粘液/粘稠/粘合/粘着/粘结/粘性/粘附/不粘锅/粘糊/粘虫/粘聚/粘滞/焾/哖
|
||||
niang#酿
|
||||
nin#脌
|
||||
ning#倿/拧
|
||||
niu#拗/汼
|
||||
nu#努
|
||||
nuo#婀娜/袅娜/喏
|
||||
nv#女
|
||||
nve#疟/硸
|
||||
o#喔/筽
|
||||
ou#膒
|
||||
pa#扒手/扒窃/扒外/扒分/扒糕/扒灰/扒犁/扒龙/扒搂/扒山虎/扒艇
|
||||
pai#派/迫击/迫击炮
|
||||
pao#刨/炮/萢
|
||||
pan#番禺
|
||||
pang#胖/膀/磅
|
||||
pei#蓜
|
||||
pi#辟/否极/臧否/龙陂/芘
|
||||
pian#扁舟/便宜/魸
|
||||
piao#朴姓/饿莩/饥莩/葭莩
|
||||
pin#穦
|
||||
ping#屏/苹/冯河
|
||||
po#湖泊/血泊 /迫/朴刀/坡/陂
|
||||
pu#一曝十寒/里堡/十里堡/脯/朴/曝晒/瀑/埔
|
||||
qi#期/其/泣/祇
|
||||
qiu#龟兹/湭
|
||||
qi#稽首/缉鞋/栖/奇/漆/齐
|
||||
qia#卡脖/卡子/关卡/卡壳/哨卡/边卡/发卡/峠
|
||||
qiao#雀盲/雀子/地壳/甲壳/躯壳
|
||||
qian#纤/乾/浅
|
||||
qiang#强/㛨/㩖/䅚/䵁
|
||||
qie#茄/趔趄/聺/籡
|
||||
qin#亲/沁
|
||||
qing#干亲/亲家
|
||||
qiong#熍
|
||||
qu#区/趣/爠
|
||||
quan#圈/券
|
||||
que#雀/炔
|
||||
re#声喏/唱喏
|
||||
rong#嬫
|
||||
ruo#若/嵶
|
||||
saeng#栍
|
||||
sang#槡
|
||||
sai#塞/嘥
|
||||
sao#螦
|
||||
se#堵塞/搪塞/茅塞/闭塞/鼻塞/梗塞/阻塞/淤塞/拥塞/哽塞/色
|
||||
sha#莎/刹车/急刹/厦/杉木/杉篙
|
||||
shai#色子
|
||||
shao#勺/红苕
|
||||
shan#姓单/单县/杉/敾/禅让/受禅/禅变/禅代/禅诰
|
||||
shang#衣裳
|
||||
she#拾级/折本/射/蛇
|
||||
shen#沙参/野参/参王/人参/红参/丹参/山参/海参/鹿参/什么/身/沈/桑椹/食椹/烂椹/木椹
|
||||
sheng#野乘/千乘/史乘/省/晟/盛/陹/渑水
|
||||
shi#钥匙/什/识/似的/食/石/氏/拾/适/瑡
|
||||
shiwa#瓧
|
||||
shuai#表率/率性/率直/率真/粗率/率领/轻率/直率/草率/大率/坦率/衰
|
||||
shuang#泷水/鏯
|
||||
shu#属/数/术/熟
|
||||
shui#游说
|
||||
shuo#数见/说
|
||||
si#伺/似/思
|
||||
sou#蓃/摗
|
||||
su#宿/鯂
|
||||
sui#尿泡
|
||||
ta#拓片/拓印/拓本/拓墨/拓写/拓手/拓工/碑拓/疲沓/拖沓/杂沓/沓/塔/鸿塔
|
||||
tang#汤/镗
|
||||
tao#陶
|
||||
tan#反弹/弹性/弹簧/弹力/弹奏/弹跳/弹指/弹劾/弹唱/弹射/弹性体/吹弹/评弹/乱弹琴/弹压/弹指/弹簧/弹冠/弹雀/弹雀/弹丝/弹丸/澹台
|
||||
te#脦
|
||||
teng#虅
|
||||
ti#提/体
|
||||
tiao#调/苕
|
||||
ting#町/听
|
||||
tong#通
|
||||
tu#迌
|
||||
tuan#湪
|
||||
tui#褪
|
||||
tuo#拓/袥
|
||||
tun#囤/屯
|
||||
wei#尾/蔚/圩堤/圩垸/圩田/圩子/赶圩/歌圩
|
||||
weng#攚
|
||||
wu#无/可恶/交恶/好恶/厌恶/憎恶/嫌恶/痛恶/深恶/兀
|
||||
wan#藤蔓/枝蔓/根蔓/蔓草/瓜蔓/蔓儿/莞/万/百万/皖
|
||||
wang#亡
|
||||
wai#崴
|
||||
xia#虾/吓/夏/厦门/厦大/唬杀
|
||||
xi#栖/系/蹊/洗/溪/戏/焁/铣/褶衣/褶裤
|
||||
xiao#校/切削/削面/刀削/刮削
|
||||
xian#纤细/光纤/纤巧/纤柔/纤小/纤维/纤瘦/纤纤/化纤/纤秀/棉纤/纤尘/铣铁/金铣
|
||||
xiang#投降/巷
|
||||
xie#解数/出血/采血/换血/血糊/尿血/淤血/放血/血晕/血淋/便血/吐血/咯血/叶韵/蝎/蝎子/邪/猲猲
|
||||
xin#嬜/邤
|
||||
xiu#铜臭/乳臭/成宿/星宿/璓
|
||||
xin#馨/信/鸿信
|
||||
xing#深省/省视/内省/不省人事/省悟/省察/行/荥
|
||||
xiong#匂
|
||||
xu#牧畜/畜产/畜牧/畜养/并畜/畜锐/吁/圩/浒
|
||||
xuan#箮
|
||||
xue#削/血/樰
|
||||
xun#荨/寻
|
||||
ya#琊
|
||||
yao#钥/耀/曜/佋侥/侥觎/侥僺/侥利/侥傒/侥觊/侥会/侥滥/侥望/侥求/侥竞/侥薄/侥躐/侥取/侥奇/侥忝/侥速/侥冀/侥冒/疟子
|
||||
yan#咽/殷红/朱殷/腌/烟/曕
|
||||
ye#液/抽咽/哽咽/咽炎/呜咽/幽咽/悲咽/叶/葉/璍/潱/拽步/拽扶/拽扎
|
||||
yi#自艾/遗/屹/嬄/噫
|
||||
yin#殷/栶
|
||||
ying#荥经/緓/灜
|
||||
yo#杭育
|
||||
yong#涌/硧
|
||||
you#牗
|
||||
yu#余/呼吁/吁请/吁求/育/熨帖/熨烫/於
|
||||
yuan#员/茒/圜丘
|
||||
yun#熨
|
||||
yue#约/乐音/器乐/乐律/乐章/音乐/乐理/民乐/乐队/声乐/奏乐/弦乐/乐坛/管乐/配乐/乐曲/乐谱/锁钥/密钥/乐团/乐器/嬳/咽哕/唾哕/发哕/干哕/哕吐/哕饭/哕呕/哕息/哕厥/哕噫/哕逆/哕咽/哕骂/哕心/哕喈/口哕/呕哕
|
||||
za#绑扎/结扎/包扎/捆扎/咱家
|
||||
zan#攒/咱
|
||||
zang#宝藏/藏历/藏文/藏语/藏青/藏族/藏医/藏药/藏蓝/西藏
|
||||
zai#牛仔/龟仔/龙仔/鼻仔/羊仔/仔仔/麻仔/麵包仔/麦旺仔/鸿仔/煲仔/福仔/畠
|
||||
zao#栆
|
||||
ze#择
|
||||
zeng#曾国藩/曾孙/曾祖父/曾祖/曾祖母/曾孙女/曾巩/囎/缯
|
||||
zong#综/繌
|
||||
zha#扎/柞狭/柞薪/柞子/柞鄂/柞叶/柞撒/槱柞/一柞/五柞宫/五柞/雠柞/芟柞/蜡祭/喳
|
||||
zhai#宅/夈/择席/择菜
|
||||
zhan#粘
|
||||
zhang#列车长/行长/村长/镇长/乡长/区长/县长/市长/省长/会长/班长/排长/连长/营长/团长/旅长/师长/军长/委员长/局长/厅长/所长/部长/组长/生长/长大/长高/长个/
|
||||
zhao#朝朝/明朝/朝晖/朝夕/朝思/今朝/朝气/朝三/朝秦/朝霞/鹰爪/龙爪/魔爪/爪牙/着急/着迷/着火/怎么着/正着/着凉/一着/犯不着/着数/这么着/犯得着/着慌/着忙/数得着/龙爪槐/嘲哳/嘲惹
|
||||
zhe#折/着/褶
|
||||
zhen#殝/椹
|
||||
zhi#标识/吱/殖/枝/方祇/后祇/皇祇/黄祇/皇地祇/金祇/祇树/月氏
|
||||
zhong#重/种
|
||||
zhou#粥
|
||||
zhu#属意/著/駯
|
||||
zhua#爪子
|
||||
zhuai#拽
|
||||
zhuan#芈月传/外传/传记/自传/正传/小传/评传/传略/别传
|
||||
zhui#椎/隹
|
||||
zhuo#执著/着装/着落/着意/着力/附着/着笔/胶着/着实/衣着/着眼/着想/着重/穿着/执着/着墨/着实/沉着/着陆/着想/着色/焯见/焯烁/辉焯
|
||||
zhuang#幢房/一幢/幢楼/庒
|
||||
zi#仔/兹
|
||||
zu#足
|
||||
zuo#柞/穝
|
||||
@@ -0,0 +1,3 @@
|
||||
127.0.0.1
|
||||
localhost
|
||||
index.html
|
||||
@@ -0,0 +1,12 @@
|
||||
pdf
|
||||
doc
|
||||
docx
|
||||
xlsx
|
||||
xls
|
||||
zip
|
||||
rar
|
||||
jpg
|
||||
jpge
|
||||
png
|
||||
gif
|
||||
ppt
|
||||
@@ -0,0 +1 @@
|
||||
/upload/
|
||||
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID"
|
||||
version="2.5" metadata-complete="true">
|
||||
<display-name>Archetype Created Web Application</display-name>
|
||||
|
||||
<listener>
|
||||
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
|
||||
</listener>
|
||||
|
||||
<!-- Spring字符集过滤器 -->
|
||||
<filter>
|
||||
<filter-name>SpringEncodingFilter</filter-name>
|
||||
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>encoding</param-name>
|
||||
<param-value>UTF-8</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>forceEncoding</param-name>
|
||||
<param-value>true</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>SpringEncodingFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 设计路径变量值 -->
|
||||
<context-param>
|
||||
<param-name>webAppRootKey</param-name>
|
||||
<param-value>springmvc.root</param-value>
|
||||
</context-param>
|
||||
|
||||
|
||||
<listener>
|
||||
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
|
||||
</listener>
|
||||
|
||||
|
||||
|
||||
<welcome-file-list>
|
||||
<welcome-file>index.html</welcome-file>
|
||||
</welcome-file-list>
|
||||
|
||||
</web-app>
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.adc.da.doc;
|
||||
|
||||
import io.github.swagger2markup.GroupBy;
|
||||
import io.github.swagger2markup.Language;
|
||||
import io.github.swagger2markup.Swagger2MarkupConfig;
|
||||
import io.github.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.swagger2markup.builder.Swagger2MarkupConfigBuilder;
|
||||
import io.github.swagger2markup.markup.builder.MarkupLanguage;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import java.net.URL;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
|
||||
public class DocGenerate {
|
||||
|
||||
@Test
|
||||
public void generateDocs() throws Exception {
|
||||
|
||||
Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
|
||||
.withMarkupLanguage(MarkupLanguage.MARKDOWN)
|
||||
// .withMarkupLanguage(MarkupLanguage.ASCIIDOC)
|
||||
.withOutputLanguage(Language.ZH)
|
||||
.withPathsGroupedBy(GroupBy.TAGS)
|
||||
.withGeneratedExamples()
|
||||
.withoutInlineSchema()
|
||||
.build();
|
||||
|
||||
Swagger2MarkupConverter.from(new URL("http://localhost:8080/v2/api-docs"))
|
||||
.withConfig(config)
|
||||
.build()
|
||||
.toFile(Paths.get("./docs/api"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
package com.adc.da.gen;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
|
||||
import com.codemagic.DbCodeGenerateFactory;
|
||||
|
||||
public class CodeUtil {
|
||||
|
||||
public CodeUtil() {}
|
||||
|
||||
public static void main(String args[]) {
|
||||
|
||||
String entityPackage;
|
||||
|
||||
|
||||
|
||||
entityPackage = "configuration";
|
||||
|
||||
DbCodeGenerateFactory.codeGenerate("dmk.dmk_mi_wide_table_configuration", entityPackage);
|
||||
DbCodeGenerateFactory.codeGenerate("dmk.dmk_mi_wide_table_configuration", entityPackage);
|
||||
// DbCodeGenerateFactory.codeGenerate("TS_ROLE", entityPackage);
|
||||
// DbCodeGenerateFactory.codeGenerate("TS_MENU", entityPackage);
|
||||
|
||||
// testOracle();
|
||||
}
|
||||
|
||||
|
||||
public static void testOracle()
|
||||
{
|
||||
Connection con = null;// 创建一个数据库连接
|
||||
PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
|
||||
ResultSet result = null;// 创建一个结果集对象
|
||||
try
|
||||
{
|
||||
Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
|
||||
System.out.println("开始尝试连接数据库!");
|
||||
String url = "jdbc:oracle:thin:@//192.168.5.171:1521/orcl";// 127.0.0.1是本机地址,XE是精简版Oracle的默认数据库名
|
||||
String user = "adcepis_test";// 用户名,系统默认的账户名
|
||||
String password = "adcepis_test";// 你安装时选设置的密码
|
||||
con = DriverManager.getConnection(url, user, password);// 获取连接
|
||||
System.out.println("连接成功!");
|
||||
String sql = "select * from TEST";// 预编译语句,“?”代表参数
|
||||
pre = con.prepareStatement(sql);// 实例化预编译语句
|
||||
result = pre.executeQuery();// 执行查询,注意括号中不需要再加参数
|
||||
while (result.next())
|
||||
// 当结果集不为空时
|
||||
System.out.println("学号:" + result.getInt("id") );
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
|
||||
// 注意关闭的顺序,最后使用的最先关闭
|
||||
if (result != null)
|
||||
result.close();
|
||||
if (pre != null)
|
||||
pre.close();
|
||||
if (con != null)
|
||||
con.close();
|
||||
System.out.println("数据库连接已关闭!");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
package com.adc.da.mp;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||
import com.baomidou.mybatisplus.generator.AutoGenerator;
|
||||
import com.baomidou.mybatisplus.generator.InjectionConfig;
|
||||
import com.baomidou.mybatisplus.generator.config.*;
|
||||
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
|
||||
import com.baomidou.mybatisplus.generator.config.rules.DateType;
|
||||
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
|
||||
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class CodeGenerator {
|
||||
|
||||
private static String moduleName = "demo"; //模块名称
|
||||
private static String author = "Alex"; //作者
|
||||
private static String projectPath = "D:\\workspace\\workspace_adc-da-components\\adc-da-demo"; //代码生成路径
|
||||
private static String[] tableNames = new String[] {"TS_TEST"}; //需要生成代码的数据库表名
|
||||
private static String[] tablePrefix = new String[] { "TR_", "TS_", "V_" }; //表前缀
|
||||
|
||||
private static String url = "jdbc:oracle:thin:@60.247.58.117:50011:ADC"; //数据源url
|
||||
private static String username = "ADC_PLATFORM"; //数据源连接用户名
|
||||
private static String password = "ADC_PLATFORM"; //数据源连接密码
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
// 代码生成器
|
||||
AutoGenerator mpg = new AutoGenerator();
|
||||
|
||||
// 全局配置
|
||||
GlobalConfig gc = new GlobalConfig();
|
||||
gc.setOutputDir(projectPath + "/src/main/java");
|
||||
gc.setAuthor(author);
|
||||
gc.setOpen(false);
|
||||
gc.setSwagger2(true); //实体属性 Swagger2 注解
|
||||
gc.setBaseColumnList(true);
|
||||
gc.setBaseResultMap(true);
|
||||
gc.setIdType(IdType.UUID);
|
||||
gc.setDateType(DateType.ONLY_DATE);
|
||||
gc.setFileOverride(true);
|
||||
gc.setActiveRecord(true);
|
||||
gc.setControllerName("%sEOController");
|
||||
gc.setServiceName("I%sEOService");
|
||||
gc.setServiceImplName("%sEOServiceImpl");
|
||||
// gc.setEntityName("%sEO");
|
||||
gc.setMapperName("%sEODao");
|
||||
gc.setXmlName("%sEOMapper");
|
||||
// gc.setEnableCache(true);
|
||||
mpg.setGlobalConfig(gc);
|
||||
|
||||
// 数据源配置
|
||||
DataSourceConfig dsc = new DataSourceConfig();
|
||||
dsc.setUrl(url);
|
||||
// dsc.setSchemaName("public");
|
||||
dsc.setDriverName("oracle.jdbc.OracleDriver");
|
||||
dsc.setUsername(username);
|
||||
dsc.setPassword(password);
|
||||
mpg.setDataSource(dsc);
|
||||
|
||||
// 包配置
|
||||
PackageConfig pc = new PackageConfig();
|
||||
pc.setModuleName(moduleName);
|
||||
pc.setParent("com.adc.da");
|
||||
pc.setMapper("dao");
|
||||
mpg.setPackageInfo(pc);
|
||||
|
||||
// 自定义配置
|
||||
InjectionConfig cfg = new InjectionConfig() {
|
||||
@Override
|
||||
public void initMap() {
|
||||
// Map<String, Object> map = new HashMap<>();
|
||||
// map.put("restPath", "${restPath}");
|
||||
// this.setMap(map);
|
||||
}
|
||||
};
|
||||
|
||||
// 如果模板引擎是 freemarker
|
||||
String templatePath = "/templates/mapper.xml.ftl";
|
||||
String templatePath2 = "/templates/entity.java.ftl";
|
||||
// 如果模板引擎是 velocity
|
||||
// String templatePath = "/templates/mapper.xml.vm";
|
||||
|
||||
// 自定义输出配置
|
||||
List<FileOutConfig> focList = new ArrayList<>();
|
||||
// 自定义配置会被优先输出
|
||||
focList.add(new FileOutConfig(templatePath) {
|
||||
@Override
|
||||
public String outputFile(TableInfo tableInfo) {
|
||||
// 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!
|
||||
return projectPath + "/src/main/resources/mybatis/mapper/" + moduleName+ "/" + tableInfo.getEntityName() + "EOMapper" +
|
||||
StringPool.DOT_XML;
|
||||
}
|
||||
});
|
||||
focList.add(new FileOutConfig(templatePath2) {
|
||||
@Override
|
||||
public String outputFile(TableInfo tableInfo) {
|
||||
// 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!
|
||||
return projectPath + "/src/main/java/com/adc/da/" + moduleName + "/entity/" + tableInfo.getEntityName() + "EO" +
|
||||
StringPool.DOT_JAVA;
|
||||
}
|
||||
});
|
||||
/*
|
||||
cfg.setFileCreate(new IFileCreate() {
|
||||
@Override
|
||||
public boolean isCreate(ConfigBuilder configBuilder, FileType fileType, String filePath) {
|
||||
// 判断自定义文件夹是否需要创建
|
||||
checkDir("调用默认方法创建的目录");
|
||||
return false;
|
||||
}
|
||||
});
|
||||
*/
|
||||
cfg.setFileOutConfigList(focList);
|
||||
mpg.setCfg(cfg);
|
||||
|
||||
// 配置模板
|
||||
TemplateConfig templateConfig = new TemplateConfig();
|
||||
|
||||
// 配置自定义输出模板
|
||||
//指定自定义模板路径,注意不要带上.ftl/.vm, 会根据使用的模板引擎自动识别
|
||||
// templateConfig.setEntity("templates/entity2.java");
|
||||
// templateConfig.setService();
|
||||
// templateConfig.setController();
|
||||
|
||||
templateConfig.setEntity(null);
|
||||
// templateConfig.setService(null);
|
||||
// templateConfig.setServiceImpl(null);
|
||||
// templateConfig.setController(null);
|
||||
// templateConfig.setMapper(null);
|
||||
templateConfig.setXml(null);
|
||||
mpg.setTemplate(templateConfig);
|
||||
|
||||
// 策略配置
|
||||
StrategyConfig strategy = new StrategyConfig();
|
||||
strategy.setControllerMappingHyphenStyle(false);
|
||||
strategy.setEntityTableFieldAnnotationEnable(true);
|
||||
strategy.setEntityColumnConstant(true);
|
||||
strategy.setNaming(NamingStrategy.underline_to_camel);
|
||||
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
|
||||
strategy.setEntityLombokModel(true);
|
||||
strategy.setEntitySerialVersionUID(true);
|
||||
// strategy.setInclude("TR_PROPERTY_ENGINE", "TR_PROPERTY_VEHICLE", "TR_PROPERTY_VEHICLE_MODEL", "TR_ROLE_MENU",
|
||||
// "TR_USER_ROLE", "TS_DEPARTMENT", "TS_FILE", "TS_LOG", "TS_MENU", "TS_PROPERTY", "TS_ROLE",
|
||||
// "TS_TENANT", "TS_USER", "TS_AREA", "TT_CHIP", "TT_ENGINE", "TT_SIM", "TT_TERMINAL",
|
||||
// "TT_VEHICLE", "TT_VEHICLE_MODEL", "V_TENANT_PAGE", "V_USER_PAGE", "V_DEPARTMENT_PAGE",
|
||||
// "V_ROLE_PAGE");
|
||||
// strategy.setInclude("TR_ROLE_MENU", "TR_USER_ROLE", "TS_DEPARTMENT", "TS_FILE", "TS_LOG", "TS_MENU",
|
||||
// "TS_PROPERTY", "TS_ROLE", "TS_TENANT", "TS_USER");
|
||||
// strategy.setInclude("TR_PROPERTY_ENGINE", "TR_PROPERTY_VEHICLE", "TR_PROPERTY_VEHICLE_MODEL", "TT_CHIP",
|
||||
// "TT_ENGINE", "TT_SIM", "TT_TERMINAL", "TT_VEHICLE", "TT_VEHICLE_MODEL");
|
||||
// strategy.setInclude("V_TERMINAL_PAGE","TT_CHIP","TT_TERMINAL");
|
||||
// strategy.setInclude("TS_DEPARTMENT");
|
||||
// strategy.setInclude("TS_USER", "TS_TENANT");
|
||||
// strategy.setInclude("V_TENANT_PAGE", "TS_TENANT");
|
||||
// strategy.setRestControllerStyle(true);
|
||||
strategy.setInclude(tableNames);
|
||||
// 公共父类
|
||||
strategy.setSuperControllerClass("com.adc.da.mp.base.BaseController");
|
||||
// 写于父类中的公共字段
|
||||
strategy.setSuperServiceClass("com.adc.da.mp.base.IBaseService");
|
||||
strategy.setSuperEntityClass("com.adc.da.mp.base.BaseEntity");
|
||||
// strategy.setSuperEntityColumns("CREATER_ID", "CREATER_TIME", "UPDATER_ID", "UPDATER_TIME");
|
||||
|
||||
strategy.setRestControllerStyle(true);
|
||||
// strategy.setSuperEntityColumns("id");
|
||||
// strategy.setControllerMappingHyphenStyle(true);
|
||||
strategy.setTablePrefix(tablePrefix);
|
||||
mpg.setStrategy(strategy);
|
||||
mpg.setTemplateEngine(new FreemarkerTemplateEngine());
|
||||
mpg.execute();
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 读取控制台内容
|
||||
* </p>
|
||||
*/
|
||||
public static String scanner(String tip) {
|
||||
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
StringBuilder help = new StringBuilder();
|
||||
help.append("请输入" + tip + ":");
|
||||
System.out.println(help.toString());
|
||||
if (scanner.hasNext()) {
|
||||
String ipt = scanner.next();
|
||||
if (StringUtils.isNotEmpty(ipt)) {
|
||||
return ipt;
|
||||
}
|
||||
}
|
||||
throw new MybatisPlusException("请输入正确的" + tip + "!");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.adc.da.rsa;
|
||||
|
||||
|
||||
import com.adc.da.util.utils.RSAUtils;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class RSATest {
|
||||
@Test
|
||||
public void getRSA(){
|
||||
Map<String,String> map = RSAUtils.createKeys(512);
|
||||
System.out.println("publicKey: "+map.get("publicKey"));
|
||||
System.out.println("privateKey: "+map.get("privateKey"));
|
||||
// System.out.println("model: "+map.get("model"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
#Development System
|
||||
#spring.datasource.driverClassName = oracle.jdbc.OracleDriver
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//60.247.58.117:50011/ADC
|
||||
##spring.datasource.username = ADC_PLATFORM
|
||||
##spring.datasource.password = ADC_PLATFORM
|
||||
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//192.168.144.136:19290/ADC
|
||||
#spring.datasource.username = EPR
|
||||
#spring.datasource.password = EPR
|
||||
|
||||
#spring.datasource.url = jdbc:oracle:thin:@//192.168.144.103:19290/ADC
|
||||
#spring.datasource.username = EPR_TEST
|
||||
#spring.datasource.password = EPR_TEST
|
||||
|
||||
#spring.datasource.driverClassName = com.mysql.jdbc.Driver
|
||||
#spring.datasource.url = jdbc:mysql://192.168.144.124:3306/cadata2?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#spring.datasource.username = adc_forecast
|
||||
#spring.datasource.password = adc_forecast
|
||||
|
||||
|
||||
#kylin数据库 ds1
|
||||
#spring.datasource.kylin.name=PROJECT_MI
|
||||
#spring.datasource.kylin.driverClassName=org.apache.kylin.jdbc.Driver
|
||||
#spring.datasource.kylin.url=jdbc:kylin://10.64.23.8:7070/PROJECT_MI
|
||||
#spring.datasource.kylin.username=64459
|
||||
#spring.datasource.kylin.password=ichangan_ps9
|
||||
##10s
|
||||
#spring.datasource.kylin.maxWaitTime=10000
|
||||
#spring.datasource.kylin.poolSize=10
|
||||
#
|
||||
##mysql数据库 ds2
|
||||
#spring.datasource.mysql.driverClassName = com.mysql.jdbc.Driver
|
||||
#spring.datasource.mysql.url = jdbc:mysql://192.168.144.80:3306/cadata?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#spring.datasource.mysql.username = root
|
||||
#spring.datasource.mysql.password = root
|
||||
|
||||
spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver
|
||||
spring.datasource.url = jdbc:mysql://121.36.69.172:3307/report-library?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
|
||||
spring.datasource.username = root
|
||||
spring.datasource.password = hzwlsoft.com
|
||||
|
||||
#后端端口
|
||||
server.port=7060
|
||||
|
||||
#验证码后台模式,默认为1:1为不开启,2为开启,3为输错 用户名或密码 ${maxLoginErrorCount} 次 才开启
|
||||
verifyCodeMode=3
|
||||
#仅当验证码模式 ${verifyCodeMode} 为 3时生效,设置错误登录出现验证码的阈值,默认为3
|
||||
maxLoginErrorCount=3
|
||||
|
||||
#密码Base64加密开关,true为开启,false为关闭
|
||||
isPassEncrypted=true
|
||||
#{
|
||||
#"password": "YWJjMTIz",
|
||||
#"username": "YWRtaW4x"
|
||||
#}
|
||||
#swagger 显示api,1为只显示${restPath:/api}前缀的api,0为显示所有api,其他为不显示api
|
||||
swaggerLevel=0
|
||||
|
||||
|
||||
#uploadFile=/EPR/file/EPR/test/
|
||||
#
|
||||
#picPath=/EPR/file/home/pic/
|
||||
|
||||
uploadFile=D:\\work\\idea\\changan\\
|
||||
|
||||
picPath=/api/home/pic/
|
||||
|
||||
|
||||
serverIp=http://192.2.10.32:8020/
|
||||
|
||||
|
||||
#MAIL_SMTP =smtp.163.com
|
||||
#MAIL_SMTP_PORT=465
|
||||
#MAIL_USERNAME=cagds@catarc.ac.cn
|
||||
#MAIL_PASSWORD=Cagds9760
|
||||
|
||||
MAIL_SMTP =smtp.163.com
|
||||
MAIL_SMTP_PORT=465
|
||||
MAIL_USERNAME=simashihao@163.com
|
||||
MAIL_PASSWORD=VQBNNQBLDIALAYCV
|
||||
|
||||
#MAIL_SMTP =cmp.changan.com
|
||||
#MAIL_SMTP_PORT=25
|
||||
MAIL_POP_PORT=110
|
||||
#MAIL_USERNAME=64459@Any3.com
|
||||
#MAIL_PASSWORD=65316975Xiaoq
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IPANDPORT=http://localhost:7061/
|
||||
|
||||
#redis
|
||||
#Redis服务器地址
|
||||
spring.redis.host=192.168.144.29
|
||||
#spring.redis.host=localhost
|
||||
## Redis服务器连接端口
|
||||
spring.redis.port=6379
|
||||
## Redis服务器连接密码(默认为空)
|
||||
spring.redis.password=123321
|
||||
## 连接超时时间(毫秒)
|
||||
spring.redis.timeout=200000ms
|
||||
## 连接池中的最大空闲连接,默认值是8。
|
||||
spring.redis.jedis.pool.max-idle=50
|
||||
##连接池中的最小空闲连接,默认值是0。
|
||||
spring.redis.jedis.pool.min-idle=10
|
||||
## 如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
|
||||
spring.redis.jedis.pool.max-active=2000
|
||||
## 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException
|
||||
spring.redis.jedis.pool.max-wait=2000ms
|
||||
|
||||
spring.redis.database=6
|
||||
|
||||
|
||||
# ======= 阿里OSS配置 =========
|
||||
aliyun.OSS.endpoint=https://oss-cn-hangzhou.aliyuncs.com
|
||||
aliyun.OSS.accessKeyId= LTAI5tBmUfVF6Z8R6sHTdTG7
|
||||
aliyun.OSS.accessKeySecret= mY6UvWv20Tg2R46ORe6uV5gL6TQloC
|
||||
aliyun.OSS.bucketName=qqxexamplebucket
|
||||
aliyun.OSS.fileMaxSize=10 #文件上传最大M数
|
||||
|
||||
logging.level.com.adc: debug
|
||||
|
||||
|
||||
# ======= ddm权限接口 集成 =========
|
||||
ddm-identity=changan_test
|
||||
ddm-company=9
|
||||
ddm-ras-public-key=
|
||||
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
spring.profiles.active=dev
|
||||
|
||||
###############################################
|
||||
#公共配置部分
|
||||
##############################################
|
||||
# ===============================
|
||||
# = DATA SOURCE
|
||||
# ===============================
|
||||
spring.datasource.type = com.alibaba.druid.pool.DruidDataSource
|
||||
# 下面为连接池的补充设置,应用到上面所有数据源中
|
||||
# 初始化大小,最小,最大
|
||||
spring.datasource.initialSize = 500
|
||||
spring.datasource.minIdle = 500
|
||||
spring.datasource.maxActive = 500
|
||||
# 配置获取连接等待超时的时间
|
||||
spring.datasource.maxWait = 60000
|
||||
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
|
||||
spring.datasource.timeBetweenEvictionRunsMillis = 30000
|
||||
# 配置一个连接在池中最小生存的时间,单位是毫秒
|
||||
spring.datasource.minEvictableIdleTimeMillis = 100000
|
||||
spring.datasource.validationQuery= 'SELECT 1 FROM DUAL'
|
||||
spring.datasource.testWhileIdle = true
|
||||
spring.datasource.testOnBorrow = false
|
||||
spring.datasource.testOnReturn = false
|
||||
# 打开PSCache,并且指定每个连接上PSCache的大小
|
||||
spring.datasource.poolPreparedStatements = true
|
||||
spring.datasource.maxPoolPreparedStatementPerConnectionSize = 20
|
||||
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
|
||||
spring.datasource.filters = stat,wall,log4j
|
||||
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
|
||||
#spring.datasource.connectionProperties = 'druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000'
|
||||
# 合并多个DruidDataSource的监控数据
|
||||
#useGlobalDataSourceStat: true
|
||||
spring.datasource.mergeSql=true
|
||||
spring.datasource.slowSqlMillis=1
|
||||
spring.datasource.logSlowSql=true
|
||||
# ===============================
|
||||
#默认关闭SpringBootActuator
|
||||
endpoints.enabled=false
|
||||
# http-only
|
||||
server.servlet.session.cookie.http-only=true
|
||||
|
||||
# mybatis_config
|
||||
mybatis-plus.config-locations=classpath:mybatis/mybatis-config.xml
|
||||
mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/mysql/**/*.xml
|
||||
|
||||
#显示sql
|
||||
logging.level.com.adc=debug
|
||||
logging.level.org.hibernate=info
|
||||
logging.level.org.springframework=info
|
||||
|
||||
adminPath=/library/a
|
||||
restPath=/library/api
|
||||
portalPath=/library/portalSystem
|
||||
|
||||
#是否使用rsa非对称加密(adc-ad-login:2.3.3-SNAPSHOT支持) 使用时,请设置 isPassEncrypted=false
|
||||
isPassEncrypted=true
|
||||
useRSALogin=true
|
||||
#请您执行main模块下test包com.adc.da.rsa.RSATest 的测试方法 生成公钥及私钥,并由公钥前端加密(前端建议使用 jsencrypt工具包),后端配置useRSALogin=true开启加密,并且将生成的私钥配置到RAS_PRI_KEY
|
||||
RAS_PRI_KEY=MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAq1I/fLYOTKgNCwUavqyfixosEXByKMQ9axZDUefPywi+ftXdPI2tJ6x/7uc+CdST0a3/toqxdSRjrsHMwnnGQQIDAQABAkB5ZPBDiCUdwD5tvpIy5dKvGD59pPXfWR5EESRmlyGwNTlJ/fIV1wL7UsRYoFslAEcHLyKY7kX8wIefqw2k9R8hAiEA6mH2xls2BZ6nftz6aA8V6CSrsZ49qO9l6SPirXrxg0UCIQC7H1WXLHEV65PUaMTNvzuLc43xkac9DZX4FpUXDeuIzQIgXghhjiEH4mdNgas8V0U+H72emIsI597r/wYjqj/55xUCIDATfuQWUP+2xQZ/3ICYL25GxCNarsMq6GsTMj74HpnJAiAb6BqTkVklIMsl2lAZbE49fluSm3YLt4eNnVVdzJkpFg==
|
||||
#{
|
||||
#"password": "SN/qCzazttK/kzezk+bMo/b/aZP0Mqfpl66hj24p2oayZs3/vDmv7MM9+451I5FTaq2jq/EbOxIjiK2zLAiZ5w==",
|
||||
#"username": "SC/dfdsf/kzezk+fd/b/fdf/vDmv7MM9+fd/fds=="
|
||||
#}
|
||||
#useRSALogin=
|
||||
#RAS_PRI_KEY=
|
||||
|
||||
# file模块上传文件的服务器地址
|
||||
file.path=/Users/sxh/uploadFiles
|
||||
|
||||
# ppt图片保存的路径
|
||||
file.pptPath=/pptImg
|
||||
|
||||
# file模块上传文件大小限制
|
||||
spring.servlet.multipart.max-request-size=100MB
|
||||
spring.servlet.multipart.max-file-size=100MB
|
||||
|
||||
# 系统日志类别dev:开发模式不拦截方法记日志, custom:客户自定义需要拦截记日志的方法, sys:系统原设需要拦截记日志的方法
|
||||
sysLogType=dev
|
||||
|
||||
#rabbitMQ
|
||||
spring.rabbitmq.host=192.168.1.219
|
||||
spring.rabbitmq.port=5672
|
||||
spring.rabbitmq.username=guest
|
||||
spring.rabbitmq.password=guest
|
||||
spring.rabbitmq.publisher-confirms=true
|
||||
|
||||
#redis
|
||||
# Redis服务器地址
|
||||
spring.redis.host=221.239.111.146
|
||||
# Redis服务器连接端口
|
||||
spring.redis.port=15777
|
||||
# Redis服务器连接密码(默认为空)
|
||||
spring.redis.password=cvdecs
|
||||
|
||||
#线程池
|
||||
core.pool.size=10
|
||||
max.pool.size=30
|
||||
keep.alive.seconds=60
|
||||
queue.capacity=8
|
||||
|
||||
|
||||
mybatis-plus.configuration.map-underscore-to-camel-case=true
|
||||
|
||||
modelpath=/EPR/file/template/eprmodel.docx
|
||||
|
||||
wordurl=http://localhost:8333/word/make
|
||||
|
||||
#datatype.change=kylin
|
||||
#datatype.change=mysql
|
||||
|
||||
#elastic search
|
||||
#clusterName=elasticsearch
|
||||
#clusterNodes=10.10.0.3:9300
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
${AnsiColor.RED} _ _
|
||||
__ _ __| | ___ __| | __ _
|
||||
/ _` |/ _` |/ __|____ / _` |/ _` |
|
||||
| (_| | (_| | (_|_____| (_| | (_| |
|
||||
\__,_|\__,_|\___| \__,_|\__,_|
|
||||
|
||||
${AnsiColor.YELLOW}------------------------------------------------
|
||||
${AnsiColor.YELLOW} :: ${AnsiColor.YELLOW}@数据资源中心
|
||||
${AnsiColor.YELLOW}------------------------------------------------${AnsiColor.WHITE}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="hibernateCache">
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/hibernate" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Dict" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.officeList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.menuList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="hibernateCache">
|
||||
<!--
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=manual, socketTimeoutMillis=2000, rmiUrls=//localhost:40001/hibernateCache" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
|
||||
properties="hostName=localhost, port=40000, socketTimeoutMillis=2000"/>-->
|
||||
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=automatic,multicastGroupAddress=230.0.0.1, multicastGroupPort=4446" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" />
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/hibernate" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" >
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicatePuts=false,replicateUpdatesViaCopy=false" />
|
||||
</defaultCache>
|
||||
|
||||
<!-- Special objects setting. -->
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Dict" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Area.officeList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Office.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.childList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Menu.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.menuList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.Role.userList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
<cache name="com.thinkgem.jeesite.modules.sys.entity.User.roleList" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" maxEntriesLocalDisk="100000">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
|
||||
</cache>
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="defaultCache">
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/default" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" />
|
||||
|
||||
<cache name="sysCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="errorCache" maxElementsInMemory="100" timeToIdleSeconds="180" timeToLiveSeconds="300" eternal="false" overflowToDisk="true"/>
|
||||
|
||||
<cache name="cmsCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="shiro-activeSessionCache" maxElementsInMemory="100" overflowToDisk="true"
|
||||
eternal="true" timeToLiveSeconds="0" timeToIdleSeconds="0"
|
||||
diskPersistent="true" diskExpiryThreadIntervalSeconds="600"/>
|
||||
|
||||
<cache name="org.apache.shiro.realm.text.PropertiesRealm-0-accounts"
|
||||
maxElementsInMemory="100" eternal="true" overflowToDisk="true"/>
|
||||
|
||||
<cache name="SimplePageCachingFilter" maxElementsInMemory="100" eternal="false" overflowToDisk="true"
|
||||
timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LFU"/>
|
||||
|
||||
</ehcache>
|
||||
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<ehcache updateCheck="false" name="defaultCache">
|
||||
<!--
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=manual, socketTimeoutMillis=2000, rmiUrls=//localhost:40001/mainCache" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
|
||||
properties="hostName=localhost, port=40000, socketTimeoutMillis=2000"/> -->
|
||||
|
||||
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
|
||||
properties="peerDiscovery=automatic,multicastGroupAddress=230.0.0.1, multicastGroupPort=4446" />
|
||||
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" />
|
||||
|
||||
<diskStore path="java.io.tmpdir/jeesite/ehcache/default" />
|
||||
|
||||
<!-- DefaultCache setting. -->
|
||||
<defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
|
||||
overflowToDisk="true" maxEntriesLocalDisk="100000" >
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicatePuts=false,replicateUpdatesViaCopy=false"/>
|
||||
</defaultCache>
|
||||
|
||||
<!-- Special objects setting. -->
|
||||
<cache name="sysCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>
|
||||
</cache>
|
||||
|
||||
<cache name="cmsCache" maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>
|
||||
</cache>
|
||||
|
||||
<cache name="shiro-activeSessionCache" maxElementsInMemory="100" overflowToDisk="true"
|
||||
eternal="true" timeToLiveSeconds="0" timeToIdleSeconds="0"
|
||||
diskPersistent="true" diskExpiryThreadIntervalSeconds="600">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
<cache name="org.apache.shiro.realm.text.PropertiesRealm-0-accounts"
|
||||
maxElementsInMemory="100" eternal="true" overflowToDisk="true">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
<cache name="SimplePageCachingFilter" maxElementsInMemory="100" eternal="false" overflowToDisk="true"
|
||||
timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LFU">
|
||||
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
|
||||
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
|
||||
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
|
||||
</cache>
|
||||
|
||||
</ehcache>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,44 @@
|
||||
#define code path
|
||||
source_root_package=src/main/java
|
||||
resources_root_package=src/main/resources
|
||||
test_root_package=src/test/java
|
||||
webroot_package=src/app
|
||||
|
||||
#define project
|
||||
core_project=/adc-da-configuration
|
||||
#client_project=/data-cloud-report/ui
|
||||
client_project=..
|
||||
|
||||
rest_project=/adc-da-configuration
|
||||
|
||||
#define base class package
|
||||
base_class_package=com.adc.da.base
|
||||
|
||||
#bussi_package[User defined]
|
||||
biz_package=com.adc.da
|
||||
biz_app_package=admin
|
||||
|
||||
|
||||
|
||||
#ftl resource url
|
||||
template_path=template
|
||||
system_encoding=utf-8
|
||||
|
||||
#Search Param num [User defined]
|
||||
table_id=id
|
||||
search_filed_num=1
|
||||
|
||||
#table_prefix=TD_DC_VISUAL_,TD_DC_,dict_,UM_,TD_
|
||||
table_prefix=TS_,TR_,T,dmk.
|
||||
|
||||
#PageType 1: mapper_xml, 2: dao, 3: service, 4: rest, 5: javascript, 6: html
|
||||
|
||||
page_gen_type=1,2,3,4
|
||||
|
||||
|
||||
|
||||
#Not Used
|
||||
mapper_xml_only=false
|
||||
backend_only=true
|
||||
entity_open_type=dialog
|
||||
entity_save_type=form
|
||||
@@ -0,0 +1,30 @@
|
||||
#mysql
|
||||
#----------------------------- mysql ------------------------------------------
|
||||
#diver_name=com.mysql.jdbc.Driver
|
||||
#url=jdbc:mysql://localhost:3306/adc_platform?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
#username=root
|
||||
#password=root
|
||||
#database_name=adc_platform
|
||||
|
||||
|
||||
#oracle
|
||||
#----------------------------- oracle ------------------------------------------
|
||||
#diver_name=oracle.jdbc.driver.OracleDriver
|
||||
#url=jdbc:oracle:thin:@60.247.58.117:50011/ADC
|
||||
#username=ADC_PLATFORM
|
||||
#password=ADC_PLATFORM
|
||||
#database_name=adc_platform
|
||||
|
||||
diver_name = com.mysql.jdbc.Driver
|
||||
url = jdbc:mysql://192.168.144.80:3306/cadata?characterEncoding=utf-8&&zeroDateTimeBehavior=convertToNull
|
||||
username = root
|
||||
password = root
|
||||
database_name=cadata
|
||||
|
||||
#ldap
|
||||
#----------------------------- LDAP ------------------------------------------
|
||||
ldap.connection.url=ldap://localhost:10389
|
||||
ldap.connection.base=dc=wlt,dc=com
|
||||
ldap.connection.username=uid=admin,ou=system
|
||||
ldap.connection.password=12345678
|
||||
ldap.schema.cn=um
|
||||
@@ -0,0 +1,177 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<configuration>
|
||||
|
||||
<!--*****************************property start*****************************-->
|
||||
<!-- 设置变量。定义变量后,可以使“${}”来使用变量。 -->
|
||||
|
||||
<!-- 项目名称 -->
|
||||
<property name="PROJECT_NAME" value="adc-da" />
|
||||
<!-- 定义日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME" value="../logs" />
|
||||
<!-- 定义系统日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME_SYSTEM" value="system" />
|
||||
<!-- 定义Druid日志文件的存储地址,勿在 LogBack的配置中使用相对路径 -->
|
||||
<property name="LOG_HOME_DRUID" value="druid" />
|
||||
<!--*****************************property end*****************************-->
|
||||
|
||||
<!--*****************************appender start*****************************-->
|
||||
<!-- 负责写日志的组件。有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。 -->
|
||||
|
||||
|
||||
<!-- 彩色日志 -->
|
||||
<!-- 彩色日志依赖的渲染类 -->
|
||||
<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
|
||||
<conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
|
||||
<conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
|
||||
<!-- 彩色日志格式 -->
|
||||
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 控制台输出 -->
|
||||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<!-- 对日志进行格式化。 -->
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 系统日志输出:记录所有日志 -->
|
||||
<!-- RollingFileAppender:滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件。 -->
|
||||
<appender name="SYSTEM_ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- 过滤器,打印指定级别的日志 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<!-- 过滤的日志级别 -->
|
||||
<level>INFO</level>
|
||||
<!-- 满足指定级别的日志操作 -->
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<!-- 不满足指定级别的日志操作 -->
|
||||
<onMismatch>ACCEPT</onMismatch>
|
||||
</filter>
|
||||
<!-- rollingPolicy:当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名。 -->
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_SYSTEM}/${PROJECT_NAME}.system_all.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>7</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>100MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 系统错误日志输出 -->
|
||||
<appender name="SYSTEM_ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- 过滤器,只打印ERROR级别的日志 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>ERROR</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_SYSTEM}/${PROJECT_NAME}.system_error.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>100MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- Druid日志输出,用于记录执行INFO级别的慢SQL -->
|
||||
<appender name="DRUID_SLOWSQL_INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- LevelFilter: 级别过滤器,根据日志级别进行过滤 -->
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>INFO</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_DRUID}/${PROJECT_NAME}.druid_info.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>15</MaxHistory>
|
||||
<!--日志文件最大的大小-->
|
||||
<MaxFileSize>50MB</MaxFileSize>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- Druid打印的日志文件,用于记录执行WARN级别的SQL -->
|
||||
<appender name="DRUID_SLOWSQL_WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
||||
<level>WARN</level>
|
||||
</filter>
|
||||
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<!--日志文件输出的文件名-->
|
||||
<FileNamePattern>${LOG_HOME}/${LOG_HOME_DRUID}/${PROJECT_NAME}.druid_warn.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
||||
<!--日志文件保留天数-->
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
||||
<maxFileSize>50MB</maxFileSize>
|
||||
</timeBasedFileNamingAndTriggeringPolicy>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
<!--*****************************appender end*****************************-->
|
||||
|
||||
<!--*****************************logger start*****************************-->
|
||||
<!-- logger用来设置某一个包或者具体的某一个类的日志打印级别、以及指定<appender> -->
|
||||
<!-- <logger>仅有一个name属性,一个可选的level和一个可选的additivity属性。 -->
|
||||
<!-- name:用来指定受此logger约束的某一个包或者具体的某一个类。 -->
|
||||
<!-- level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特殊值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前logger将会继承上级的级别。 -->
|
||||
<!-- additivity:是否向上级logger传递打印信息。默认是true。 -->
|
||||
|
||||
<logger name="com.alibaba.druid" level="INFO" additivity="true">
|
||||
<appender-ref ref="DRUID_SLOWSQL_INFO_FILE"/>
|
||||
</logger>
|
||||
|
||||
<logger name="com.alibaba.druid" level="warn">
|
||||
<appender-ref ref="DRUID_SLOWSQL_WARN_FILE"/>
|
||||
</logger>
|
||||
<!--*****************************logger end*****************************-->
|
||||
|
||||
<!-- 开发环境下的日志配置 -->
|
||||
<springProfile name="dev">
|
||||
<root level="INFO">
|
||||
<appender-ref ref="CONSOLE" />
|
||||
<appender-ref ref="SYSTEM_ALL_FILE"/>
|
||||
</root>
|
||||
</springProfile>
|
||||
|
||||
<!-- 生产环境下的日志配置 -->
|
||||
<springProfile name="prod">
|
||||
<root level="INFO">
|
||||
<appender-ref ref="SYSTEM_ALL_FILE"/>
|
||||
<appender-ref ref="SYSTEM_ERROR_FILE"/>
|
||||
</root>
|
||||
</springProfile>
|
||||
|
||||
</configuration>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 138 KiB |
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-config.dtd">
|
||||
<configuration>
|
||||
<!-- 全局参数 -->
|
||||
<settings>
|
||||
<setting name="callSettersOnNulls" value="true" />
|
||||
</settings>
|
||||
<!-- 配置别名用 -->
|
||||
<typeAliases>
|
||||
|
||||
|
||||
</typeAliases>
|
||||
</configuration>
|
||||
@@ -0,0 +1,297 @@
|
||||
a#阿
|
||||
ao#拗口/违拗/拗断/执拗/拗口/拗口风/拗口令/拗曲/拗性/拗折/警拗
|
||||
ai#艾
|
||||
bang#膀/磅/蚌
|
||||
ba#扒
|
||||
bai#叔伯/百/柏杨/㧳/梵呗/呗佛/呗音/呗唱/呗偈/呗声/呗赞/赞呗
|
||||
bao#剥皮/薄/暴/堡/曝
|
||||
bei#呗
|
||||
beng#蚌埠
|
||||
bi#复辟/臂/秘鲁/泌阳
|
||||
bing#屏息/屏弃/屏气/屏除/屏声
|
||||
bian#扁/便/便宜坊
|
||||
bo#薄荷/单薄/伯/泊/波/柏/萝卜/孛
|
||||
bu#卜/柨
|
||||
can#参
|
||||
cang#藏/欌
|
||||
cen#参差
|
||||
ceng#曾/噌
|
||||
cha#差/刹那/宝刹/一刹/查/碴/喳喳/喀喳
|
||||
chai#公差/差役/专差/官差/听差/美差/办差/差事/差使/肥差/当差/钦差/苦差/出差
|
||||
chan#颤/单于/禅
|
||||
chang#长/厂
|
||||
chao#朝/嘲/焯
|
||||
che#工尺/车
|
||||
chen#称职/匀称/称心/相称/对称
|
||||
cheng#称/乘/澄/噌吰/橙 秤/盛满/盛器/盛饭
|
||||
chu#畜
|
||||
chui#椎心
|
||||
chuai#揣
|
||||
chuan#传
|
||||
chi#匙/尺/吃
|
||||
chong#重庆/重重/虫
|
||||
chou#臭/帱
|
||||
chuang#经幢
|
||||
chuo#绰
|
||||
ci#参差/鳞差/伺候/龟兹
|
||||
cuan#攒聚/攒动/攒集/攒宫/攒所
|
||||
cuo#撮儿/撮要/撮合
|
||||
da#大/嗒
|
||||
dao#叨/帱载/帱察
|
||||
dai#大夫
|
||||
dan#单/弹/掸/澹
|
||||
dang#铛
|
||||
de#的/得
|
||||
di#堤/底/怎的/有的/目的/标的/打的/的确/有的放/的卢/矢之的/言中的/语中的/的士/地/提防/快的/美的
|
||||
diao#蓝调/调调/音调/论调/格调/调令/低调/笔调/基调/强调/声调/滥调/老调/色调/单调/腔调/跑调/曲调/步调/语调/主调/情调
|
||||
ding#丁
|
||||
du#读/都/度
|
||||
dou#全都/句读
|
||||
duo#舵/测度/忖度/揣度/猜度
|
||||
dun#粮囤/盾/顿/沌/敦
|
||||
e#阿谀/阿胶/阿弥/恶/擜
|
||||
er#儿
|
||||
fan#番
|
||||
feng#冯
|
||||
fei#婔
|
||||
fo#佛
|
||||
fu#仿佛/果脯/罘/莩
|
||||
fou#否
|
||||
fiao#覅
|
||||
ga#咖喱/伽马/嘎/戛纳
|
||||
gai#盖
|
||||
gao#告
|
||||
gang#扛鼎
|
||||
ge#革/蛤蚧/文蛤/蛤蜊/咯
|
||||
gei#给
|
||||
geng#脖颈
|
||||
gong#女红/共
|
||||
gu#谷/中鹄/鼓
|
||||
gui#龟/柜/硅/倭傀/傀异/傀然/傀垒/傀怪/傀卓/傀奇/傀伟/傀民/傀俄/琦傀/奇傀
|
||||
gua#呱
|
||||
guan#纶巾/东莞
|
||||
guang#广
|
||||
ha#蛤/哈/虾蟆
|
||||
hai#还/嗨/咳声/咳笑
|
||||
hao#貉子/貉绒
|
||||
hang#夯/总行/分行/支行/行业/排行/行情/央行/商行/外行/银行/中行/交行/招行/农行/工行/建行/商行/酒行/麻行/琴行/行业/同行/行列/行货/行会/行家/巷道/引吭/扼吭/批吭/搤吭/高吭/喉吭/咔吭/絶吭/吭嗌/吭咽/吭首
|
||||
he#和/合/核/鶴/猲
|
||||
heng#道行/涥
|
||||
hu#鹄/水浒/嗀/唬
|
||||
hua#滑/呚/椛
|
||||
huan#归还/放还/奉还/圜
|
||||
hui#会/浍河/媈/灳/哕/瑗珲
|
||||
hong#红/虹
|
||||
huo#软和/热和/暖和
|
||||
hun#尡/珲
|
||||
ji#病革/给养/自给/给水/薪给/给予/供给/稽/缉/藉/奇数/亟/诘屈/荠菜/愱
|
||||
jia#雪茄/伽/家/价/贾/戛
|
||||
jian#见/浅浅
|
||||
jiang#降
|
||||
jiao#嚼舌/嚼字/嚼蜡/角/剿/饺/脚/蕉/矫/睡觉/侥/校对/校验/校正/校准/审校/校场/校核/校勘/校订/校阅/校样
|
||||
jie#解/慰藉/蕴藉/诘/媘/煯
|
||||
jin#矜/劲/禁
|
||||
jing#颈/景/强劲/劲风/劲旅/劲敌/劲射/苍劲/遒劲/劲草
|
||||
jiong#炅
|
||||
ju#咀/居/桔/句/婮
|
||||
jun#均
|
||||
juan#棚圈/圈养/猪圈/羊圈
|
||||
jue#主角/角色/旦角/女角/丑角/角力/名角/配角/嚼/觉/䏐
|
||||
jun#龟裂/俊
|
||||
ka#咖/卡/喀
|
||||
kai#楷
|
||||
kang#扛
|
||||
ke#咳/壳
|
||||
keng#吭
|
||||
kuai#会计/财会/浍
|
||||
kui#傀
|
||||
kuo#括
|
||||
la#癞痢/腊/蜡
|
||||
lai#癞疮/癞子/癞蛤/癞皮
|
||||
lao#积潦/络子/落枕/落价/粩/姥
|
||||
le#乐/勒/了
|
||||
lei#勒紧
|
||||
lo#然咯
|
||||
lou#佝偻/泄露/露面/露脸/露骨/露底/露馅/露一手/露相/露马脚/露怯
|
||||
long#里弄/弄堂/泷
|
||||
li#跞/礼/櫔/栃
|
||||
liao#了解/了结/明了/了得/末了/未了/了如/潦/撩
|
||||
liang#靓/俩
|
||||
lie#挘
|
||||
lin#崊
|
||||
ling#霗/令
|
||||
liu#六/遛
|
||||
lu#碌/陆/露
|
||||
luo#络/落/漯/囖/洜/泺
|
||||
lv#率/绿
|
||||
lve#鋢/稤
|
||||
lun#纶
|
||||
ma#嫲/抹布/抹脸/抹桌子/摩挲
|
||||
mai#埋
|
||||
man#埋怨/蔓
|
||||
mai#脉
|
||||
mang#氓/芒
|
||||
mao#冒
|
||||
me#嚒
|
||||
men#椚
|
||||
meng#群氓/盟/癦
|
||||
mei#没/旀
|
||||
mo#淹没/没收/出没/沉没/没落/吞没/覆没/没入/埋没/鬼没/隐没/湮没/辱没/脉脉/模/摩/抹
|
||||
mou#绸缪/牟
|
||||
mi#秘/泌尿/分泌/谜/檷枸
|
||||
mian#渑
|
||||
ming#掵
|
||||
miu#谬/谬论/纰缪
|
||||
mu#大模/字模/模板/模样/模具/装模/模子/牟尼/子牟/夷牟/悬牟/相牟/头牟/宾牟/曹牟/岑牟/兜牟/卢牟/弥牟/牟食/牟槊/牟衫/牟光/牟牟/牟甲
|
||||
na#哪/娜/那
|
||||
nao#臑
|
||||
nan#南
|
||||
ne#哪吒/呢
|
||||
nei#氞
|
||||
neus#莻
|
||||
nong#弄/燶
|
||||
ni#毛呢/花呢/呢绒/线呢/呢料/呢子/呢喃/溺/檷
|
||||
niao#尿/鸟/便溺
|
||||
nian#粘膜/粘度/粘土/粘合剂/粘液/粘稠/粘合/粘着/粘结/粘性/粘附/不粘锅/粘糊/粘虫/粘聚/粘滞/焾/哖
|
||||
niang#酿
|
||||
nin#脌
|
||||
ning#倿/拧
|
||||
niu#拗/汼
|
||||
nu#努
|
||||
nuo#婀娜/袅娜/喏
|
||||
nv#女
|
||||
nve#疟/硸
|
||||
o#喔/筽
|
||||
ou#膒
|
||||
pa#扒手/扒窃/扒外/扒分/扒糕/扒灰/扒犁/扒龙/扒搂/扒山虎/扒艇
|
||||
pai#派/迫击/迫击炮
|
||||
pao#刨/炮/萢
|
||||
pan#番禺
|
||||
pang#胖/膀/磅
|
||||
pei#蓜
|
||||
pi#辟/否极/臧否/龙陂/芘
|
||||
pian#扁舟/便宜/魸
|
||||
piao#朴姓/饿莩/饥莩/葭莩
|
||||
pin#穦
|
||||
ping#屏/苹/冯河
|
||||
po#湖泊/血泊 /迫/朴刀/坡/陂
|
||||
pu#一曝十寒/里堡/十里堡/脯/朴/曝晒/瀑/埔
|
||||
qi#期/其/泣/祇
|
||||
qiu#龟兹/湭
|
||||
qi#稽首/缉鞋/栖/奇/漆/齐
|
||||
qia#卡脖/卡子/关卡/卡壳/哨卡/边卡/发卡/峠
|
||||
qiao#雀盲/雀子/地壳/甲壳/躯壳
|
||||
qian#纤/乾/浅
|
||||
qiang#强/㛨/㩖/䅚/䵁
|
||||
qie#茄/趔趄/聺/籡
|
||||
qin#亲/沁
|
||||
qing#干亲/亲家
|
||||
qiong#熍
|
||||
qu#区/趣/爠
|
||||
quan#圈/券
|
||||
que#雀/炔
|
||||
re#声喏/唱喏
|
||||
rong#嬫
|
||||
ruo#若/嵶
|
||||
saeng#栍
|
||||
sang#槡
|
||||
sai#塞/嘥
|
||||
sao#螦
|
||||
se#堵塞/搪塞/茅塞/闭塞/鼻塞/梗塞/阻塞/淤塞/拥塞/哽塞/色
|
||||
sha#莎/刹车/急刹/厦/杉木/杉篙
|
||||
shai#色子
|
||||
shao#勺/红苕
|
||||
shan#姓单/单县/杉/敾/禅让/受禅/禅变/禅代/禅诰
|
||||
shang#衣裳
|
||||
she#拾级/折本/射/蛇
|
||||
shen#沙参/野参/参王/人参/红参/丹参/山参/海参/鹿参/什么/身/沈/桑椹/食椹/烂椹/木椹
|
||||
sheng#野乘/千乘/史乘/省/晟/盛/陹/渑水
|
||||
shi#钥匙/什/识/似的/食/石/氏/拾/适/瑡
|
||||
shiwa#瓧
|
||||
shuai#表率/率性/率直/率真/粗率/率领/轻率/直率/草率/大率/坦率/衰
|
||||
shuang#泷水/鏯
|
||||
shu#属/数/术/熟
|
||||
shui#游说
|
||||
shuo#数见/说
|
||||
si#伺/似/思
|
||||
sou#蓃/摗
|
||||
su#宿/鯂
|
||||
sui#尿泡
|
||||
ta#拓片/拓印/拓本/拓墨/拓写/拓手/拓工/碑拓/疲沓/拖沓/杂沓/沓/塔/鸿塔
|
||||
tang#汤/镗
|
||||
tao#陶
|
||||
tan#反弹/弹性/弹簧/弹力/弹奏/弹跳/弹指/弹劾/弹唱/弹射/弹性体/吹弹/评弹/乱弹琴/弹压/弹指/弹簧/弹冠/弹雀/弹雀/弹丝/弹丸/澹台
|
||||
te#脦
|
||||
teng#虅
|
||||
ti#提/体
|
||||
tiao#调/苕
|
||||
ting#町/听
|
||||
tong#通
|
||||
tu#迌
|
||||
tuan#湪
|
||||
tui#褪
|
||||
tuo#拓/袥
|
||||
tun#囤/屯
|
||||
wei#尾/蔚/圩堤/圩垸/圩田/圩子/赶圩/歌圩
|
||||
weng#攚
|
||||
wu#无/可恶/交恶/好恶/厌恶/憎恶/嫌恶/痛恶/深恶/兀
|
||||
wan#藤蔓/枝蔓/根蔓/蔓草/瓜蔓/蔓儿/莞/万/百万/皖
|
||||
wang#亡
|
||||
wai#崴
|
||||
xia#虾/吓/夏/厦门/厦大/唬杀
|
||||
xi#栖/系/蹊/洗/溪/戏/焁/铣/褶衣/褶裤
|
||||
xiao#校/切削/削面/刀削/刮削
|
||||
xian#纤细/光纤/纤巧/纤柔/纤小/纤维/纤瘦/纤纤/化纤/纤秀/棉纤/纤尘/铣铁/金铣
|
||||
xiang#投降/巷
|
||||
xie#解数/出血/采血/换血/血糊/尿血/淤血/放血/血晕/血淋/便血/吐血/咯血/叶韵/蝎/蝎子/邪/猲猲
|
||||
xin#嬜/邤
|
||||
xiu#铜臭/乳臭/成宿/星宿/璓
|
||||
xin#馨/信/鸿信
|
||||
xing#深省/省视/内省/不省人事/省悟/省察/行/荥
|
||||
xiong#匂
|
||||
xu#牧畜/畜产/畜牧/畜养/并畜/畜锐/吁/圩/浒
|
||||
xuan#箮
|
||||
xue#削/血/樰
|
||||
xun#荨/寻
|
||||
ya#琊
|
||||
yao#钥/耀/曜/佋侥/侥觎/侥僺/侥利/侥傒/侥觊/侥会/侥滥/侥望/侥求/侥竞/侥薄/侥躐/侥取/侥奇/侥忝/侥速/侥冀/侥冒/疟子
|
||||
yan#咽/殷红/朱殷/腌/烟/曕
|
||||
ye#液/抽咽/哽咽/咽炎/呜咽/幽咽/悲咽/叶/葉/璍/潱/拽步/拽扶/拽扎
|
||||
yi#自艾/遗/屹/嬄/噫
|
||||
yin#殷/栶
|
||||
ying#荥经/緓/灜
|
||||
yo#杭育
|
||||
yong#涌/硧
|
||||
you#牗
|
||||
yu#余/呼吁/吁请/吁求/育/熨帖/熨烫/於
|
||||
yuan#员/茒/圜丘
|
||||
yun#熨
|
||||
yue#约/乐音/器乐/乐律/乐章/音乐/乐理/民乐/乐队/声乐/奏乐/弦乐/乐坛/管乐/配乐/乐曲/乐谱/锁钥/密钥/乐团/乐器/嬳/咽哕/唾哕/发哕/干哕/哕吐/哕饭/哕呕/哕息/哕厥/哕噫/哕逆/哕咽/哕骂/哕心/哕喈/口哕/呕哕
|
||||
za#绑扎/结扎/包扎/捆扎/咱家
|
||||
zan#攒/咱
|
||||
zang#宝藏/藏历/藏文/藏语/藏青/藏族/藏医/藏药/藏蓝/西藏
|
||||
zai#牛仔/龟仔/龙仔/鼻仔/羊仔/仔仔/麻仔/麵包仔/麦旺仔/鸿仔/煲仔/福仔/畠
|
||||
zao#栆
|
||||
ze#择
|
||||
zeng#曾国藩/曾孙/曾祖父/曾祖/曾祖母/曾孙女/曾巩/囎/缯
|
||||
zong#综/繌
|
||||
zha#扎/柞狭/柞薪/柞子/柞鄂/柞叶/柞撒/槱柞/一柞/五柞宫/五柞/雠柞/芟柞/蜡祭/喳
|
||||
zhai#宅/夈/择席/择菜
|
||||
zhan#粘
|
||||
zhang#列车长/行长/村长/镇长/乡长/区长/县长/市长/省长/会长/班长/排长/连长/营长/团长/旅长/师长/军长/委员长/局长/厅长/所长/部长/组长/生长/长大/长高/长个/
|
||||
zhao#朝朝/明朝/朝晖/朝夕/朝思/今朝/朝气/朝三/朝秦/朝霞/鹰爪/龙爪/魔爪/爪牙/着急/着迷/着火/怎么着/正着/着凉/一着/犯不着/着数/这么着/犯得着/着慌/着忙/数得着/龙爪槐/嘲哳/嘲惹
|
||||
zhe#折/着/褶
|
||||
zhen#殝/椹
|
||||
zhi#标识/吱/殖/枝/方祇/后祇/皇祇/黄祇/皇地祇/金祇/祇树/月氏
|
||||
zhong#重/种
|
||||
zhou#粥
|
||||
zhu#属意/著/駯
|
||||
zhua#爪子
|
||||
zhuai#拽
|
||||
zhuan#芈月传/外传/传记/自传/正传/小传/评传/传略/别传
|
||||
zhui#椎/隹
|
||||
zhuo#执著/着装/着落/着意/着力/附着/着笔/胶着/着实/衣着/着眼/着想/着重/穿着/执着/着墨/着实/沉着/着陆/着想/着色/焯见/焯烁/辉焯
|
||||
zhuang#幢房/一幢/幢楼/庒
|
||||
zi#仔/兹
|
||||
zu#足
|
||||
zuo#柞/穝
|
||||
@@ -0,0 +1,3 @@
|
||||
127.0.0.1
|
||||
localhost
|
||||
index.html
|
||||
@@ -0,0 +1,12 @@
|
||||
pdf
|
||||
doc
|
||||
docx
|
||||
xlsx
|
||||
xls
|
||||
zip
|
||||
rar
|
||||
jpg
|
||||
jpge
|
||||
png
|
||||
gif
|
||||
ppt
|
||||
@@ -0,0 +1 @@
|
||||
/upload/
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user