1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/javayixin0921-offcn_parent

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 19 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 11:34 d11beb2

Введение

(Система управления здоровьем, разработанная на основе Springboot)

По мере того как эпидемия постепенно заканчивается, люди всё больше внимания уделяют своему здоровью. Они становятся более осведомлёнными о здоровье и предъявляют растущий спрос на услуги в этой области. Медицинские осмотры рассматриваются как активная профилактическая мера для предотвращения возможных проблем со здоровьем. Платформа управления медицинскими услугами стремится создать структуру управления здоровьем и обеспечить гибкое общение между медицинским персоналом и участниками. Она использует цифровые технологии для управления процессами медицинских осмотров, сбора результатов, обобщения выводов, оценки здоровья и управления участниками. Это позволяет предоставлять участникам индивидуальные планы медицинских осмотров и отслеживать их состояние здоровья на постоянной основе, обеспечивая долгосрочное обслуживание.

Архитектура программного обеспечения

В этом проекте используется подход к разработке с использованием модулей Maven. Весь проект разделяется на несколько проектов Maven, где родительский проект обеспечивает унифицированные стандарты зависимостей, а остальные проекты содержат специфический код. Вот подробное описание каждого модуля:

  • offcnpe_parent — родительский проект, который упаковывается в формате pom. Он обеспечивает единую спецификацию зависимостей и объединяет другие дочерние модули для удобства выполнения команд Maven.
  • offcnpe_pojo — модуль, содержащий модели данных, которые используются в проекте. Он упаковывается в формат jar.
  • offcnpe_interface — модуль, который содержит сервисные интерфейсы. Он также упаковывается в формат jar.
  • offcnpe_provider — модуль Dubbo, который служит поставщиком услуг. Он упакован в формате war и содержит классы реализации сервисов, интерфейсы Dao и файлы сопоставления Mapper. Этот модуль должен быть развёрнут на сервере Tomcat для работы.
  • offcnpe_controller — модуль для бэкенда системы управления здоровьем малого U. Он упакован в формате war, выступает в роли потребителя услуг Dubbo и содержит контроллеры, HTML-страницы, JavaScript, CSS и конфигурацию Spring. Этот модуль также должен быть развёрнут на сервере Tomcat.
  • offcnpe_mobile — модуль для фронтенда мобильной версии системы. Он упакован в формат war, является потребителем услуг Dubbo и включает контроллеры, HTML-страницы, JavaScript, CSS и конфигурацию Spring. Как и предыдущий модуль, он должен быть развёрнут на сервере Tomcat.
  • offcnpe_util — модуль с инструментами. Он упакован в формат jar и содержит некоторые инструменты, классы результатов и константы, используемые в проекте.

Руководство по установке

Pom.xml

org.springframework.boot spring-boot-starter-parent 2.4.5

pom

1.8 3.4.2 2.7.6 5.1.47 2.6.1 3.14 com.baomidou mybatis-plus-boot-starter ${baomidou.version} com.baomidou mybatis-plus-generator 3.4.1 mysql mysql-connector-java ${mysql.version} io.springfox springfox-swagger2 ${swagger.version} io.springfox springfox-swagger-ui ${swagger.version} org.apache.dubbo dubbo-spring-boot-starter ${dubbo.version} org.apache.poi poi-ooxml ${poi.version} Создание offcnpe_interface проекта:

org.apache.velocity velocity-engine-core 2.0

Создание offcnpe_controller проекта:

Зависимости:

  • зависимость от com.offcn:offcnpe_pojo с версией 1.0;
  • зависимость от com.offcn:offcnpe_util с версией 1.0.

Создание offcnpe_provider проекта:

Зависимости:

  • spring-boot-starter;
  • spring-boot-starter-web;
  • spring-boot-starter-test со scope test;
  • mybatis-plus-boot-starter от baomidou;
  • mysql-connector-java со scope runtime;
  • dubbo-spring-boot-starter;
  • dubbo-dependencies-zookeeper с версией 2.7.6, типом pom и исключениями slf4j-log4j12;
  • offcnpe_interface с версией 1.0;
  • spring-boot-starter-data-redis;
  • druid с версией 1.1.20.

Сборка:

Плагин spring-boot-maven-plugin.

Файл Application.yml:

Порт и путь доступа

server: port: 9001 servlet: context-path: /

Имя приложения Spring

spring: application: name: offcnpe_provider

Конфигурация источника данных

datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql:///offcnpe username: root password: root type: com.alibaba.druid.pool.DruidDataSource

MyBatis-Plus

mybatis-plus: configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: db-config: logic-not-delete-value: 1 logic-delete-value: 0 mapper-locations: classpath:/mappers/xml/*.xml type-aliases-package: com.offcn.pojo

Dubbo порт и имя

dubbo: protocol: name: dubbo port: 20880 registry: address: zookeeper://192.168.18.230:2181 timeout: 60000 scan: base-packages: com.offcn.service.impl

Класс PeServiceProviderApplication:

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication public class PeServiceProviderApplication { public static void main(String[] args) { SpringApplication.run(PeServiceProviderApplication.class,args); } }

В запросе присутствуют фрагменты кода на языке Java, но в ответе они не были переведены. Зависимости

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- 项目初期没有用到权限管理的时候将这个依赖暂时注释掉 -->

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <!-- dubbo的依赖 -->
    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-spring-boot-starter</artifactId>
    </dependency>

    <!-- zk的依赖 -->
    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-dependencies-zookeeper</artifactId>
        <version>2.7.6</version>
        <type>pom</type>
        <exclusions>
            <exclusion>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>

    <dependency>
        <groupId>com.offcn</groupId>
        <artifactId>offcnpe_interface</artifactId>
        <version>1.0</version>
    </dependency>

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.1.20</version>
    </dependency>

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.68</version>
    </dependency>
</dependencies>

Сборка

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>
                <addResources>true</addResources>
            </configuration>
        </plugin>
    </plugins>
</build>

application.yml server: servlet: context-path: / port: 9002

spring: application: name: offcnpe_controller datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql:///offcnpe username: root password: root type: com.alibaba.druid.pool.DruidDataSource devtools: restart: enabled: true additional-paths: src/main/java redis: host: 192.168.18.230 port: 6379 password: 123456 dubbo: protocol: name: dubbo port: 20881 registry: address: zookeeper://192.168.18.230:2181 timeout: 60000

package com.offcn;

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication public class PeControllerApplication {

public static void main(String[] args) {
    SpringApplication.run(PeControllerApplication.class,args);
}

}

Создание offcnpe_mobile移动端前台工程

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency> **artifactId**: spring-boot-devtools

scope: runtime optional: true

artifactId: spring-boot-starter-test groupId: org.springframework.boot scope: test

artifactId: dubbo-spring-boot-starter groupId: org.apache.dubbo

version: 2.7.6 type: pom artifactId: dubbo-dependencies-zookeeper groupId: org.apache.dubbo exclusions: exclusion: artifactId: slf4j-log4j12 groupId: org.slf4j

artifactId: mysql-connector-java groupId: mysql

artifactId: springfox-swagger2 groupId: io.springfox

artifactId: springfox-swagger-ui groupId: io.springfox

version: 1.0 artifactId: offcnpe_interface groupId: com.offcn

version: 1.1.20 artifactId: druid groupId: com.alibaba

org.springframework.boot spring-boot-maven-plugin

application.yml server: servlet: context-path: / port: 9100

spring: application: name: offcnpe_mobile datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql:///offcnpe username: root password: root type: com.alibaba.druid.pool.DruidDataSource dubbo: protocol: name: dubbo port: 21882 registry: address: zookeeper://192.168.18.230:2181 timeout: 60000

package com.offcn;

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication public class PeMobileApplication {

public static void main(String[] args) {
    SpringApplication.run(PeMobileApplication.class,args);
}

}

Примечание: в запросе не было текста для перевода. Конфигурационный шаблон

TemplateConfig templateConfig = new TemplateConfig();
// По умолчанию отключаем ненужное создание содержимого
// templateConfig.setXml(null);
templateConfig.setService(null);
templateConfig.setServiceImpl(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);

String tableNames="t_checkgroup,t_checkgroup_checkitem,t_checkitem,t_member,t_menu," +
    "t_order,t_ordersetting," +
    "t_permission,t_role,t_role_menu," +
    "t_role_permission,t_setmeal,t_setmeal_checkgroup,t_user,t_user_role";
strategy.setInclude(tableNames.split(","));
strategy.setControllerMappingHyphenStyle(true);
strategy.setTablePrefix("t_");
mpg.setStrategy(strategy);
mpg.execute();

}

Поместите POJO в проект offcnpe_pojo.

Разместите классы mapper в проекте offcnpe_provider.

Храните файлы mapper XML в папке resources проекта offcnpe_provider.

Перенесите контроллеры в проект offcnpe_controller.

Импортируйте инструменты

Переместите необходимые инструменты в offcnpe_util.

В классе инструментов добавьте класс разбивки на страницы:

@Configuration public class MyBatisPlusConfig { /** * Плагин разбивки на страницы */ @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor mybatisPlusInterceptor=new MybatisPlusInterceptor(); PaginationInnerInterceptor innerInterceptor=new PaginationInnerInterceptor(); innerInterceptor.setDbType(DbType.MYSQL); innerInterceptor.setOverflow(true); mybatisPlusInterceptor.addInnerInterceptor(innerInterceptor); return mybatisPlusInterceptor; } }

Добавьте статические ресурсы в ffcnpe_controller:

index.html в папку public.

Loginstyle в папку static.

Содержимое main в папку static.

Использование

  1. xxxx
  2. xxxx
  3. xxxx

Вклад

  1. Fork этого репозитория.
  2. Создайте ветку Feat_xxx.
  3. Отправьте код.
  4. Создайте Pull Request.

Специальные навыки

  1. Используйте Readme_XXX.md для поддержки разных языков, например Readme_en.md, Readme_zh.md.
  2. Официальный блог Gitee blog.gitee.com.
  3. Вы можете https://gitee.com/explore узнать об отличных проектах с открытым исходным кодом на Gitee.
  4. GVP — это аббревиатура от Gitee Most Valuable Open Source Project, которая представляет собой подборку выдающихся проектов с открытым исходным кодом.
  5. Руководство по использованию, предоставленное Gitee, находится по адресу https://gitee.com/help.
  6. Gitee Official Cover — это раздел, демонстрирующий великолепие членов Gitee https://gitee.com/gitee-stars/.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/javayixin0921-offcn_parent.git
git@api.gitlife.ru:oschina-mirror/javayixin0921-offcn_parent.git
oschina-mirror
javayixin0921-offcn_parent
javayixin0921-offcn_parent
master