初始化仓库
This commit is contained in:
commit
d6982e53a4
|
@ -0,0 +1,33 @@
|
|||
HELP.md
|
||||
target/
|
||||
!.mvn/wrapper/maven-wrapper.jar
|
||||
!**/src/main/**/target/
|
||||
!**/src/test/**/target/
|
||||
|
||||
### STS ###
|
||||
.apt_generated
|
||||
.classpath
|
||||
.factorypath
|
||||
.project
|
||||
.settings
|
||||
.springBeans
|
||||
.sts4-cache
|
||||
|
||||
### IntelliJ IDEA ###
|
||||
.idea
|
||||
*.iws
|
||||
*.iml
|
||||
*.ipr
|
||||
|
||||
### NetBeans ###
|
||||
/nbproject/private/
|
||||
/nbbuild/
|
||||
/dist/
|
||||
/nbdist/
|
||||
/.nb-gradle/
|
||||
build/
|
||||
!**/src/main/**/build/
|
||||
!**/src/test/**/build/
|
||||
|
||||
### VS Code ###
|
||||
.vscode/
|
|
@ -0,0 +1,21 @@
|
|||
server.port=9276
|
||||
|
||||
# 多个项目放在nginx下同个端口,通过该配置区分
|
||||
server.servlet.context-path=/tunnel
|
||||
|
||||
# mysql 配置
|
||||
# 配置数据源
|
||||
spring.datasource.url=jdbc:mysql://localhost:3306/tunnel?serverTimezone=Asia/Shanghai&zeroDateTimeBehavior\
|
||||
=convertToNull&useUnicode=true
|
||||
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
|
||||
spring.datasource.username=xajhuang
|
||||
spring.datasource.password=aaaHuang1!
|
||||
|
||||
#mybatis 配置
|
||||
# 下划线转驼峰 将带有下划线的表字段映射为驼峰格式的实体类属性
|
||||
#mybatis.configuration.map-underscore-to-camel-case: true
|
||||
mybatis.mapper-locations=classpath*:mappers/*.xml
|
||||
mybatis.type-aliases-package=com.cmhi.tunnelservice.pojo.entry
|
||||
#mybatis.configuration.default-enum-type-handler=com.dispose.common.CommonEnumHandler
|
||||
#config log
|
||||
#logging.config=
|
|
@ -0,0 +1 @@
|
|||
spring.profiles.active=local
|
|
@ -0,0 +1,107 @@
|
|||
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>3.1.0</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
</parent>
|
||||
<groupId>com.cmhi</groupId>
|
||||
<artifactId>tunnelService</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<name>tunnelService</name>
|
||||
<description>tunnelService</description>
|
||||
<properties>
|
||||
<java.version>17</java.version>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mybatis.spring.boot</groupId>
|
||||
<artifactId>mybatis-spring-boot-starter</artifactId>
|
||||
<version>3.0.2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<version>8.0.33</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.restdocs</groupId>
|
||||
<artifactId>spring-restdocs-mockmvc</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-actuator</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-core</artifactId>
|
||||
<version>2.20.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.asciidoctor</groupId>
|
||||
<artifactId>asciidoctor-maven-plugin</artifactId>
|
||||
<version>2.2.1</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-docs</id>
|
||||
<phase>prepare-package</phase>
|
||||
<goals>
|
||||
<goal>process-asciidoc</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<backend>html</backend>
|
||||
<doctype>book</doctype>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.springframework.restdocs</groupId>
|
||||
<artifactId>spring-restdocs-asciidoctor</artifactId>
|
||||
<version>${spring-restdocs.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<excludes>
|
||||
<exclude>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,13 @@
|
|||
package com.cmhi.tunnelservice;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
@SpringBootApplication
|
||||
public class TunnelServiceApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(TunnelServiceApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,81 @@
|
|||
package com.cmhi.tunnelservice.controller;
|
||||
|
||||
import com.cmhi.tunnelservice.pojo.entry.BaseProtocolDTO;
|
||||
import com.cmhi.tunnelservice.pojo.entry.GetUserConfig;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@Controller
|
||||
//@RequestMapping(value = "/auth")
|
||||
@Slf4j
|
||||
public class AuthUser {
|
||||
@GetMapping("third")
|
||||
@ResponseBody
|
||||
public String third(String name, Integer age){
|
||||
log.info("User " + name + ", Age: " + age);
|
||||
return "success";
|
||||
}
|
||||
|
||||
@PostMapping("/getuserconfig")
|
||||
@ResponseBody
|
||||
public String getUserConfig(@RequestBody BaseProtocolDTO<GetUserConfig> mr,
|
||||
@RequestHeader HttpHeaders headers) {
|
||||
return """
|
||||
{
|
||||
"ver": 1,
|
||||
"cryptoType": 0,
|
||||
"timeStamp": 1688954003,
|
||||
"code": 0,
|
||||
"msgContent": {
|
||||
"scgCtrlAppId": 7,
|
||||
"scgTunnelAppId": 8,
|
||||
"cliPrivateKey": "WGAlqvys3O83VmWug6Z8NzUrxGr/PNHSeOVFnKLSe2k=",
|
||||
"cliPublicKey": "6BWnmkCJqJC5iNoCEZWTxwGNG7qwkxFoVgAk4DoIKCk=",
|
||||
"cliAddress": "10.10.10.1/32",
|
||||
"vmConfig": [
|
||||
{
|
||||
"vmId": 1,
|
||||
"vmName": "Windows10_1",
|
||||
"svrPublicKey": "8KEaqtWM5U35SR8S3QJriGHPr0VIqvk8A7BEuOjjp1M=",
|
||||
"vmNetwork": "10.0.4.16/30",
|
||||
"scgGateway": "101.35.234.160:10010"
|
||||
},
|
||||
{
|
||||
"vmId": 2,
|
||||
"vmName": "Windows10_2",
|
||||
"svrPublicKey": "q3ep8hN2v3VpHbcru+rTmvyBt13iH0DkEsVAyT2LpVo=",
|
||||
"vmNetwork": "192.168.100.210/24",
|
||||
"scgGateway": "efc.xajhuang.com:10000"
|
||||
},
|
||||
{
|
||||
"vmId": 3,
|
||||
"vmName": "Windows10_3",
|
||||
"svrPublicKey": "q3ep8hN2v3VpHbcru+rTmvyBt13iH0DkEsVAyT2LpVo=",
|
||||
"vmNetwork": "172.18.2.152/26",
|
||||
"scgGateway": "localhost:10000"
|
||||
}
|
||||
]
|
||||
}
|
||||
}""";
|
||||
}
|
||||
|
||||
@PostMapping("/getserverconfig")
|
||||
@ResponseBody
|
||||
public String getServerConfig(@RequestBody BaseProtocolDTO<GetUserConfig> mr,
|
||||
@RequestHeader HttpHeaders headers) {
|
||||
return """
|
||||
{
|
||||
"ver": 1,
|
||||
"cryptoType": 0,
|
||||
"timeStamp": 1688954003,
|
||||
"code": 0,
|
||||
"msgContent": {
|
||||
"svrListenPort": 10001,
|
||||
"svrPrivateKey": "2HyQfL2Na76JuI68ozEMK0LA6coV98GjMW6aZG6AnEA=",
|
||||
"svrAddress": "10.10.10.2/24"
|
||||
}
|
||||
}""";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
package com.cmhi.tunnelservice.pojo.entry;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* The type Base protocol dto.
|
||||
*
|
||||
* @param <T> the type parameter
|
||||
* @author <huangxin@cmhi.chinamoblie.com>
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@JsonPropertyOrder({"ver", "cryptoType", "timeStamp", "msgContent"})
|
||||
public class BaseProtocolDTO<T> {
|
||||
/**
|
||||
* 当前协议版本号
|
||||
*/
|
||||
private Integer ver;
|
||||
|
||||
/**
|
||||
* msgContent字段内容编码格式
|
||||
*/
|
||||
private Integer cryptoType;
|
||||
|
||||
/**
|
||||
* 当前UTC时间戳(ms)
|
||||
*/
|
||||
private Long timeStamp;
|
||||
|
||||
/**
|
||||
* 协议详细内容
|
||||
*/
|
||||
private T msgContent;
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
package com.cmhi.tunnelservice.pojo.entry;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||
public class GetUserConfig {
|
||||
private String userName;
|
||||
private String token;
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
package com.cmhi.tunnelservice.pojo.entry;
|
||||
|
||||
public class User {
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
package com.cmhi.tunnelservice;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
@SpringBootTest
|
||||
class TunnelServiceApplicationTests {
|
||||
|
||||
@Test
|
||||
void contextLoads() {
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue