linxk 1 ماه پیش
کامیت
9961750254

+ 23 - 0
.gitignore

@@ -0,0 +1,23 @@
+target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+nbproject/private/
+build/
+nbbuild/
+dist/
+nbdist/
+.nb-gradle/

+ 1 - 0
README.md

@@ -0,0 +1 @@
+11

+ 398 - 0
pom.xml

@@ -0,0 +1,398 @@
+<?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">
+
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+		<version>2.0.5.RELEASE</version>
+    </parent>
+    <groupId>com.txz</groupId>
+    <modelVersion>4.0.0</modelVersion>
+    <artifactId>common</artifactId>
+    <packaging>jar</packaging>
+    <version>1.0.0-SNAPSHOT</version>
+    <properties>
+        <java.version>1.8</java.version>
+    </properties>
+
+    <!-- Inherit defaults from Spring Boot -->
+    <dependencies>
+
+        <!--异维科技web引擎依赖-->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+            <!-- 移除tomcat容器-->
+            <exclusions>
+                <exclusion>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-starter-tomcat</artifactId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>logback-core</artifactId>
+                    <groupId>ch.qos.logback</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-core</artifactId>
+            <version>2.14.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-api</artifactId>
+            <version>2.14.1</version>
+        </dependency>
+
+
+        <!-- 替换undertow容器 -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-undertow</artifactId>
+        </dependency>
+
+        <!--redis依赖-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.boot</groupId>-->
+<!--            <artifactId>spring-boot-starter-redis</artifactId>-->
+<!--            <version>1.3.8.RELEASE</version>-->
+<!--        </dependency>-->
+
+<!--        <dependency>-->
+<!--            <groupId>redis.clients</groupId>-->
+<!--            <artifactId>jedis</artifactId>-->
+<!--            <version>2.9.0</version>-->
+<!--        </dependency>-->
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-actuator</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-webflux</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-thymeleaf</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.retry</groupId>
+            <artifactId>spring-retry</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-jdbc</artifactId>
+        </dependency>
+
+        <!--常用库依赖-->
+        <dependency>
+            <groupId>commons-codec</groupId>
+            <artifactId>commons-codec</artifactId>
+        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.apache.commons</groupId>-->
+<!--            <artifactId>commons-lang3</artifactId>-->
+<!--            <version>3.5</version>-->
+<!--        </dependency>-->
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-cache</artifactId>
+        </dependency>
+
+<!--        <dependency>-->
+<!--            <groupId>javax.servlet</groupId>-->
+<!--            <artifactId>javax.servlet-api</artifactId>-->
+<!--            <version>3.1.0</version>-->
+<!--            <scope>provided</scope>-->
+<!--        </dependency>-->
+        <!--MySQL JDBC驱动-->
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+            <scope>runtime</scope>
+        </dependency>
+        <!--MyBatis 及 插件依赖-->
+        <dependency>
+            <groupId>org.mybatis</groupId>
+            <artifactId>mybatis-spring</artifactId>
+            <!--            <version>1.3.1</version>-->
+            <version>2.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>org.mybatis</groupId>
+            <artifactId>mybatis</artifactId>
+            <version>3.4.4</version>
+        </dependency>
+        <dependency>
+            <groupId>tk.mybatis</groupId>
+            <artifactId>mapper</artifactId>
+            <version>3.4.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.mybatis.spring.boot</groupId>
+            <artifactId>mybatis-spring-boot-starter</artifactId>
+            <!--  <version>1.1.1</version>-->
+            <version>2.0.1</version>
+        </dependency>
+
+        <!--      升级分页插件 -->
+        <dependency>
+            <groupId>com.github.pagehelper</groupId>
+            <artifactId>pagehelper-spring-boot-starter</artifactId>
+            <version>1.2.3</version>
+        </dependency>
+        <!--阿里 FastJson依赖-->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <!--            <version>1.2.22</version>-->
+            <version>1.2.69</version>
+        </dependency>
+        <!--阿里 Druid Spring Boot Starter依赖-->
+<!--        <dependency>-->
+<!--            <groupId>com.alibaba</groupId>-->
+<!--            <artifactId>druid-spring-boot-starter</artifactId>-->
+<!--            &lt;!&ndash;            <version>1.1.2</version>&ndash;&gt;-->
+<!--            <version>1.1.10</version>-->
+<!--        </dependency>-->
+        <!--代码生成器依赖-->
+        <dependency>
+            <groupId>org.freemarker</groupId>
+            <artifactId>freemarker</artifactId>
+            <version>2.3.23</version>
+        </dependency>
+        <dependency>
+            <groupId>org.mybatis.generator</groupId>
+            <artifactId>mybatis-generator-core</artifactId>
+            <version>1.3.5</version>
+
+        </dependency>
+        <dependency>
+            <groupId>com.github.misterchangray.mybatis.generator.plugins</groupId>
+            <artifactId>myBatisGeneratorPlugins</artifactId>
+            <version>1.2</version>
+        </dependency>
+        <!-- swagger2 -->
+        <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.collections</groupId>-->
+<!--            <artifactId>google-collections</artifactId>-->
+<!--            <version>1.0</version>-->
+<!--        </dependency>-->
+        <dependency>
+            <groupId>com.github.xiaoymin</groupId>
+            <artifactId>swagger-bootstrap-ui</artifactId>
+            <version>1.9.6</version>
+        </dependency>
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-annotations</artifactId>
+            <scope>compile</scope>
+            <version>1.5.22</version>
+        </dependency>
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-models</artifactId>
+            <version>1.5.22</version>
+        </dependency>
+
+
+        <dependency>
+            <groupId>com.spring4all</groupId>
+            <artifactId>swagger-spring-boot-starter</artifactId>
+            <version>1.8.0.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+
+        <!--异维科技cloud包依赖-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-dubbo</artifactId>-->
+<!--            <version>0.2.2.RELEASE</version>-->
+<!--        </dependency>-->
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-openfeign</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
+        </dependency>
+
+<!--        <dependency>-->
+<!--            <groupId>cn.hutool</groupId>-->
+<!--            <artifactId>hutool-all</artifactId>-->
+<!--            <version>5.0.1</version>-->
+<!--        </dependency>-->
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>4.1.2</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <version>1.18.10</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.qcloud</groupId>
+            <artifactId>cos_api</artifactId>
+            <version>5.6.8</version>
+        </dependency>
+
+<!--        <dependency>-->
+<!--            <groupId>org.apache.dubbo</groupId>-->
+<!--            <artifactId>dubbo-registry-nacos</artifactId>-->
+<!--            <version>2.7.1</version>-->
+<!--        </dependency>-->
+
+        <!-- MQ -->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.boot</groupId>-->
+<!--            <artifactId>spring-boot-starter-amqp</artifactId>-->
+<!--        </dependency>-->
+
+        <dependency>
+            <groupId>org.apache.rocketmq</groupId>
+            <artifactId>rocketmq-spring-boot-starter</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.dubbo</groupId>
+            <artifactId>dubbo-spring-boot-starter</artifactId>
+        </dependency>
+
+        <!-- dubbo序列化方式 -->
+        <dependency>
+            <groupId>com.esotericsoftware</groupId>
+            <artifactId>kryo</artifactId>
+            <version>4.0.2</version>
+        </dependency>
+        <dependency>
+            <groupId>de.javakaffee</groupId>
+            <artifactId>kryo-serializers</artifactId>
+            <version>0.45</version>
+        </dependency>
+
+        <!-- Dubbo -->
+        <dependency>
+            <groupId>org.apache.dubbo</groupId>
+            <artifactId>dubbo</artifactId>
+        </dependency>
+
+        <!-- Dubbo Registry Nacos -->
+        <dependency>
+            <groupId>org.apache.dubbo</groupId>
+            <artifactId>dubbo-registry-nacos</artifactId>
+            <version>2.7.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alibaba.nacos</groupId>
+            <artifactId>nacos-client</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>com.google.guava</groupId>
+                    <artifactId>guava</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
+
+    </dependencies>
+
+    <distributionManagement>
+        <snapshotRepository>
+            <uniqueVersion>false</uniqueVersion>
+            <id>nexus-snapshots</id>
+            <name>Nexus Snapshot Repository</name>
+            <url>https://maven.medipath.com.cn/repository/maven-snapshots/</url>
+            <layout>default</layout>
+        </snapshotRepository>
+
+        <repository>
+            <id>nexus-releases</id>
+            <name>maven-releases</name>
+            <url>https://maven.medipath.com.cn/repository/maven-releases/</url>
+        </repository>
+    </distributionManagement>
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.springframework.cloud</groupId>
+                <artifactId>spring-cloud-dependencies</artifactId>
+                <version>Finchley.SR1</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.cloud</groupId>
+                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
+                <version>0.2.2.RELEASE</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <build>
+    	<plugins>
+	           <plugin>
+	                <groupId>org.springframework.boot</groupId>
+	                <artifactId>spring-boot-maven-plugin</artifactId>
+                   <configuration>
+                       <classifier>exec</classifier>
+                   </configuration>
+                   <executions>
+                       <execution>
+                           <goals>
+                               <goal>repackage</goal>
+                           </goals>
+                       </execution>
+                   </executions>
+	            </plugin>
+	            <plugin>
+	                <artifactId>maven-compiler-plugin</artifactId>
+	                <configuration>
+	                    <source>${java.version}</source>
+	                    <target>${java.version}</target>
+	                    <encoding>UTF-8</encoding>
+	                </configuration>
+	            </plugin>
+          </plugins>
+    </build>
+
+
+</project>

+ 12 - 0
src/main/java/com/txz/CommonApplication.java

@@ -0,0 +1,12 @@
+package com.txz;
+
+import org.springframework.boot.SpringApplication;
+
+public class CommonApplication {
+
+    public static void main(String[] args) throws Exception {
+        SpringApplication.run(CommonApplication.class, args);
+    }
+
+}
+

+ 36 - 0
src/main/java/com/txz/core/BaseBeen.java

@@ -0,0 +1,36 @@
+package com.txz.core;
+
+import javax.persistence.Transient;
+
+import org.apache.commons.lang.builder.ToStringBuilder;
+import org.apache.commons.lang.builder.ToStringStyle;
+
+public class BaseBeen {
+
+    @Transient 
+    private String startTime;
+    
+    @Transient 
+    private String endTime;
+
+	public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    @Override
+	public String toString() {  
+        return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);  
+    }
+}

+ 15 - 0
src/main/java/com/txz/core/BaseUser.java

@@ -0,0 +1,15 @@
+package com.txz.core;
+
+/**
+ * 管理员与会员的父类
+ * 
+ * @author wang xiaobo
+ * 
+ */
+public abstract class BaseUser {
+
+	private static final long serialVersionUID = 1L;
+
+	public abstract String getUserName();
+
+}

+ 140 - 0
src/main/java/com/txz/core/Result.java

@@ -0,0 +1,140 @@
+package com.txz.core;
+
+import com.alibaba.fastjson.JSON;
+
+/**
+ * 统一API响应结果封装
+ */
+public class Result<T> {
+
+    public static final String SUCCESSFUL_CODE = "200";
+    public static final String SUCCESSFUL_MESG = "success";
+
+    private String code;
+    private String message;
+    private String voice;
+    private T data;
+
+    public String getVoice() {
+        return voice;
+    }
+
+    public Result setVoice(String voice) {
+        this.voice = voice;
+        return this;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public Result setCode(String code) {
+        this.code = code;
+        return this;
+    }
+
+    public String getMessage() {
+        return message;
+    }
+
+    public Result setMessage(String message) {
+        this.message = message;
+        return this;
+    }
+
+    public T getData() {
+        return data;
+    }
+
+    public Result setData(T data) {
+        this.data = data;
+        return this;
+    }
+
+    @Override
+    public String toString() {
+        return JSON.toJSONString(this);
+    }
+
+    public Result() {
+    }
+
+
+
+    /**
+     * 内部使用,用于构造成功的结果
+     *
+     * @param code
+     * @param mesg
+     * @param data
+     */
+    private Result(String code, String mesg, T data) {
+        this.code = code;
+        this.message = mesg;
+        this.data = data;
+        //this.time = ZonedDateTime.now().toInstant();
+    }
+
+    /**
+     * 快速创建成功结果并返回结果数据
+     *
+     * @param data
+     * @return Result
+     */
+    public static Result success(Object data) {
+        return new Result(SUCCESSFUL_CODE, SUCCESSFUL_MESG, data);
+    }
+
+    public static Result success(String code,String message,Object data) {
+        return new Result(code, message, data);
+    }
+
+    /**
+     * 快速创建成功结果
+     *
+     * @return Result
+     */
+    public static Result success() {
+        return success(null);
+    }
+
+    /**
+     * 系统异常类并返回结果数据
+     *
+     * @param data
+     * @return Result
+     */
+    public static Result fail(Object data) {
+        return new Result<>("400","fail", data);
+    }
+
+    /**
+     * 异常信息
+     *
+     * @param code      消息码
+     * @param message   消息
+     * @return          异常信息
+     */
+    public static Result error(String code, String message) {
+        return new Result(code, message, null);
+    }
+
+    /**
+     * 成功code=000000
+     *
+     * @return true/false
+     */
+    public boolean isSuccess() {
+        return SUCCESSFUL_CODE.equals(this.code);
+    }
+
+    /**
+     * 失败
+     *
+     * @return true/false
+     */
+    public boolean isFail() {
+        return !isSuccess();
+    }
+
+}

+ 17 - 0
src/main/java/com/txz/core/ServiceException.java

@@ -0,0 +1,17 @@
+package com.txz.core;
+
+/**
+ * 服务(业务)异常如“ 账号或密码错误 ”,该异常只做INFO级别的日志记录 @see WebMvcConfigurer
+ */
+public class ServiceException extends RuntimeException {
+    public ServiceException() {
+    }
+
+    public ServiceException(String message) {
+        super(message);
+    }
+
+    public ServiceException(String message, Throwable cause) {
+        super(message, cause);
+    }
+}

+ 21 - 0
src/main/java/com/txz/core/interceptor/ThreadUser.java

@@ -0,0 +1,21 @@
+package com.txz.core.interceptor;
+
+import com.txz.core.BaseUser;
+
+public class ThreadUser {
+
+	private static ThreadLocal<BaseUser> local = new ThreadLocal<BaseUser>();
+
+	public static void putLoginUser(BaseUser user) {
+		local.set(user);
+	}
+
+	public static BaseUser getLoginUser() {
+		return local.get();
+	}
+
+	public static void remove() {
+		local.remove();
+	}
+
+}

+ 4 - 0
src/main/resources/banner.txt

@@ -0,0 +1,4 @@
+ __  __  ____  ____  ____  ____   __   ____  _   _
+(  \/  )( ___)(  _ \(_  _)(  _ \ /__\ (_  _)( )_( )
+ )    (  )__)  )(_) )_)(_  )___//(__)\  )(   ) _ (
+(_/\/\_)(____)(____/(____)(__) (__)(__)(__) (_) (_)

+ 2 - 0
src/main/resources/bootstrap.properties

@@ -0,0 +1,2 @@
+spring.application.name=common
+