后端初始化工程启动

在拿到Oinone初始化的后端工程体验时,配置修改点

指定配置文件

一般在<code>pamirs-bootbootstrap.yml下指定,指定位置如图:

数式Oinone低代码-后端初始化工程启动

在程序启动时,会出现加载的配置文件标识

数式Oinone低代码-后端初始化工程启动

配置文件修改

在启动过程中一般需要修改如下几个地方

  • redis: 22-25行,按照本地redis的配置修改ip、账号、密码
  • record: 59行,修改store路径
  • 业务库:  122-125行,修改ip、账号、密码
  • 公共应用库: 138-140行, 修改ip、账号、密码
  • 元数据库: 154-156行, 修改ip、账号、密码
  • zk: 207行,修改ip、端口
  • rocket-mq: 217行,修改ip、端口

如果部署了无代码。建议zk、mq、red使用无代码的中间件;建议mysql(mysql8)外置。外置后升级可保留所有数据。

外置mysql

安装版本: 建议mysql8 (如果需要体验其它数据库,和研发人员联系)

修改点

修改无代码结构包的数据库配置,文件位置如下:

数式Oinone低代码-后端初始化工程启动

修改点:

  • 业务库:  153-155行,修改ip、账号、密码
  • 公共应用库: 169-171行, 修改ip、账号、密码
  • 元数据库: 185-187行, 修改ip、账号、密码

注意,给的用户权限需要有建表的权限

IDEA得配置

配置Program arguments-Plifecycle=INSTALL, 不配置工程启动会报错

数式Oinone低代码-后端初始化工程启动

配置Complier<code>-Djps.track.ap.dependencies=false

数式Oinone低代码-后端初始化工程启动

禁用Lombok, 安装Oinone提供的插件,详见文档环境搭建

启动成功

出现如下字样,Oinone得后端就启动好了!

数式Oinone低代码-后端初始化工程启动

本文来自投稿,不代表Oinone社区立场,如若转载,请注明出处:https://doc.oinone.top/install/backendinstall/4201.html

(0)
王海明的头像王海明数式管理员
上一篇 2023年11月2日 pm1:58
下一篇 2023年11月6日 pm2:31

相关推荐

  • Oinone设计器部署参数说明

    概述 Oinone提供两种设计器部署方式,合作伙伴可以自行选择适合自己的部署方式。 Docker配置参数 环境变量 ARG_ENV:指定spring.profiles.active(默认:dev) ARG_LIFECYCLE:指定-Plifecycle(默认:INSTALL) JVM_OPTIONS:jvm参数 PROGRAM_ARGS:程序参数 JVM_OPTIONS和PROGRAM_ARGS参数说明 java [JVM_OPTIONS?] -jar boot.jar [PROGRAM_ARGS?] 端口说明 PS:以下为目前设计器镜像的全部端口,不同类型镜像的端口由于内置服务不同,使用的端口数量不同,但端口号是完全一致的。 80:前端服务端口(设计器访问入口) 8091:后端服务端口 8093:后端EIP服务端口 20880:Dubbo端口 3306:内置MySQL端口 2181:内置Zookeeper端口 6379:内置Redis端口 9876/10991:内置RocketMQ端口 9999:内置本地OSS默认端口 挂载目录说明(挂载虚拟卷) /opt/pamirs为镜像的工作目录,所有挂载目录均在该目录下。 /opt/pamirs/ext:应用配置文件目录;包含application.yml、logback.xml、license.lic等配置文件 /opt/pamirs/nginx/vhost:Nginx配置文件目录 /opt/pamirs/logs:后端服务日志目录 /opt/mq/conf/broker.conf:RocketMQ的broker配置文件 /opt/pamirs/outlib:非设计器内置包的外部加载目录(外部库),可以添加任何jar包集成到设计器中。 /opt/pamirs/dist:前端服务目录 /opt/pamirs/static:前端静态文件目录;LOCAL类型的OSS上传和下载目录; docker run启动常用参数 -e:指定环境变量 -p:指定端口映射 -v:指定挂载目录(挂载虚拟卷) docker run [OPTIONS] IMAGE [COMMAND] [ARG…] docker compose启动常用配置 services: container: image: $IMAGE container_name: $CONTAINER_NAME restart: always # docker run -e environment: KEY1: VALUE1 KEY2: VALUE2 … # docker run -p ports: – $machinePort1:$containerPort1 – $machinePort2:$containerPort2 … # docker run -v volumes: – $machinePath1:$containerPath1 – $machinePath2:$containerPath2 … docker compose常用命令 # 使用docker-compose.yaml启动 docker compose up -d # 使用docker-compose.yaml停止并删除容器 docker compose down -v # 指定配置文件启动 docker compose -f config.yaml up -d # 指定配置文件停止并删除容器 docker compose -f config.yaml down -v JAR包方式启动 下载Oinone专属启动器 oinone-boot-starter.zip 启动命令变化 # 原命令 java -jar boot.jar # 变更后命令 boot-starter java -jar boot.jar PS:更多命令可查看后端无代码设计器Jar包启动方法

    2024年11月4日
    1.2K00
  • 东方通Web和Tomcat部署Oinone项目

    场景描述 在国产化和信创体系下,可能会要求使用东方通Web服务器(TongWeb)或者Tomcat等应用服务器部署项目;本文介绍使用TongWeb或者Tomcat部署Oinone项目时的方法。 你需要了解 了解Tomcat容器,TongWeb的操作基本和Tomcat类似; 项目打包成成war包和Jar的区别; Springboot项目打成war包 详细步骤参考:https://www.cnblogs.com/memoa/p/10250553.html TongWeb和Tomcat部署War包 TongWeb部署war包一般会有提供操作手册,这里不在说明; Tomcat部署war包可以参考网上的资料,这里不在说明; 本文仅说明部署Oinone打成的War包不同之处; Oinone项目War包部署 已知限制 Oinone项目在部署时,需要指定生命周期-Plifecycle=INSTALL等 而TongWeb和Tomcat无法在启动脚本中设置Program arguments 解法办法 通过yml文件的配置,可以配置等同于-Plifecycle=INSTALL的参数 pamirs: boot: init: true sync: true profile: AUTO install: AUTO upgrade: FORCE modules: 配置参考 配置参考 模块之启动指令 参数 名称 默认值 说明 -Plifecycle 生命周期部署指令 RELOAD 可选项:无/INSTALL/PACKAGE/RELOAD/DDL 安装(INSTALL) install为AUTO;upgrade为FORCE;profile为AUTO 打包(PACKAGE) install为AUTO;upgrade为FORCE;profile为PACKAGE 重启(RELOAD) install、upgrade、profile为READONLY 打印变更DDL(DDL) install为AUTO;upgrade为FORCE;profile为DDL

    2024年5月18日
    2.0K00
  • 如何解决界面设计器保存提示:元数据不存在或已删除

    现象 界面设计器设计页面的时候,从左侧边栏模型下拖入了一个字段到页面,保存的时候提示:元数据不存在或已删除 原因 共base库不共元数据缓存redis导致的,不共redis的情况下,每次本地新增或修改元数据(如:字段、方法)启动后会同步本地redis,再去线上启动的时候,由于元数据已经在本地写入到了base库,所以该次启动不会触发redis差量更新 解决方案 通过将boot工程application.yml以下配置,让redis全量刷新元数据缓存 pamirs: distribution: session: allMetaRefresh: true 扩展 这个方法只能解决新增或修改元数据,如果出现了删除元数据的话,改为true也不行,清空或者手动删除问题redis的key都可以

    2024年7月21日
    1.1K00
  • 自定义表达式函数

    由于表达式内的函数在前后端都可能执行,所以同一个表达式需要前后端同时定义 后端表达式自定义 package pro.shushi.pamirs.demo.core.fun; import org.apache.commons.lang3.StringUtils; import org.joda.time.DateTime; import pro.shushi.pamirs.meta.annotation.Fun; import pro.shushi.pamirs.meta.annotation.Function; import pro.shushi.pamirs.meta.common.constants.NamespaceConstants; import java.util.Date; import java.util.List; import static pro.shushi.pamirs.meta.enmu.FunctionCategoryEnum.TEXT; import static pro.shushi.pamirs.meta.enmu.FunctionCategoryEnum.TIME; import static pro.shushi.pamirs.meta.enmu.FunctionLanguageEnum.JAVA; import static pro.shushi.pamirs.meta.enmu.FunctionOpenEnum.LOCAL; import static pro.shushi.pamirs.meta.enmu.FunctionSceneEnum.EXPRESSION; /** * 自定义函数 */ @Fun(NamespaceConstants.expression) public class DemoCustomFunctions { @Function.Advanced( displayName = "逗号分隔字符串数组", language = JAVA, builtin = true, category = TEXT ) @Function.fun("MY_COMMA") @Function(name = "MY_COMMA", scene = {EXPRESSION}, openLevel = LOCAL, summary = "函数示例: MY_COMMA(list)\n函数说明: 将字符串数组转为逗号分隔的字符串" ) public String myComma(List<String> list) { return StringUtils.join(list, ","); } @Function.Advanced( displayName = "根据出生算年龄", language = JAVA, builtin = true, category = TIME ) @Function.fun("CALC_AGE") @Function(name = "CALC_AGE", scene = {EXPRESSION}, openLevel = LOCAL, summary = "函数示例: CALC_AGE(birthDate)\n函数说明: 根据出生算年龄" ) public Integer calcAge(Date birthDate) { if (birthDate == null) { return 0; } return new DateTime().getYear() – new DateTime(birthDate).getYear(); } } 前端表达式定义 定义后导入到main.ts里,导入@kunlun/dependencies的代码之后 import { Expression } from '@kunlun/dependencies'; import dayjs from 'dayjs'; Expression.getInstance().registerFunction('MY_COMMA', ['array'], (list: string[]) => { return (list || []) .map((value) => { return `'${value}'`; }) .join(','); }); Expression.getInstance().registerFunction('CALC_AGE', ['string'], (birthDate: string) => { if (birthDate == null) { return 0; } return Math.ceil(dayjs().year() – dayjs(birthDate,…

    2024年7月10日
    1.8K00
  • 分部式缓存配置优化

    介绍 分布式缓存是为了解决以下2个场景 开发时,设计器和开发者本地业务工程同步元数据用的 多模块分部式部署架构 单机版的生产环境是不需要这个特性的,所以默认的启动配置不建议加分布式缓存的依赖包,只在开发环境开启即可 boot启动工程的pom.xml文件配置示例 <project> <profiles> <profile> <!– 下面配置的值根据 spring.profiles.active 识别 –> <id>dev</id> <!– 开发环境增加分布式依赖,支持设计器可以正确访问业务工程 –> <dependencies> <dependency> <groupId>pro.shushi.pamirs.distribution</groupId> <artifactId>pamirs-distribution-faas</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.distribution</groupId> <artifactId>pamirs-distribution-session</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.distribution</groupId> <artifactId>pamirs-distribution-gateway</artifactId> </dependency> </dependencies> </profile> </profiles> </project>

    2024年7月10日
    1.2K00

Leave a Reply

登录后才能评论