# 运行工程

# 下载工程

1、 前往Gitlab下载页面(http://119.255.194.80/hos/demo/hos-app-demo) , 用户名/密码:hosuser/99ahivPJt
2、选择其中的master分支,并将工程下载到本地
3、然后选择project-strcutre/project-strcutre-demo文件夹使用IntelliJ IDEA打开。

# 执行初始化SQL

创建数据库,导入数据库脚本/oa-doc/data/mysql/{当前版本号}/hos-app-base-mysql-{当前版本号}.sql

如果当前版本号没有对应的SQL文件时,请使用之前的版本号对应的SQL,因为部分小版本没有SQL的更新,只进行了部分bug的修复或体验的优化,如2.2.1的使用2.2.0的SQL

当数据库为mysql时需指定字符集CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

如果采用的是Oracle和人大金仓数据库的话,请使用Oracle或kingbase中的SQL

img_1.png

# 修改配置文件

# 数据库配置文件

  • 修改数据库连接,编辑resources目录下的applicaiton-dev.yml

# MySql配置

# 数据源配置
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource # 使用阿里数据库连接池
    druid:
    # 数据源
      url: jdbc:mysql://服务器IP:端口号/数据库名称?参数1=值1&参数2=值2 
      username: 数据库账号
      password: 数据库密码
      driver-class-name: com.mysql.cj.jdbc.Driver # mysql驱动类

# Oracle配置

# 数据源配置
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource # 使用阿里数据库连接池
    druid:
    # 数据源
      url: jdbc:oracle:thin:@服务器IP:端口号/服务名?参数1=值1&参数2=值2
      username: 数据库账号
      password: 数据库密码
      driver-class-name: oracle.jdbc.driver.OracleDriver # Oracle驱动类

# kingbase8配置

# 数据源配置
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource # 使用阿里数据库连接池
    druid:
    # 数据源
      url: jdbc:kingbase8://服务器IP:端口号/数据库名称?参数1=值1&参数2=值2 
      username: 数据库账号
      password: 数据库密码
      driver-class-name: com.kingbase8.Driver # kingbase8驱动类
        ## 人大金仓数据库不支持druid数据库连接池的提供防SQL注入机制,所以需要关闭 ,但mybatis自带的防SQL注入机制是可以支持各种数据库的
      filter:
        wall:
          enabled: false

# gabse8c配置

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      url: jdbc:opengauss://114.251.235.6:8540/test_mdb?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&currentSchema=hos-app
      username: test_user_xxx
      password: xxx
    driver-class-name: org.opengauss.Driver
    filter:
      wall:
        enabled: false


提示

人大金仓数据库不支持druid数据库连接池的提供防SQL注入机制,所以将 `spring.datasource.druid.filter.wall.enabled`设置为 `false`,但mybatis自带的防SQL注入机制是可以支持各种数据库的。

# 服务器配置文件

  • 修改服务器配置,编辑resources目录下的
# 开发环境配置
server:
  # 服务器的HTTP端口,默认为80
  port: 端口
  servlet:
    # 应用的访问路径
    context-path: /应用路径

提示

1.如果要使用集群或负载的,缓存类型framework.hoscache.type请使用redis,详细配置参考缓存组件

2.登录方式默认为表单验证模式,如果需要使用单点登录模式,实现详见统一认证

3.客户服务器上按照公司规定必须安装许可,具体详情见许可证激活

# 启动工程

# 单体启动

右击 oa-boot-runner/src/main/java/com.mediway.OAApplication启动类,选择Run方法

img.png

出现如下图表示启动成功

# 微服务启动

# 工程启动顺序

1.启动redis、mysql、nacos等基础服务(根据实际情况启动)
2.启动各个微服务应用,如user、contract
3.启动gateway服务

# 本地启动

1.单击工具栏的启动按钮

img.png

2.或者右击Application类,选择run方法

文件地址:oa-business-parent/hos-app/XX-XX-cloud-runner/src/main/java/com/mediway/XXXApplication.java

# 验证服务是否启动成功

img.png