¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <parent> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>terra</artifactId> |
| | | <version>1.0.2</version> |
| | | </parent> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | |
| | | <artifactId>se-collect</artifactId> |
| | | |
| | | <description> |
| | | æ°æ®æ±é |
| | | </description> |
| | | |
| | | <dependencies> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos Config --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Sentinel --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> |
| | | </dependency> |
| | | |
| | | |
| | | |
| | | <!-- SpringBoot Web --> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-web</artifactId> |
| | | </dependency> |
| | | |
| | | <!--lombok--> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | <optional>true</optional> |
| | | </dependency> |
| | | |
| | | <!--mybatis-plus--> |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-boot-starter</artifactId> |
| | | <version>3.5.1</version> |
| | | </dependency> |
| | | |
| | | <!--redis--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-data-redis</artifactId> |
| | | </dependency> |
| | | |
| | | <!--postgresql--> |
| | | <dependency> |
| | | <groupId>org.postgresql</groupId> |
| | | <artifactId>postgresql</artifactId> |
| | | <scope>runtime</scope> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-pool2</artifactId> |
| | | </dependency> |
| | | |
| | | <!--aop--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-aop</artifactId> |
| | | </dependency> |
| | | |
| | | <!--fastjson--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>1.2.47</version> |
| | | </dependency> |
| | | |
| | | <!--æ´ådruidæ°æ®æº--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid-spring-boot-starter</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | |
| | | <!--text--> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-text</artifactId> |
| | | <version>1.1</version> |
| | | </dependency> |
| | | |
| | | <!--swagger--> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger2</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger-ui</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.google.guava</groupId> |
| | | <artifactId>guava</artifactId> |
| | | <version>27.0-jre</version> |
| | | </dependency> |
| | | |
| | | <!--httpclient--> |
| | | <dependency> |
| | | <groupId>org.apache.httpcomponents</groupId> |
| | | <artifactId>httpclient</artifactId> |
| | | </dependency> |
| | | |
| | | <!--websocket--> |
| | | <dependency> |
| | | <groupId>javax.websocket</groupId> |
| | | <artifactId>javax.websocket-api</artifactId> |
| | | <version>1.0</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-websocket</artifactId> |
| | | </dependency> |
| | | |
| | | <!--hutool--> |
| | | <dependency> |
| | | <groupId>cn.hutool</groupId> |
| | | <artifactId>hutool-all</artifactId> |
| | | <version>5.7.20</version> |
| | | </dependency> |
| | | |
| | | <!--commons-fileupload--> |
| | | <dependency> |
| | | <groupId>commons-fileupload</groupId> |
| | | <artifactId>commons-fileupload</artifactId> |
| | | <version>1.4</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>commons-io</groupId> |
| | | <artifactId>commons-io</artifactId> |
| | | <version>2.11.0</version> |
| | | </dependency> |
| | | |
| | | <!--gdal--> |
| | | <dependency> |
| | | <groupId>org.gdal</groupId> |
| | | <artifactId>gdal</artifactId> |
| | | <version>3.2.0</version> |
| | | </dependency> |
| | | |
| | | <!--zip4j--> |
| | | <dependency> |
| | | <groupId>net.lingala.zip4j</groupId> |
| | | <artifactId>zip4j</artifactId> |
| | | <version>2.6.4</version> |
| | | </dependency> |
| | | |
| | | <!--easyexcel--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>easyexcel</artifactId> |
| | | <version>2.2.10</version> |
| | | </dependency> |
| | | |
| | | <!--servlet--> |
| | | <dependency> |
| | | <groupId>javax.servlet</groupId> |
| | | <artifactId>javax.servlet-api</artifactId> |
| | | <version>3.1.0</version> |
| | | <scope>provided</scope> |
| | | </dependency> |
| | | |
| | | <!--apache.poi--> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi-ooxml</artifactId> |
| | | <version>3.16</version> |
| | | </dependency> |
| | | |
| | | <!--proj4j--> |
| | | <dependency> |
| | | <groupId>org.osgeo</groupId> |
| | | <artifactId>proj4j</artifactId> |
| | | <version>0.1.0</version> |
| | | </dependency> |
| | | |
| | | <!--JTS--> |
| | | <dependency> |
| | | <groupId>org.locationtech.jts</groupId> |
| | | <artifactId>jts-core</artifactId> |
| | | <version>1.19.0</version> |
| | | </dependency> |
| | | |
| | | <!-- se-common --> |
| | | <dependency> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>se-common</artifactId> |
| | | <version>1.0.2</version> |
| | | <scope>compile</scope> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
| | | <finalName>${project.artifactId}</finalName> |
| | | <plugins> |
| | | <plugin> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-maven-plugin</artifactId> |
| | | <executions> |
| | | <execution> |
| | | <goals> |
| | | <goal>repackage</goal> |
| | | </goals> |
| | | </execution> |
| | | </executions> |
| | | </plugin> |
| | | </plugins> |
| | | </build> |
| | | |
| | | </project> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.collect; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import org.springframework.context.annotation.EnableAspectJAutoProxy; |
| | | import org.springframework.scheduling.annotation.EnableAsync; |
| | | import springfox.documentation.swagger2.annotations.EnableSwagger2; |
| | | |
| | | @EnableAsync |
| | | @EnableSwagger2 |
| | | @EnableAspectJAutoProxy(exposeProxy = true) |
| | | @SpringBootApplication(scanBasePackages = {"com.terra.collect.*"}) |
| | | public class SeCollectApp |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(SeCollectApp.class, args); |
| | | System.out.println("----------æ°æ®æ±éå¯å¨æå---------- \n"); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.collect.controller; |
| | | |
| | | import com.terra.collect.controller.all.BaseController; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.terra.collect.entity.all.ResponseMsg; |
| | | import java.util.Date; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | |
| | | @Api(tags = "æ°æ®æ±é\\æµè¯æå¡") |
| | | @RestController |
| | | @RequestMapping("/test") |
| | | public class TestController extends BaseController { |
| | | public static final SimpleDateFormat YMDHMS_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | @ApiOperation(value = "Test") |
| | | @GetMapping(value = "/test") |
| | | public ResponseMsg<Object> test() { |
| | | try { |
| | | String date = YMDHMS_FORMAT.format(new Date()); |
| | | |
| | | return success(date); |
| | | } catch (Exception ex) { |
| | | return fail(ex, null); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.collect.controller.all; |
| | | |
| | | import com.terra.collect.entity.all.HttpStatus; |
| | | import com.terra.collect.entity.all.ResponseMsg; |
| | | import org.apache.commons.logging.Log; |
| | | import org.apache.commons.logging.LogFactory; |
| | | |
| | | /** |
| | | * Controlleråºç±» |
| | | * @author WWW |
| | | */ |
| | | public class BaseController { |
| | | public Log log = LogFactory.getLog(getClass()); |
| | | |
| | | public <T> ResponseMsg<T> success(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(Exception ex, T result) { |
| | | log.error(ex.getMessage(), ex); |
| | | |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, ex.getMessage(), result); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.collect.entity.all; |
| | | |
| | | /** |
| | | * Httpç¶æç ç±» |
| | | * @author WWW |
| | | */ |
| | | public enum HttpStatus { |
| | | /** |
| | | * è¯·æ±æå |
| | | */ |
| | | OK(200,"è¯·æ±æå"), |
| | | |
| | | /** |
| | | * è¯·æ±æ æ |
| | | */ |
| | | BAD_REQUEST(400,"è¯·æ±æ æ"), |
| | | |
| | | /** |
| | | * æªç»ææè®¿é® |
| | | */ |
| | | UNAUTHORIZED(401,"æªç»ææè®¿é®"), |
| | | |
| | | /** |
| | | * æå¡è¯·æ±æªæ¾å° |
| | | */ |
| | | NOT_FOUND(404,"æå¡è¯·æ±æªæ¾å°"), |
| | | |
| | | /** |
| | | * ç³»ç»é误 |
| | | */ |
| | | ERROR(500,"ç³»ç»é误"), |
| | | |
| | | /** |
| | | * åå¨éå¤çæ°æ® |
| | | */ |
| | | UNIQUE_ERROR(500100,"åå¨éå¤çæ°æ®"), |
| | | |
| | | /** |
| | | * åæ°æ ¡éªé误 |
| | | */ |
| | | VALIDATE_ERROR(500101,"åæ°æ ¡éªé误"), |
| | | |
| | | /** |
| | | * tokené误 |
| | | */ |
| | | TOKEN_ERROR(500102,"tokené误"), |
| | | |
| | | /** |
| | | * ç¨æ·æªç»é |
| | | */ |
| | | NO_LOGIN_ERROR(500104,"ç¨æ·æªç»é"), |
| | | |
| | | /** |
| | | * ç»é失败 |
| | | */ |
| | | LOGIN_ERROR(500105,"ç»é失败"), |
| | | |
| | | /** |
| | | * æ æéè®¿é® |
| | | */ |
| | | NO_AUTH_ERROR(500106,"æ æé访é®"), |
| | | |
| | | /** |
| | | * ç¨æ·åé误 |
| | | */ |
| | | LOGIN_USER_ERROR(500107,"ç¨æ·åé误"), |
| | | |
| | | /** |
| | | * å¯ç é误 |
| | | */ |
| | | LOGIN_PWD_ERROR(500108,"å¯ç é误"), |
| | | |
| | | /** |
| | | * ç¨æ·è¢«éå® |
| | | */ |
| | | USER_LOCK_ERROR(500109,"ç¨æ·è¢«éå®"), |
| | | |
| | | /** |
| | | * å¯ç ä¸åè§è |
| | | */ |
| | | PWD_NONSTANDARD(500111,"å¯ç ä¸åè§è"), |
| | | |
| | | /** |
| | | * å¯ç è¿æ |
| | | */ |
| | | LOGIN_PWD_EXPIRE(500116,"å¯ç è¿æ"); |
| | | |
| | | private HttpStatus(int value, String msg) { |
| | | this.value = value; |
| | | this.msg = msg; |
| | | } |
| | | |
| | | private int value; |
| | | |
| | | private String msg; |
| | | |
| | | public int getValue() { |
| | | return value; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.collect.entity.all; |
| | | |
| | | /** |
| | | * ååºæ¶æ¯ç±» |
| | | * @author www |
| | | * @param <T> æ³å |
| | | */ |
| | | public class ResponseMsg<T> { |
| | | public ResponseMsg() { |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, long count, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | private int code; |
| | | |
| | | private String msg; |
| | | |
| | | private long count; |
| | | |
| | | private T result; |
| | | |
| | | private long time; |
| | | |
| | | public int getCode() { |
| | | return code; |
| | | } |
| | | |
| | | public void setCode(int code) { |
| | | this.code = code; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | |
| | | public void setMsg(String msg) { |
| | | this.msg = msg; |
| | | } |
| | | |
| | | public long getCount() { |
| | | return count; |
| | | } |
| | | |
| | | public void setCount(long count) { |
| | | this.count = count; |
| | | } |
| | | |
| | | public T getResult() { |
| | | return result; |
| | | } |
| | | |
| | | public void setResult(T result) { |
| | | this.result = result; |
| | | } |
| | | |
| | | public long getTime() { |
| | | return time; |
| | | } |
| | | |
| | | public void setTime(long time) { |
| | | this.time = time; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Spring Boot Version: ${spring-boot.version} |
| | | Spring Application Name: ${spring.application.name} |
| | | _____ _ _ _ |
| | | / ____| | | | | | |
| | | | | ___ | | | ___ ___| |_ |
| | | | | / _ \| | |/ _ \/ __| __| |
| | | | |___| (_) | | | __/ (__| |_ |
| | | \_____\___/|_|_|\___|\___|\__| |
¶Ô±ÈÐÂÎļþ |
| | |
| | | # Tomcat |
| | | server: |
| | | port: 8003 |
| | | |
| | | # Spring |
| | | spring: |
| | | application: |
| | | # åºç¨åç§° |
| | | name: se-collect |
| | | profiles: |
| | | # ç¯å¢é
ç½® |
| | | active: dev |
| | | cloud: |
| | | nacos: |
| | | username: nacos |
| | | password: nAcos_!9#_admIn |
| | | discovery: |
| | | # æå¡æ³¨åå°å |
| | | server-addr: 127.0.0.1:8848 |
| | | config: |
| | | group: JHS_GROUP |
| | | # é
ç½®ä¸å¿å°å |
| | | server-addr: 127.0.0.1:8848 |
| | | # é
ç½®æä»¶æ ¼å¼ |
| | | file-extension: yml |
| | | # å
±äº«é
ç½® |
| | | shared-configs: |
| | | - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} |
| | | group: JHS_GROUP |
| | | # å
è®¸å·æ° |
| | | refresh-enabled: true |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <configuration scan="true" scanPeriod="60 seconds" debug="false"> |
| | | <!-- æ¥å¿åæ¾è·¯å¾ --> |
| | | <property name="log.path" value="logs/se-collect" /> |
| | | <!-- æ¥å¿è¾åºæ ¼å¼ --> |
| | | <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> |
| | | |
| | | <!-- æ§å¶å°è¾åº --> |
| | | <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¥å¿è¾åº --> |
| | | <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/info.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>INFO</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/error.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>ERROR</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¨¡åæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="com.terra" level="info" /> |
| | | <!-- Springæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="org.springframework" level="warn" /> |
| | | |
| | | <root level="info"> |
| | | <appender-ref ref="console" /> |
| | | </root> |
| | | |
| | | <!--ç³»ç»æä½æ¥å¿--> |
| | | <root level="info"> |
| | | <appender-ref ref="file_info" /> |
| | | <appender-ref ref="file_error" /> |
| | | </root> |
| | | </configuration> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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="cacheEnabled" value="true"/> |
| | | <!--å»¶è¿å è½½--> |
| | | <setting name="lazyLoadingEnabled" value="true"/> |
| | | <!--æ¯å¦å
许åä¸è¯å¥è¿åå¤ç»æé--> |
| | | <setting name="multipleResultSetsEnabled" value="true"/> |
| | | <!--使ç¨åæ ç¾ä»£æ¿åå--> |
| | | <setting name="useColumnLabel" value="true"/> |
| | | <!--å
许JDBC æ¯æèªå¨çæä¸»é®--> |
| | | <setting name="useGeneratedKeys" value="false"/> |
| | | <!--设置SQLè¶
æ¶æ¶é´ï¼ç§--> |
| | | <setting name="defaultStatementTimeout" value="360"/> |
| | | <!--é»è®¤è¿åçæ¡æ°éå¶--> |
| | | <setting name="defaultFetchSize" value="1000"/> |
| | | <!--æ¯å¦å¼å¯èªå¨é©¼å³°å½åè§åæ å°ï¼å³ä»ç»å
¸æ°æ®åºåå A_COLUMN å°ç»å
¸ Java 屿§å aColumn ç类似æ å°--> |
| | | <setting name="mapUnderscoreToCamelCase" value="true"/> |
| | | <!--MyBatis å©ç¨æ¬å°ç¼åæºå¶ï¼Local Cacheï¼é²æ¢å¾ªç¯å¼ç¨ï¼circular referencesï¼åå éèå¤åµå¥æ»è¯¢ã--> |
| | | <setting name="localCacheScope" value="SESSION"/> |
| | | <!--彿²¡æä¸ºåæ°æä¾ç¹å®ç JDBC ç±»åæ¶ï¼ä¸ºç©ºå¼æå® JDBC ç±»å--> |
| | | <setting name="jdbcTypeForNull" value="NULL"/> |
| | | <!--æå®åªä¸ªå¯¹è±¡çæ¹æ³è§¦å䏿¬¡å»¶è¿å è½½--> |
| | | <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/> |
| | | <!--æå®å½ç»æéä¸å¼ä¸º null æ¶ï¼æ¯å¦è°ç¨æ å°å¯¹è±¡ç setterï¼map 对象æ¶ä¸º putï¼æ¹æ³--> |
| | | <setting name="callSettersOnNulls" value="true"/> |
| | | <!--æå® MyBatis æç¨æ¥å¿çå
·ä½å®ç°ï¼LOG4J/LOG4J2/SLF4J/STDOUT_LOGGING/NO_LOGGING--> |
| | | <setting name="logImpl" value="NO_LOGGING" /> |
| | | </settings> |
| | | <typeAliases> |
| | | <package name="com.terra.collect.entity"/> |
| | | </typeAliases> |
| | | </configuration> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <parent> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>terra</artifactId> |
| | | <version>1.0.2</version> |
| | | </parent> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | |
| | | <artifactId>se-discover</artifactId> |
| | | |
| | | <description> |
| | | ç¥è¯åç° |
| | | </description> |
| | | |
| | | <dependencies> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos Config --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Sentinel --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> |
| | | </dependency> |
| | | |
| | | |
| | | |
| | | <!-- SpringBoot Web --> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-web</artifactId> |
| | | </dependency> |
| | | |
| | | <!--lombok--> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | <optional>true</optional> |
| | | </dependency> |
| | | |
| | | <!--mybatis-plus--> |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-boot-starter</artifactId> |
| | | <version>3.5.1</version> |
| | | </dependency> |
| | | |
| | | <!--redis--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-data-redis</artifactId> |
| | | </dependency> |
| | | |
| | | <!--postgresql--> |
| | | <dependency> |
| | | <groupId>org.postgresql</groupId> |
| | | <artifactId>postgresql</artifactId> |
| | | <scope>runtime</scope> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-pool2</artifactId> |
| | | </dependency> |
| | | |
| | | <!--aop--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-aop</artifactId> |
| | | </dependency> |
| | | |
| | | <!--fastjson--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>1.2.47</version> |
| | | </dependency> |
| | | |
| | | <!--æ´ådruidæ°æ®æº--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid-spring-boot-starter</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | |
| | | <!--text--> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-text</artifactId> |
| | | <version>1.1</version> |
| | | </dependency> |
| | | |
| | | <!--swagger--> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger2</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger-ui</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.google.guava</groupId> |
| | | <artifactId>guava</artifactId> |
| | | <version>27.0-jre</version> |
| | | </dependency> |
| | | |
| | | <!--httpclient--> |
| | | <dependency> |
| | | <groupId>org.apache.httpcomponents</groupId> |
| | | <artifactId>httpclient</artifactId> |
| | | </dependency> |
| | | |
| | | <!--websocket--> |
| | | <dependency> |
| | | <groupId>javax.websocket</groupId> |
| | | <artifactId>javax.websocket-api</artifactId> |
| | | <version>1.0</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-websocket</artifactId> |
| | | </dependency> |
| | | |
| | | <!--hutool--> |
| | | <dependency> |
| | | <groupId>cn.hutool</groupId> |
| | | <artifactId>hutool-all</artifactId> |
| | | <version>5.7.20</version> |
| | | </dependency> |
| | | |
| | | <!--commons-fileupload--> |
| | | <dependency> |
| | | <groupId>commons-fileupload</groupId> |
| | | <artifactId>commons-fileupload</artifactId> |
| | | <version>1.4</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>commons-io</groupId> |
| | | <artifactId>commons-io</artifactId> |
| | | <version>2.11.0</version> |
| | | </dependency> |
| | | |
| | | <!--gdal--> |
| | | <dependency> |
| | | <groupId>org.gdal</groupId> |
| | | <artifactId>gdal</artifactId> |
| | | <version>3.2.0</version> |
| | | </dependency> |
| | | |
| | | <!--zip4j--> |
| | | <dependency> |
| | | <groupId>net.lingala.zip4j</groupId> |
| | | <artifactId>zip4j</artifactId> |
| | | <version>2.6.4</version> |
| | | </dependency> |
| | | |
| | | <!--easyexcel--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>easyexcel</artifactId> |
| | | <version>2.2.10</version> |
| | | </dependency> |
| | | |
| | | <!--servlet--> |
| | | <dependency> |
| | | <groupId>javax.servlet</groupId> |
| | | <artifactId>javax.servlet-api</artifactId> |
| | | <version>3.1.0</version> |
| | | <scope>provided</scope> |
| | | </dependency> |
| | | |
| | | <!--apache.poi--> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi-ooxml</artifactId> |
| | | <version>3.16</version> |
| | | </dependency> |
| | | |
| | | <!--proj4j--> |
| | | <dependency> |
| | | <groupId>org.osgeo</groupId> |
| | | <artifactId>proj4j</artifactId> |
| | | <version>0.1.0</version> |
| | | </dependency> |
| | | |
| | | <!--JTS--> |
| | | <dependency> |
| | | <groupId>org.locationtech.jts</groupId> |
| | | <artifactId>jts-core</artifactId> |
| | | <version>1.19.0</version> |
| | | </dependency> |
| | | |
| | | <!-- se-common --> |
| | | <dependency> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>se-common</artifactId> |
| | | <version>1.0.2</version> |
| | | <scope>compile</scope> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
| | | <finalName>${project.artifactId}</finalName> |
| | | <plugins> |
| | | <plugin> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-maven-plugin</artifactId> |
| | | <executions> |
| | | <execution> |
| | | <goals> |
| | | <goal>repackage</goal> |
| | | </goals> |
| | | </execution> |
| | | </executions> |
| | | </plugin> |
| | | </plugins> |
| | | </build> |
| | | |
| | | </project> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.discover; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import org.springframework.context.annotation.EnableAspectJAutoProxy; |
| | | import org.springframework.scheduling.annotation.EnableAsync; |
| | | import springfox.documentation.swagger2.annotations.EnableSwagger2; |
| | | |
| | | @EnableAsync |
| | | @EnableSwagger2 |
| | | @EnableAspectJAutoProxy(exposeProxy = true) |
| | | @SpringBootApplication(scanBasePackages = {"com.terra.discover.*"}) |
| | | public class SeDiscoverApp |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(SeDiscoverApp.class, args); |
| | | System.out.println("----------ç¥è¯åç°å¯å¨æå---------- \n"); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.discover.controller; |
| | | |
| | | import com.terra.discover.controller.all.BaseController; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.terra.discover.entity.all.ResponseMsg; |
| | | import java.util.Date; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | |
| | | @Api(tags = "ç¥è¯åç°\\æµè¯æå¡") |
| | | @RestController |
| | | @RequestMapping("/test") |
| | | public class TestController extends BaseController { |
| | | public static final SimpleDateFormat YMDHMS_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | @ApiOperation(value = "Test") |
| | | @GetMapping(value = "/test") |
| | | public ResponseMsg<Object> test() { |
| | | try { |
| | | String date = YMDHMS_FORMAT.format(new Date()); |
| | | |
| | | return success(date); |
| | | } catch (Exception ex) { |
| | | return fail(ex, null); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.discover.controller.all; |
| | | |
| | | import com.terra.discover.entity.all.HttpStatus; |
| | | import com.terra.discover.entity.all.ResponseMsg; |
| | | import org.apache.commons.logging.Log; |
| | | import org.apache.commons.logging.LogFactory; |
| | | |
| | | /** |
| | | * Controlleråºç±» |
| | | * @author WWW |
| | | */ |
| | | public class BaseController { |
| | | public Log log = LogFactory.getLog(getClass()); |
| | | |
| | | public <T> ResponseMsg<T> success(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(Exception ex, T result) { |
| | | log.error(ex.getMessage(), ex); |
| | | |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, ex.getMessage(), result); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.discover.entity.all; |
| | | |
| | | /** |
| | | * Httpç¶æç ç±» |
| | | * @author WWW |
| | | */ |
| | | public enum HttpStatus { |
| | | /** |
| | | * è¯·æ±æå |
| | | */ |
| | | OK(200,"è¯·æ±æå"), |
| | | |
| | | /** |
| | | * è¯·æ±æ æ |
| | | */ |
| | | BAD_REQUEST(400,"è¯·æ±æ æ"), |
| | | |
| | | /** |
| | | * æªç»ææè®¿é® |
| | | */ |
| | | UNAUTHORIZED(401,"æªç»ææè®¿é®"), |
| | | |
| | | /** |
| | | * æå¡è¯·æ±æªæ¾å° |
| | | */ |
| | | NOT_FOUND(404,"æå¡è¯·æ±æªæ¾å°"), |
| | | |
| | | /** |
| | | * ç³»ç»é误 |
| | | */ |
| | | ERROR(500,"ç³»ç»é误"), |
| | | |
| | | /** |
| | | * åå¨éå¤çæ°æ® |
| | | */ |
| | | UNIQUE_ERROR(500100,"åå¨éå¤çæ°æ®"), |
| | | |
| | | /** |
| | | * åæ°æ ¡éªé误 |
| | | */ |
| | | VALIDATE_ERROR(500101,"åæ°æ ¡éªé误"), |
| | | |
| | | /** |
| | | * tokené误 |
| | | */ |
| | | TOKEN_ERROR(500102,"tokené误"), |
| | | |
| | | /** |
| | | * ç¨æ·æªç»é |
| | | */ |
| | | NO_LOGIN_ERROR(500104,"ç¨æ·æªç»é"), |
| | | |
| | | /** |
| | | * ç»é失败 |
| | | */ |
| | | LOGIN_ERROR(500105,"ç»é失败"), |
| | | |
| | | /** |
| | | * æ æéè®¿é® |
| | | */ |
| | | NO_AUTH_ERROR(500106,"æ æé访é®"), |
| | | |
| | | /** |
| | | * ç¨æ·åé误 |
| | | */ |
| | | LOGIN_USER_ERROR(500107,"ç¨æ·åé误"), |
| | | |
| | | /** |
| | | * å¯ç é误 |
| | | */ |
| | | LOGIN_PWD_ERROR(500108,"å¯ç é误"), |
| | | |
| | | /** |
| | | * ç¨æ·è¢«éå® |
| | | */ |
| | | USER_LOCK_ERROR(500109,"ç¨æ·è¢«éå®"), |
| | | |
| | | /** |
| | | * å¯ç ä¸åè§è |
| | | */ |
| | | PWD_NONSTANDARD(500111,"å¯ç ä¸åè§è"), |
| | | |
| | | /** |
| | | * å¯ç è¿æ |
| | | */ |
| | | LOGIN_PWD_EXPIRE(500116,"å¯ç è¿æ"); |
| | | |
| | | private HttpStatus(int value, String msg) { |
| | | this.value = value; |
| | | this.msg = msg; |
| | | } |
| | | |
| | | private int value; |
| | | |
| | | private String msg; |
| | | |
| | | public int getValue() { |
| | | return value; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.discover.entity.all; |
| | | |
| | | /** |
| | | * ååºæ¶æ¯ç±» |
| | | * @author www |
| | | * @param <T> æ³å |
| | | */ |
| | | public class ResponseMsg<T> { |
| | | public ResponseMsg() { |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, long count, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | private int code; |
| | | |
| | | private String msg; |
| | | |
| | | private long count; |
| | | |
| | | private T result; |
| | | |
| | | private long time; |
| | | |
| | | public int getCode() { |
| | | return code; |
| | | } |
| | | |
| | | public void setCode(int code) { |
| | | this.code = code; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | |
| | | public void setMsg(String msg) { |
| | | this.msg = msg; |
| | | } |
| | | |
| | | public long getCount() { |
| | | return count; |
| | | } |
| | | |
| | | public void setCount(long count) { |
| | | this.count = count; |
| | | } |
| | | |
| | | public T getResult() { |
| | | return result; |
| | | } |
| | | |
| | | public void setResult(T result) { |
| | | this.result = result; |
| | | } |
| | | |
| | | public long getTime() { |
| | | return time; |
| | | } |
| | | |
| | | public void setTime(long time) { |
| | | this.time = time; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Spring Boot Version: ${spring-boot.version} |
| | | Spring Application Name: ${spring.application.name} |
| | | _____ _ _ |
| | | | __ \(_) | | |
| | | | | | |_ __| | ___ ___ _ __ |
| | | | | | | |/ _` |/ _ \/ _ \ '_ \ |
| | | | |__| | | (_| | __/ __/ |_) | |
| | | |_____/|_|\__,_|\___|\___| .__/ |
| | | | | |
| | | |_| |
¶Ô±ÈÐÂÎļþ |
| | |
| | | # Tomcat |
| | | server: |
| | | port: 8004 |
| | | |
| | | # Spring |
| | | spring: |
| | | application: |
| | | # åºç¨åç§° |
| | | name: se-discover |
| | | profiles: |
| | | # ç¯å¢é
ç½® |
| | | active: dev |
| | | cloud: |
| | | nacos: |
| | | username: nacos |
| | | password: nAcos_!9#_admIn |
| | | discovery: |
| | | # æå¡æ³¨åå°å |
| | | server-addr: 127.0.0.1:8848 |
| | | config: |
| | | group: JHS_GROUP |
| | | # é
ç½®ä¸å¿å°å |
| | | server-addr: 127.0.0.1:8848 |
| | | # é
ç½®æä»¶æ ¼å¼ |
| | | file-extension: yml |
| | | # å
±äº«é
ç½® |
| | | shared-configs: |
| | | - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} |
| | | group: JHS_GROUP |
| | | # å
è®¸å·æ° |
| | | refresh-enabled: true |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <configuration scan="true" scanPeriod="60 seconds" debug="false"> |
| | | <!-- æ¥å¿åæ¾è·¯å¾ --> |
| | | <property name="log.path" value="logs/se-discover" /> |
| | | <!-- æ¥å¿è¾åºæ ¼å¼ --> |
| | | <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> |
| | | |
| | | <!-- æ§å¶å°è¾åº --> |
| | | <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¥å¿è¾åº --> |
| | | <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/info.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>INFO</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/error.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>ERROR</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¨¡åæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="com.terra" level="info" /> |
| | | <!-- Springæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="org.springframework" level="warn" /> |
| | | |
| | | <root level="info"> |
| | | <appender-ref ref="console" /> |
| | | </root> |
| | | |
| | | <!--ç³»ç»æä½æ¥å¿--> |
| | | <root level="info"> |
| | | <appender-ref ref="file_info" /> |
| | | <appender-ref ref="file_error" /> |
| | | </root> |
| | | </configuration> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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="cacheEnabled" value="true"/> |
| | | <!--å»¶è¿å è½½--> |
| | | <setting name="lazyLoadingEnabled" value="true"/> |
| | | <!--æ¯å¦å
许åä¸è¯å¥è¿åå¤ç»æé--> |
| | | <setting name="multipleResultSetsEnabled" value="true"/> |
| | | <!--使ç¨åæ ç¾ä»£æ¿åå--> |
| | | <setting name="useColumnLabel" value="true"/> |
| | | <!--å
许JDBC æ¯æèªå¨çæä¸»é®--> |
| | | <setting name="useGeneratedKeys" value="false"/> |
| | | <!--设置SQLè¶
æ¶æ¶é´ï¼ç§--> |
| | | <setting name="defaultStatementTimeout" value="360"/> |
| | | <!--é»è®¤è¿åçæ¡æ°éå¶--> |
| | | <setting name="defaultFetchSize" value="1000"/> |
| | | <!--æ¯å¦å¼å¯èªå¨é©¼å³°å½åè§åæ å°ï¼å³ä»ç»å
¸æ°æ®åºåå A_COLUMN å°ç»å
¸ Java 屿§å aColumn ç类似æ å°--> |
| | | <setting name="mapUnderscoreToCamelCase" value="true"/> |
| | | <!--MyBatis å©ç¨æ¬å°ç¼åæºå¶ï¼Local Cacheï¼é²æ¢å¾ªç¯å¼ç¨ï¼circular referencesï¼åå éèå¤åµå¥æ»è¯¢ã--> |
| | | <setting name="localCacheScope" value="SESSION"/> |
| | | <!--彿²¡æä¸ºåæ°æä¾ç¹å®ç JDBC ç±»åæ¶ï¼ä¸ºç©ºå¼æå® JDBC ç±»å--> |
| | | <setting name="jdbcTypeForNull" value="NULL"/> |
| | | <!--æå®åªä¸ªå¯¹è±¡çæ¹æ³è§¦å䏿¬¡å»¶è¿å è½½--> |
| | | <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/> |
| | | <!--æå®å½ç»æéä¸å¼ä¸º null æ¶ï¼æ¯å¦è°ç¨æ å°å¯¹è±¡ç setterï¼map 对象æ¶ä¸º putï¼æ¹æ³--> |
| | | <setting name="callSettersOnNulls" value="true"/> |
| | | <!--æå® MyBatis æç¨æ¥å¿çå
·ä½å®ç°ï¼LOG4J/LOG4J2/SLF4J/STDOUT_LOGGING/NO_LOGGING--> |
| | | <setting name="logImpl" value="NO_LOGGING" /> |
| | | </settings> |
| | | <typeAliases> |
| | | <package name="com.terra.discover.entity"/> |
| | | </typeAliases> |
| | | </configuration> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <parent> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>terra</artifactId> |
| | | <version>1.0.2</version> |
| | | </parent> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | |
| | | <artifactId>se-publish</artifactId> |
| | | |
| | | <description> |
| | | æ°æ®åå¸ |
| | | </description> |
| | | |
| | | <dependencies> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Nacos Config --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> |
| | | </dependency> |
| | | |
| | | <!-- SpringCloud Alibaba Sentinel --> |
| | | <dependency> |
| | | <groupId>com.alibaba.cloud</groupId> |
| | | <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> |
| | | </dependency> |
| | | |
| | | |
| | | |
| | | <!-- SpringBoot Web --> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-web</artifactId> |
| | | </dependency> |
| | | |
| | | <!--lombok--> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | <optional>true</optional> |
| | | </dependency> |
| | | |
| | | <!--mybatis-plus--> |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-boot-starter</artifactId> |
| | | <version>3.5.1</version> |
| | | </dependency> |
| | | |
| | | <!--redis--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-data-redis</artifactId> |
| | | </dependency> |
| | | |
| | | <!--postgresql--> |
| | | <dependency> |
| | | <groupId>org.postgresql</groupId> |
| | | <artifactId>postgresql</artifactId> |
| | | <scope>runtime</scope> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-pool2</artifactId> |
| | | </dependency> |
| | | |
| | | <!--aop--> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-aop</artifactId> |
| | | </dependency> |
| | | |
| | | <!--fastjson--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>1.2.47</version> |
| | | </dependency> |
| | | |
| | | <!--æ´ådruidæ°æ®æº--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>druid-spring-boot-starter</artifactId> |
| | | <version>1.2.25</version> |
| | | </dependency> |
| | | |
| | | <!--text--> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-text</artifactId> |
| | | <version>1.1</version> |
| | | </dependency> |
| | | |
| | | <!--swagger--> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger2</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-swagger-ui</artifactId> |
| | | <version>2.9.2</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.google.guava</groupId> |
| | | <artifactId>guava</artifactId> |
| | | <version>27.0-jre</version> |
| | | </dependency> |
| | | |
| | | <!--httpclient--> |
| | | <dependency> |
| | | <groupId>org.apache.httpcomponents</groupId> |
| | | <artifactId>httpclient</artifactId> |
| | | </dependency> |
| | | |
| | | <!--websocket--> |
| | | <dependency> |
| | | <groupId>javax.websocket</groupId> |
| | | <artifactId>javax.websocket-api</artifactId> |
| | | <version>1.0</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-websocket</artifactId> |
| | | </dependency> |
| | | |
| | | <!--hutool--> |
| | | <dependency> |
| | | <groupId>cn.hutool</groupId> |
| | | <artifactId>hutool-all</artifactId> |
| | | <version>5.7.20</version> |
| | | </dependency> |
| | | |
| | | <!--commons-fileupload--> |
| | | <dependency> |
| | | <groupId>commons-fileupload</groupId> |
| | | <artifactId>commons-fileupload</artifactId> |
| | | <version>1.4</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>commons-io</groupId> |
| | | <artifactId>commons-io</artifactId> |
| | | <version>2.11.0</version> |
| | | </dependency> |
| | | |
| | | <!--gdal--> |
| | | <dependency> |
| | | <groupId>org.gdal</groupId> |
| | | <artifactId>gdal</artifactId> |
| | | <version>3.2.0</version> |
| | | </dependency> |
| | | |
| | | <!--zip4j--> |
| | | <dependency> |
| | | <groupId>net.lingala.zip4j</groupId> |
| | | <artifactId>zip4j</artifactId> |
| | | <version>2.6.4</version> |
| | | </dependency> |
| | | |
| | | <!--easyexcel--> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>easyexcel</artifactId> |
| | | <version>2.2.10</version> |
| | | </dependency> |
| | | |
| | | <!--servlet--> |
| | | <dependency> |
| | | <groupId>javax.servlet</groupId> |
| | | <artifactId>javax.servlet-api</artifactId> |
| | | <version>3.1.0</version> |
| | | <scope>provided</scope> |
| | | </dependency> |
| | | |
| | | <!--apache.poi--> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi-ooxml</artifactId> |
| | | <version>3.16</version> |
| | | </dependency> |
| | | |
| | | <!--proj4j--> |
| | | <dependency> |
| | | <groupId>org.osgeo</groupId> |
| | | <artifactId>proj4j</artifactId> |
| | | <version>0.1.0</version> |
| | | </dependency> |
| | | |
| | | <!--JTS--> |
| | | <dependency> |
| | | <groupId>org.locationtech.jts</groupId> |
| | | <artifactId>jts-core</artifactId> |
| | | <version>1.19.0</version> |
| | | </dependency> |
| | | |
| | | <!-- se-common --> |
| | | <dependency> |
| | | <groupId>com.terra</groupId> |
| | | <artifactId>se-common</artifactId> |
| | | <version>1.0.2</version> |
| | | <scope>compile</scope> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
| | | <finalName>${project.artifactId}</finalName> |
| | | <plugins> |
| | | <plugin> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-maven-plugin</artifactId> |
| | | <executions> |
| | | <execution> |
| | | <goals> |
| | | <goal>repackage</goal> |
| | | </goals> |
| | | </execution> |
| | | </executions> |
| | | </plugin> |
| | | </plugins> |
| | | </build> |
| | | |
| | | </project> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.publish; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import org.springframework.context.annotation.EnableAspectJAutoProxy; |
| | | import org.springframework.scheduling.annotation.EnableAsync; |
| | | import springfox.documentation.swagger2.annotations.EnableSwagger2; |
| | | |
| | | @EnableAsync |
| | | @EnableSwagger2 |
| | | @EnableAspectJAutoProxy(exposeProxy = true) |
| | | @SpringBootApplication(scanBasePackages = {"com.terra.publish.*"}) |
| | | public class SePublishApp |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(SePublishApp.class, args); |
| | | System.out.println("----------æ°æ®åå¸å¯å¨æå---------- \n"); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.publish.controller; |
| | | |
| | | import com.terra.publish.controller.all.BaseController; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.terra.publish.entity.all.ResponseMsg; |
| | | import java.util.Date; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | |
| | | @Api(tags = "æ°æ®åå¸\\æµè¯æå¡") |
| | | @RestController |
| | | @RequestMapping("/test") |
| | | public class TestController extends BaseController { |
| | | public static final SimpleDateFormat YMDHMS_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | @ApiOperation(value = "Test") |
| | | @GetMapping(value = "/test") |
| | | public ResponseMsg<Object> test() { |
| | | try { |
| | | String date = YMDHMS_FORMAT.format(new Date()); |
| | | |
| | | return success(date); |
| | | } catch (Exception ex) { |
| | | return fail(ex, null); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.publish.controller.all; |
| | | |
| | | import com.terra.publish.entity.all.HttpStatus; |
| | | import com.terra.publish.entity.all.ResponseMsg; |
| | | import org.apache.commons.logging.Log; |
| | | import org.apache.commons.logging.LogFactory; |
| | | |
| | | /** |
| | | * Controlleråºç±» |
| | | * @author WWW |
| | | */ |
| | | public class BaseController { |
| | | public Log log = LogFactory.getLog(getClass()); |
| | | |
| | | public <T> ResponseMsg<T> success(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> success(String msg, long count, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.OK, msg, count, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(String msg, T result) { |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, msg, result); |
| | | } |
| | | |
| | | public <T> ResponseMsg<T> fail(Exception ex, T result) { |
| | | log.error(ex.getMessage(), ex); |
| | | |
| | | return new ResponseMsg<T>(HttpStatus.ERROR, ex.getMessage(), result); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.publish.entity.all; |
| | | |
| | | /** |
| | | * Httpç¶æç ç±» |
| | | * @author WWW |
| | | */ |
| | | public enum HttpStatus { |
| | | /** |
| | | * è¯·æ±æå |
| | | */ |
| | | OK(200,"è¯·æ±æå"), |
| | | |
| | | /** |
| | | * è¯·æ±æ æ |
| | | */ |
| | | BAD_REQUEST(400,"è¯·æ±æ æ"), |
| | | |
| | | /** |
| | | * æªç»ææè®¿é® |
| | | */ |
| | | UNAUTHORIZED(401,"æªç»ææè®¿é®"), |
| | | |
| | | /** |
| | | * æå¡è¯·æ±æªæ¾å° |
| | | */ |
| | | NOT_FOUND(404,"æå¡è¯·æ±æªæ¾å°"), |
| | | |
| | | /** |
| | | * ç³»ç»é误 |
| | | */ |
| | | ERROR(500,"ç³»ç»é误"), |
| | | |
| | | /** |
| | | * åå¨éå¤çæ°æ® |
| | | */ |
| | | UNIQUE_ERROR(500100,"åå¨éå¤çæ°æ®"), |
| | | |
| | | /** |
| | | * åæ°æ ¡éªé误 |
| | | */ |
| | | VALIDATE_ERROR(500101,"åæ°æ ¡éªé误"), |
| | | |
| | | /** |
| | | * tokené误 |
| | | */ |
| | | TOKEN_ERROR(500102,"tokené误"), |
| | | |
| | | /** |
| | | * ç¨æ·æªç»é |
| | | */ |
| | | NO_LOGIN_ERROR(500104,"ç¨æ·æªç»é"), |
| | | |
| | | /** |
| | | * ç»é失败 |
| | | */ |
| | | LOGIN_ERROR(500105,"ç»é失败"), |
| | | |
| | | /** |
| | | * æ æéè®¿é® |
| | | */ |
| | | NO_AUTH_ERROR(500106,"æ æé访é®"), |
| | | |
| | | /** |
| | | * ç¨æ·åé误 |
| | | */ |
| | | LOGIN_USER_ERROR(500107,"ç¨æ·åé误"), |
| | | |
| | | /** |
| | | * å¯ç é误 |
| | | */ |
| | | LOGIN_PWD_ERROR(500108,"å¯ç é误"), |
| | | |
| | | /** |
| | | * ç¨æ·è¢«éå® |
| | | */ |
| | | USER_LOCK_ERROR(500109,"ç¨æ·è¢«éå®"), |
| | | |
| | | /** |
| | | * å¯ç ä¸åè§è |
| | | */ |
| | | PWD_NONSTANDARD(500111,"å¯ç ä¸åè§è"), |
| | | |
| | | /** |
| | | * å¯ç è¿æ |
| | | */ |
| | | LOGIN_PWD_EXPIRE(500116,"å¯ç è¿æ"); |
| | | |
| | | private HttpStatus(int value, String msg) { |
| | | this.value = value; |
| | | this.msg = msg; |
| | | } |
| | | |
| | | private int value; |
| | | |
| | | private String msg; |
| | | |
| | | public int getValue() { |
| | | return value; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.terra.publish.entity.all; |
| | | |
| | | /** |
| | | * ååºæ¶æ¯ç±» |
| | | * @author www |
| | | * @param <T> æ³å |
| | | */ |
| | | public class ResponseMsg<T> { |
| | | public ResponseMsg() { |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = this.code == 200 ? "æå" : "失败"; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(HttpStatus code, String msg, long count, T result) { |
| | | this.code = code.getValue(); |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = System.currentTimeMillis(); |
| | | } |
| | | |
| | | public ResponseMsg(int code, String msg, long count, T result, long time) { |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.count = count; |
| | | this.result = result; |
| | | this.time = time; |
| | | } |
| | | |
| | | private int code; |
| | | |
| | | private String msg; |
| | | |
| | | private long count; |
| | | |
| | | private T result; |
| | | |
| | | private long time; |
| | | |
| | | public int getCode() { |
| | | return code; |
| | | } |
| | | |
| | | public void setCode(int code) { |
| | | this.code = code; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | | } |
| | | |
| | | public void setMsg(String msg) { |
| | | this.msg = msg; |
| | | } |
| | | |
| | | public long getCount() { |
| | | return count; |
| | | } |
| | | |
| | | public void setCount(long count) { |
| | | this.count = count; |
| | | } |
| | | |
| | | public T getResult() { |
| | | return result; |
| | | } |
| | | |
| | | public void setResult(T result) { |
| | | this.result = result; |
| | | } |
| | | |
| | | public long getTime() { |
| | | return time; |
| | | } |
| | | |
| | | public void setTime(long time) { |
| | | this.time = time; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Spring Boot Version: ${spring-boot.version} |
| | | Spring Application Name: ${spring.application.name} |
| | | |
| | | _____ _ _ _ |
| | | | __ \ | | | | | |
| | | | |__) | _| |__ | | |__ |
| | | | ___/ | | | '_ \| | '_ \ |
| | | | | | |_| | |_) | | | | | |
| | | |_| \__,_|_.__/|_|_| |_| |
¶Ô±ÈÐÂÎļþ |
| | |
| | | # Tomcat |
| | | server: |
| | | port: 8005 |
| | | |
| | | # Spring |
| | | spring: |
| | | application: |
| | | # åºç¨åç§° |
| | | name: se-publish |
| | | profiles: |
| | | # ç¯å¢é
ç½® |
| | | active: dev |
| | | cloud: |
| | | nacos: |
| | | username: nacos |
| | | password: nAcos_!9#_admIn |
| | | discovery: |
| | | # æå¡æ³¨åå°å |
| | | server-addr: 127.0.0.1:8848 |
| | | config: |
| | | group: JHS_GROUP |
| | | # é
ç½®ä¸å¿å°å |
| | | server-addr: 127.0.0.1:8848 |
| | | # é
ç½®æä»¶æ ¼å¼ |
| | | file-extension: yml |
| | | # å
±äº«é
ç½® |
| | | shared-configs: |
| | | - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} |
| | | group: JHS_GROUP |
| | | # å
è®¸å·æ° |
| | | refresh-enabled: true |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <configuration scan="true" scanPeriod="60 seconds" debug="false"> |
| | | <!-- æ¥å¿åæ¾è·¯å¾ --> |
| | | <property name="log.path" value="logs/se-publish" /> |
| | | <!-- æ¥å¿è¾åºæ ¼å¼ --> |
| | | <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> |
| | | |
| | | <!-- æ§å¶å°è¾åº --> |
| | | <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¥å¿è¾åº --> |
| | | <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/info.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>INFO</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | | <file>${log.path}/error.log</file> |
| | | <!-- å¾ªç¯æ¿çï¼åºäºæ¶é´å建æ¥å¿æä»¶ --> |
| | | <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| | | <!-- æ¥å¿æä»¶åæ ¼å¼ --> |
| | | <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> |
| | | <!-- æ¥å¿æå¤§çåå² 60天 --> |
| | | <maxHistory>60</maxHistory> |
| | | </rollingPolicy> |
| | | <encoder> |
| | | <pattern>${log.pattern}</pattern> |
| | | </encoder> |
| | | <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| | | <!-- è¿æ»¤ççº§å« --> |
| | | <level>ERROR</level> |
| | | <!-- å¹é
æ¶çæä½ï¼æ¥æ¶ï¼è®°å½ï¼ --> |
| | | <onMatch>ACCEPT</onMatch> |
| | | <!-- ä¸å¹é
æ¶çæä½ï¼æç»ï¼ä¸è®°å½ï¼ --> |
| | | <onMismatch>DENY</onMismatch> |
| | | </filter> |
| | | </appender> |
| | | |
| | | <!-- ç³»ç»æ¨¡åæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="com.terra" level="info" /> |
| | | <!-- Springæ¥å¿çº§å«æ§å¶ --> |
| | | <logger name="org.springframework" level="warn" /> |
| | | |
| | | <root level="info"> |
| | | <appender-ref ref="console" /> |
| | | </root> |
| | | |
| | | <!--ç³»ç»æä½æ¥å¿--> |
| | | <root level="info"> |
| | | <appender-ref ref="file_info" /> |
| | | <appender-ref ref="file_error" /> |
| | | </root> |
| | | </configuration> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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="cacheEnabled" value="true"/> |
| | | <!--å»¶è¿å è½½--> |
| | | <setting name="lazyLoadingEnabled" value="true"/> |
| | | <!--æ¯å¦å
许åä¸è¯å¥è¿åå¤ç»æé--> |
| | | <setting name="multipleResultSetsEnabled" value="true"/> |
| | | <!--使ç¨åæ ç¾ä»£æ¿åå--> |
| | | <setting name="useColumnLabel" value="true"/> |
| | | <!--å
许JDBC æ¯æèªå¨çæä¸»é®--> |
| | | <setting name="useGeneratedKeys" value="false"/> |
| | | <!--设置SQLè¶
æ¶æ¶é´ï¼ç§--> |
| | | <setting name="defaultStatementTimeout" value="360"/> |
| | | <!--é»è®¤è¿åçæ¡æ°éå¶--> |
| | | <setting name="defaultFetchSize" value="1000"/> |
| | | <!--æ¯å¦å¼å¯èªå¨é©¼å³°å½åè§åæ å°ï¼å³ä»ç»å
¸æ°æ®åºåå A_COLUMN å°ç»å
¸ Java 屿§å aColumn ç类似æ å°--> |
| | | <setting name="mapUnderscoreToCamelCase" value="true"/> |
| | | <!--MyBatis å©ç¨æ¬å°ç¼åæºå¶ï¼Local Cacheï¼é²æ¢å¾ªç¯å¼ç¨ï¼circular referencesï¼åå éèå¤åµå¥æ»è¯¢ã--> |
| | | <setting name="localCacheScope" value="SESSION"/> |
| | | <!--彿²¡æä¸ºåæ°æä¾ç¹å®ç JDBC ç±»åæ¶ï¼ä¸ºç©ºå¼æå® JDBC ç±»å--> |
| | | <setting name="jdbcTypeForNull" value="NULL"/> |
| | | <!--æå®åªä¸ªå¯¹è±¡çæ¹æ³è§¦å䏿¬¡å»¶è¿å è½½--> |
| | | <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/> |
| | | <!--æå®å½ç»æéä¸å¼ä¸º null æ¶ï¼æ¯å¦è°ç¨æ å°å¯¹è±¡ç setterï¼map 对象æ¶ä¸º putï¼æ¹æ³--> |
| | | <setting name="callSettersOnNulls" value="true"/> |
| | | <!--æå® MyBatis æç¨æ¥å¿çå
·ä½å®ç°ï¼LOG4J/LOG4J2/SLF4J/STDOUT_LOGGING/NO_LOGGING--> |
| | | <setting name="logImpl" value="NO_LOGGING" /> |
| | | </settings> |
| | | <typeAliases> |
| | | <package name="com.terra.publish.entity"/> |
| | | </typeAliases> |
| | | </configuration> |
| | |
| | | ------------------------------------------------------------------- |
| | | |
| | | |
| | | ------------------------------------------------------------------- åè½æ¨¡åï¼æ¯æç¬ç«é¨ç½² |
| | | se-commonï¼ éç¨æ¨¡å |
| | | se-gatewayï¼8001ï¼ç³»ç»ç½å
³ |
| | | se-systemï¼8002ï¼ç³»ç»æ¨¡å/æ°æ®åå¨ç®¡ç |
| | | se-collectï¼8003ï¼æ°æ®æ±é |
| | | se-discoverï¼8004ï¼ç¥è¯åç° |
| | | se-publishï¼8005ï¼æ°æ®åå¸ |
| | | ------------------------------------------------------------------- URL |
| | | admin:Admin@1234_lf |
| | | nacosï¼nAcos_!9#_admIn |
| | | |
| | | http://localhost:8848/nacos |
| | | http://localhost:8002/ |
| | | http://localhost:8001/system/ |
| | | |
| | | http://localhost:8001/system/sign/getPublicKey |
| | | http://localhost:8002/sign/getPublicKey |
| | | |
| | | http://localhost:8001/system/dir/selectDir?id=1 |
| | | http://localhost:8002/dir/selectDir?id=1 |
| | | |
| | | http://192.168.11.203:8848/nacos |
| | | http://192.168.11.203:8081/api/system/swagger-ui.html |
| | | ------------------------------------------------------------------- |
| | | PIE-Engine Serverï¼Pixel Information Expert |
| | | ------------------------------------------------------------------- PIE-Engine Server |
| | | å
¨ç§°Pixel Information Expertï¼SDKæï¼å°å¾å¼åãWebSDKãRestSDK |
| | | å®ç½ï¼piesat.cnï¼https://engine.piesat.cn/server/#/ |
| | | 饿/GISæ°æ®æ±éã管çãæ²»çãåå¸ä¸å
±äº«çè½åï¼æ°æ®æ¥å
¥ãç¼ç®ãåå¨ãå
±äº«ãåå¸ä¸åºç¨ã |
| | | |
| | | |
| | | |
| | | piesat.cnï¼https://engine.piesat.cn/server/#/ |
| | | https://support.huaweicloud.com/pie-engine-mapslt/pie-engine_04.html |
| | | https://piesat.cn/website/cn/pages/product/dl-center/software-download.htmlï¼ä¸è½½ä¸å¿ |
| | | ------------------------------------------------------------------- å°å¾å¼åãWebSDKãRestSDK |
| | | 3.8.4.3.RestSDKå¼åï¼æ¥å£è°ç¨åç±»åçæ¶ç©ºæ°æ®æå¡ï¼è·åè¿åjsonæxmlæ ¼å¼çæ°æ®ã |
| | | |
| | | æ°æ®æ¥å
¥æå¡ï¼ä¸»è¦æä¾ä¸åç±»åæ°æ®çæ¥å
¥åçæ§è½åï¼å
±è®¡20个æ¥å£ã |
| | |
| | | |
| | | æ°æ®æå
æå¡ï¼ä¸»è¦æä¾æ°æ®æå
ä»»å¡å建ãçæ§ãå é¤ï¼ä»¥åå缩å
ä¸è½½æå¡ï¼å
±è®¡4个æ¥å£ã |
| | | ------------------------------------------------------------------- |
| | | |
| | | |