Jelajahi Sumber

搭建健康web模块基础环境

JasonWang 3 tahun lalu
induk
melakukan
ad47a859e7

+ 8 - 7
.idea/compiler.xml

@@ -9,27 +9,28 @@
         <outputRelativeToContentRoot value="true" />
         <module name="datatraining-server" />
         <module name="consumer-hb" />
-        <module name="adapter-td-hb" />
+        <module name="benchmarking-web-hb" />
         <module name="meteorologicalcollection" />
         <module name="customization-hb" />
-        <module name="datacenter-hb" />
+        <module name="healthmanagement-web-hb" />
         <module name="failurestatistics-server" />
         <module name="analysis-histroy-hb" />
         <module name="cache" />
+        <module name="adapter-td-hb" />
         <module name="healthmodel-server" />
         <module name="meteorologicalcollection-web" />
-        <module name="monitor-web" />
+        <module name="common" />
         <module name="knowledge-hb" />
-        <module name="benchmarking-web-hb" />
+        <module name="monitor-web" />
         <module name="benchmarking-web" />
         <module name="healthmanagement-histroy" />
-        <module name="benchmarking-histroy-hb" />
+        <module name="analysis-web-hb" />
         <module name="healthmanagement-histroy-hb" />
         <module name="consumer" />
-        <module name="analysis-web-hb" />
+        <module name="benchmarking-histroy-hb" />
         <module name="benchmarking-histroy" />
         <module name="algorithm-web" />
-        <module name="common" />
+        <module name="datacenter-hb" />
       </profile>
     </annotationProcessing>
   </component>

+ 2 - 0
.idea/encodings.xml

@@ -41,6 +41,8 @@
     <file url="file://$PROJECT_DIR$/web/consumer/src/main/resources" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/web/datacenter-hb/src/main/java" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/web/datacenter-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/healthmanagement-web-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/healthmanagement-web-hb/src/main/resources" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/web/knowledge-hb/src/main/java" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/web/knowledge-hb/src/main/resources" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/web/meteorologicalcollection-web/src/main/java" charset="UTF-8" />

+ 4 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/HealthmanagementMain.java

@@ -1,7 +1,9 @@
 package com.gyee.healthmanagement;
 
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
 
 /**
  * @ClassName : HealthmanagementMain
@@ -10,6 +12,8 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
  * @Description :
  */
 @SpringBootApplication
+@EnableDiscoveryClient
+@MapperScan("com.gyee.healthmanagement.mapper")
 public class HealthmanagementMain {
     public static void main(String[] args) {
         SpringApplication.run(HealthmanagementMain.class,args);

+ 26 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/config/CorsConfig.java

@@ -0,0 +1,26 @@
+package com.gyee.healthmanagement.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+/**
+ * @ClassName : CorsConfig
+ * @Author : xieshengjie
+ * @Date: 2021/6/28 20:00
+ * @Description :
+ */
+@Configuration
+public class CorsConfig implements WebMvcConfigurer {
+
+    static final String[] ORIGINS = new String[]{"GET", "POST", "PUT", "DELETE"};  //请求方式
+
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        registry.addMapping("/**") //所有的当前站点的请求地址,都支持跨域访问
+                .allowedOrigins("*")// 所有的外部域都可跨域访问,这里注意2.4.0以后是allowedOriginPatterns,以前是allowedOrigins
+                .allowCredentials(true)  //是否支持跨域用户凭证
+                .allowedMethods(ORIGINS) //当前站点支持的跨域请求类型是什么
+                .maxAge(3600);  //超是时长,单位为秒。
+    }
+}

+ 151 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/config/GeneratorCodeConfig.java

@@ -0,0 +1,151 @@
+package com.gyee.healthmanagement.config;
+
+
+import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.generator.AutoGenerator;
+import com.baomidou.mybatisplus.generator.config.*;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
+
+import java.util.Scanner;
+
+/**
+ *@ClassName GeneratorCodeConfig
+ *@Description 自动生成mybatisplus的相关代码
+ *@Author 谢生杰
+ *@Date 2020/9/25 18:26
+ *@Version 1.0
+ **/
+public class GeneratorCodeConfig {
+    public static String scanner(String tip) {
+        Scanner scanner = new Scanner(System.in);
+        StringBuilder help = new StringBuilder();
+        help.append("请输入" + tip + ":");
+        System.out.println(help.toString());
+        if (scanner.hasNext()) {
+            String ipt = scanner.next();
+            if (StringUtils.isNotEmpty(ipt)) {
+                return ipt;
+            }
+        }
+        throw new MybatisPlusException("请输入正确的" + tip + "!");
+    }
+
+    public static void main(String[] args) {
+        // 代码生成器
+        AutoGenerator mpg = new AutoGenerator();
+
+        // 全局配置
+        GlobalConfig gc = new GlobalConfig();
+        String projectPath = System.getProperty("user.dir");
+        gc.setOutputDir(projectPath + "/src/main/java");
+        gc.setAuthor("谢生杰");
+        gc.setOpen(false);
+        //实体属性 Swagger2 注解
+        gc.setSwagger2(false);
+        mpg.setGlobalConfig(gc);
+
+        // 数据源配置
+        DataSourceConfig dsc = new DataSourceConfig();
+
+//        dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true");
+//        dsc.setDriverName("com.mysql.jdbc.Driver");
+//        dsc.setUsername("root");
+//        dsc.setPassword("root");
+//        mpg.setDataSource(dsc);
+
+        dsc.setDriverName("oracle.jdbc.driver.OracleDriver");
+        dsc.setUsername("gdprod");
+        dsc.setPassword("gd123");
+//        dsc.setUrl("jdbc:oracle:thin:@49.4.50.80:1521:gdnxfd");
+        dsc.setUrl("jdbc:oracle:thin:@10.83.68.165:1521:gdsj");
+        mpg.setDataSource(dsc);
+
+//        dsc.setDriverName("com.cloudera.impala.jdbc41.Driver");
+//        dsc.setUrl("jdbc:impala://192.168.1.67:21050/gyee_test");
+//        mpg.setDataSource(dsc);
+
+
+
+        // 包配置
+        PackageConfig pc = new PackageConfig();
+//        pc.setModuleName(scanner("模块名"));
+        pc.setParent("com.gyee.healthmanagement");
+        pc.setEntity("model.auto");
+        pc.setMapper("mapper.auto");
+        pc.setService("service.auto");
+        pc.setServiceImpl("service.auto.impl");
+        pc.setController("controller.auto");
+        mpg.setPackageInfo(pc);
+
+        // 自定义配置
+//        InjectionConfig cfg = new InjectionConfig() {
+//            @Override
+//            public void initMap() {
+//                // to do nothing
+//            }
+//        };
+
+        // 如果模板引擎是 freemarker
+//        String templatePath = "/templates/mapper.xml.ftl";
+        // 如果模板引擎是 velocity
+        // String templatePath = "/templates/mapper.xml.vm";
+
+        // 自定义输出配置
+//        List<FileOutConfig> focList = new ArrayList<>();
+        // 自定义配置会被优先输出
+//        focList.add(new FileOutConfig(templatePath) {
+//            @Override
+//            public String outputFile(TableInfo tableInfo) {
+//                // 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!
+//                return projectPath + "/src/main/resources/mapper/" + pc.getModuleName()
+//                        + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML;
+//            }
+//        });
+        /*
+        cfg.setFileCreate(new IFileCreate() {
+            @Override
+            public boolean isCreate(ConfigBuilder configBuilder, FileType fileType, String filePath) {
+                // 判断自定义文件夹是否需要创建
+                checkDir("调用默认方法创建的目录");
+                return false;
+            }
+        });
+        */
+//        cfg.setFileOutConfigList(focList);
+//        mpg.setCfg(cfg);
+
+        // 配置模板
+        TemplateConfig templateConfig = new TemplateConfig();
+
+        // 配置自定义输出模板
+        //指定自定义模板路径,注意不要带上.ftl/.vm, 会根据使用的模板引擎自动识别
+        // templateConfig.setEntity("templates/entity2.java");
+        // templateConfig.setService();
+        // templateConfig.setController();
+
+        templateConfig.setXml(null);
+        mpg.setTemplate(templateConfig);
+
+        // 策略配置
+        StrategyConfig strategy = new StrategyConfig();
+        strategy.setNaming(NamingStrategy.underline_to_camel);
+        strategy.setColumnNaming(NamingStrategy.underline_to_camel);
+        strategy.setSuperEntityClass("com.baomidou.mybatisplus.extension.activerecord.Model");
+        strategy.setEntityLombokModel(true);
+        strategy.setRestControllerStyle(true);
+
+        strategy.setEntityLombokModel(true);
+        // 公共父类
+//        strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");
+        // 写于父类中的公共字段
+//        strategy.setSuperEntityColumns("id");
+        strategy.setInclude(scanner("表名,多个英文逗号分割").split(","));
+        strategy.setControllerMappingHyphenStyle(true);
+        strategy.setTablePrefix(pc.getModuleName() + "_");
+        mpg.setStrategy(strategy);
+        mpg.setTemplateEngine(new FreemarkerTemplateEngine());
+        mpg.execute();
+    }
+}

+ 23 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/config/MybatisPlusConfig.java

@@ -0,0 +1,23 @@
+package com.gyee.healthmanagement.config;
+
+import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ *@ClassName MybatisPlusConfig
+ *@Description 配置分页插件
+ *@Author 谢生杰
+ *@Date 2020/9/25 18:24
+ *@Version 1.0
+ **/
+@Configuration
+public class MybatisPlusConfig {
+    /**
+     * 分页插件
+     */
+    @Bean
+    public PaginationInterceptor paginationInterceptor() {
+        return new PaginationInterceptor();
+    }
+}

+ 71 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/config/R.java

@@ -0,0 +1,71 @@
+package com.gyee.healthmanagement.config;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName : R
+ * @Author : xieshengjie
+ * @Date: 2021/5/16 16:59
+ * @Description : 结果集
+ */
+@Data
+public class R {
+    @ApiModelProperty(value = "是否成功")
+    private Boolean success;
+    @ApiModelProperty(value = "返回码")
+    private Integer code;
+    @ApiModelProperty(value = "返回消息")
+    private String message;
+    @ApiModelProperty(value = "总数量")
+    private Integer count;
+    @ApiModelProperty(value = "返回数据")
+    private Object data = new Object();
+    private R(){}
+    public static R ok(){
+        R r = new R();
+        r.setSuccess(true);
+        r.setCode(ResultCode.SUCCESS);
+        r.setMessage("成功");
+        return r;
+    }
+    public static R ok(Integer count){
+        R r = new R();
+        r.setSuccess(true);
+        r.setCode(ResultCode.SUCCESS);
+        r.setMessage("成功");
+        r.setCount(count);
+        return r;
+    }
+    public static R error(){
+        R r = new R();
+        r.setSuccess(false);
+        r.setCode(ResultCode.ERROR);
+        r.setMessage("失败");
+        return r;
+    }
+    public R success(Boolean success){
+        this.setSuccess(success);
+        return this;
+    }
+    public R message(String message){
+        this.setMessage(message);
+        return this;
+    }
+    public R code(Integer code){
+        this.setCode(code);
+        return this;
+    }
+//    public R data(String key, Object value){
+//        this.data.put(key, value);
+//        return this;
+//    }
+//    public R data(Map<String, Object> map){
+//        this.setData(map);
+//        return this;
+//    }
+    public R data(Object value){
+        this.setData(value);
+        return this;
+    }
+}

+ 12 - 0
web/healthmanagement-web-hb/src/main/java/com/gyee/healthmanagement/config/ResultCode.java

@@ -0,0 +1,12 @@
+package com.gyee.healthmanagement.config;
+
+/**
+ * @ClassName : ResultCode
+ * @Author : xieshengjie
+ * @Date: 2021/5/16 17:01
+ * @Description : 结果状态
+ */
+public class ResultCode {
+    public static Integer SUCCESS = 200;
+    public static Integer ERROR = 500;
+}

+ 1 - 1
web/healthmanagement-web-hb/src/main/resources/application-dev.yml

@@ -6,7 +6,7 @@ server:
 
 spring:
   application:
-    name: benchmarking-provider
+    name: healthmanagement-provider
   main:
     allow-bean-definition-overriding: true #当遇到同样名字的时候,是否允许覆盖注册
   cloud:

+ 1 - 1
web/healthmanagement-web-hb/src/main/resources/application-test.yml

@@ -6,7 +6,7 @@ server:
 
 spring:
   application:
-    name: benchmarking-provider
+    name: healthmanagement-provider
   main:
     allow-bean-definition-overriding: true #当遇到同样名字的时候,是否允许覆盖注册
   cloud: