commit ef39bf60bfd7d0ce5d17482baa3db8be248edace
Author: kid <401087339@qq.com>
Date: Tue May 13 09:59:31 2025 +0800
first commit
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..38b7d69
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,55 @@
+######################################################################
+# Build Tools
+
+.gradle
+/build/
+!gradle/wrapper/gradle-wrapper.jar
+
+target/
+!.mvn/wrapper/maven-wrapper.jar
+
+.flattened-pom.xml
+
+######################################################################
+# IDE
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+nbproject/private/
+build/*
+nbbuild/
+dist/
+nbdist/
+.nb-gradle/
+
+######################################################################
+# Others
+*.log
+*.xml.versionsBackup
+*.swp
+logs/
+
+!*/build/*.java
+!*/build/*.html
+!*/build/*.xml
+
+### JRebel ###
+rebel.xml
+
+application-my.yaml
+
+/yudao-ui-app/unpackage/
+**/.DS_Store
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..374037e
--- /dev/null
+++ b/README.md
@@ -0,0 +1,30 @@
+[码云yudao-ui-admin-vue3](https://gitee.com/yudaocode/yudao-ui-admin-vue3)
+
+[码云ruoyi-vue-pro](https://gitee.com/zhijiantianya/ruoyi-vue-pro)
+
+[项目文档ruoyi-vue-pro](https://doc.iocoder.cn)
+
+[项目文档ruoyi-vue-cloud](https://cloud.iocoder.cn)
+
+站内消息服务
+## 一键改包
+boot模块下执行ProjectReactor的main方法即可
+
+## 接口文档
+http://127.0.0.1:${port}/doc.html
+
+## 去掉test包
+test只是为了验证接口文档和分页功能正常.通过之后可以删除.记得同步修改以下文件
+
+application.properties
+```properties
+#mybatis-plus.type-aliases-package=com.primeton.eos.demo.core.test.entity.bo
+# 改成以下配置(去掉test)
+mybatis-plus.type-aliases-package=com.primeton.eos.demo.core.entity.bo
+```
+
+Application.java
+```java
+//@MapperScan(basePackages={"com.primeton.eos.demo.core.test.mapper","com.primeton.eos.demo.core.mapper"})
+@MapperScan(basePackages={"com.primeton.eos.demo.core.mapper"})
+```
diff --git a/com.primeton.eos.demo.api/pom.xml b/com.primeton.eos.demo.api/pom.xml
new file mode 100644
index 0000000..80553e3
--- /dev/null
+++ b/com.primeton.eos.demo.api/pom.xml
@@ -0,0 +1,39 @@
+
+ 4.0.0
+
+ com.primeton.eos
+ demo
+ 1.0.0
+ ../
+
+ com.primeton.eos.demo.api
+ com.primeton.eos.demo.api
+
+
+ com.primeton.eos
+ eos-server-system-annotation
+
+
+ com.primeton.eos.extension
+ com.primeton.eos.foundation
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.model
+ 1.0.0
+
+
+
+ src
+
+
+ maven-jar-plugin
+
+
+ src/META-INF/MANIFEST.MF
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.api/src/META-INF/MANIFEST.MF b/com.primeton.eos.demo.api/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..aab5ceb
--- /dev/null
+++ b/com.primeton.eos.demo.api/src/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-SymbolicName: com.primeton.eos.demo.api
+Bundle-Name: com.primeton.eos.demo.api
+Bundle-Version: 1.0.0
+Bundle-Vendor: 40108
+Require-Bundle:
+eos-webCtxPath: eos
+Bundle-Description:
+
diff --git a/com.primeton.eos.demo.api/src/META-INF/contribution.eosinf b/com.primeton.eos.demo.api/src/META-INF/contribution.eosinf
new file mode 100644
index 0000000..f630764
--- /dev/null
+++ b/com.primeton.eos.demo.api/src/META-INF/contribution.eosinf
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ config
+ com.eos.system.management.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+
+
+
+
+
+ default
+
+
+
diff --git a/com.primeton.eos.demo.api/src/META-INF/handler-contribution.xml b/com.primeton.eos.demo.api/src/META-INF/handler-contribution.xml
new file mode 100644
index 0000000..9c13485
--- /dev/null
+++ b/com.primeton.eos.demo.api/src/META-INF/handler-contribution.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/com.primeton.eos.demo.api/src/META-INF/resources/exception/exception.properties b/com.primeton.eos.demo.api/src/META-INF/resources/exception/exception.properties
new file mode 100644
index 0000000..e1942e8
--- /dev/null
+++ b/com.primeton.eos.demo.api/src/META-INF/resources/exception/exception.properties
@@ -0,0 +1,6 @@
+#exception properties resource file.
+#content format:
+# code=message
+#for example:
+# 100001=It occur when [{0}] execute.
+
diff --git a/com.primeton.eos.demo.api/src/META-INF/resources/i18n/i18n.properties b/com.primeton.eos.demo.api/src/META-INF/resources/i18n/i18n.properties
new file mode 100644
index 0000000..691d4fa
--- /dev/null
+++ b/com.primeton.eos.demo.api/src/META-INF/resources/i18n/i18n.properties
@@ -0,0 +1,6 @@
+#I18N properties resource file.
+#content format:
+# code=message
+#for example:
+# 10000=name
+
diff --git a/com.primeton.eos.demo.boot/pom.xml b/com.primeton.eos.demo.boot/pom.xml
new file mode 100644
index 0000000..93be542
--- /dev/null
+++ b/com.primeton.eos.demo.boot/pom.xml
@@ -0,0 +1,194 @@
+
+
+ com.primeton.eos
+ demo
+ 1.0.0
+ ../
+
+ 4.0.0
+
+ com.primeton.eos.demo.boot
+ com.primeton.eos.demo.boot
+
+
+
+ mysql
+ mysql-connector-java
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.model
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.api
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.core
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.starter
+ 1.0.0
+
+
+
+ com.dameng
+ DmJdbcDriver18
+ 8.1.1.193
+
+
+
+ com.github.xiaoymin
+ knife4j-openapi2-spring-boot-starter
+ 4.5.0
+
+
+
+
+ src
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
+
+ true
+ ZIP
+
+ mysql,
+ dameng,
+ com.huawei.gauss.jdbc.ZenithDriver,
+ com.oracle.ojdbc,
+ com.primeton.3rd.jdbc,
+ com.microsoft.sqlserver,
+ com.ibm.db2.jcc,
+ org.postgresql,
+ org.mongodb,
+ com.clickhouse,
+ ru.yandex.clickhouse,
+ org.apache.hive,
+ org.apache.hive.shims,
+ org.apache.thrift,
+ org.apache.hadoop,
+ org.apache.hbase,
+ org.apache.hbase.thirdparty
+
+
+
+
+ maven-jar-plugin
+
+
+ src/META-INF/MANIFEST.MF
+
+
+
+
+ maven-dependency-plugin
+
+
+ unpack
+ prepare-package
+
+ unpack
+
+
+
+
+ com.primeton.eos
+ eos-server-db-scripts
+ ${eos.version}
+ target/eos-db-scripts
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.model
+ 1.0.0
+ target/demo-db-scripts
+
+
+
+
+
+
+
+
+
+
+ maven-assembly-plugin
+
+
+ make-assembly
+ package
+
+ single
+
+
+ true
+ false
+ gnu
+
+ src/META-INF/assembly/assembly.xml
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/.eos b/com.primeton.eos.demo.boot/src/.eos
new file mode 100644
index 0000000..31d77d8
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/.eos
@@ -0,0 +1,7 @@
+#
+#Wed Apr 16 10:29:28 GMT+08:00 2025
+componentType=com.primeton.component.contribution
+contributionKind=boot
+contributionName=com.primeton.eos.demo.boot
+autoDeploy=true
+componentVersion=7.0.0.0
diff --git a/com.primeton.eos.demo.boot/src/META-INF/MANIFEST.MF b/com.primeton.eos.demo.boot/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a986b77
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-SymbolicName: com.primeton.eos.demo.boot
+Bundle-Name: com.primeton.eos.demo.boot
+Bundle-Version: 1.0.0
+Bundle-Vendor: 40108
+Require-Bundle:
+eos-webCtxPath: eos
+Bundle-Description:
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/antisamy-security.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/antisamy-security.xml
new file mode 100644
index 0000000..137f555
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/antisamy-security.xml
@@ -0,0 +1,2447 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ g
+ grin
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-contribution.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-contribution.xml
new file mode 100644
index 0000000..5d238ec
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-contribution.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-engine.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-engine.xml
new file mode 100644
index 0000000..03fab65
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-engine.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-entity.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-entity.xml
new file mode 100644
index 0000000..8469026
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-entity.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-namedsql.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-namedsql.xml
new file mode 100644
index 0000000..5bfd44c
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-namedsql.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-processor.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-processor.xml
new file mode 100644
index 0000000..6f51559
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-processor.xml
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-startup.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-startup.xml
new file mode 100644
index 0000000..4bb0a9b
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-startup.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-web.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-web.xml
new file mode 100644
index 0000000..0055c0d
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/eos/handler-web.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/spring.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/spring.xml
new file mode 100644
index 0000000..100679f
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/spring.xml
@@ -0,0 +1,65 @@
+
+
+
+
+
+ default
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED
+ PROPAGATION_REQUIRED,readOnly
+ PROPAGATION_REQUIRED,readOnly
+
+
+
+
+
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+ *
+
+
+
+ BeanInterceptor
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/sys-config.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/sys-config.xml
new file mode 100644
index 0000000..575c1de
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/sys-config.xml
@@ -0,0 +1,444 @@
+
+
+
+
+
+
+ yyyy-MM-dd HH:mm:ss
+
+ yyyy-MM-dd
+
+ 10
+
+ 200
+ 100000
+ 400
+ 500
+
+
+
+
+
+
+
+ config
+
+ com.eos.common.config.mbean.Config
+
+ com.eos.common.config.mbean.EnvironmentConfigHandler
+
+ config
+
+
+
+
+ config
+
+ com.eos.common.config.mbean.Config
+
+ com.eos.common.config.mbean.RuntimeConfigHandler
+
+ config
+
+
+
+
+ config
+
+ com.eos.common.config.mbean.Config
+
+ com.eos.common.cache.mbean.AppCacheConfigHandler
+
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.mail.mbean.MailConfigHandler
+ config
+
+
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.logging.mbean.AppLoggingConfigHandler
+ config
+
+
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.connection.mbean.DataSourceConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.statistic.mbean.StatisticConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.connection.mbean.ConnectionConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.das.entity.mbean.DASConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.transaction.mbean.TxManagerConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.engine.core.mbean.EngineConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.server.dict.config.DictConfigHandle
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.access.http.mbean.AccessHttpConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.muo.mbean.SessionManagerConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.muo.mbean.VirtualUserObjectConfigHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.access.authorization.mbean.AccessAuthorizationConfigHandler
+ config
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ management
+ com.eos.runtime.resource.mbean.ContributionMetaDataManager
+
+
+ management
+ com.eos.runtime.resource.mbean.ResourceLoad
+
+
+ management
+ com.eos.runtime.resource.mbean.ResourceUpdate
+
+
+
+ management
+ com.eos.server.dict.config.DictManager
+
+
+ management
+ com.eos.runtime.metadata.mbean.ApplicationMetaDataManager
+
+
+ monitor
+ com.eos.common.connection.mbean.StatisticManager
+
+
+ monitor
+ com.eos.common.statistic.mbean.Statistic
+
+
+ monitor
+ com.eos.access.http.mbean.OnlineUserMonitor
+
+
+ other
+ com.eos.common.config.mbean.SpecialMethod
+
+
+ management
+ com.eos.server.dict.impl.EOSBusinDictDataLoader
+
+
+
+ management
+ com.primeton.common.cache.impl.cluster.mbeannotify.ClusterMessageConsumer
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.config.mbean.JMXSecurityConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.config.mbean.HttpSecurityConfigHandler
+ config
+
+
+
+ management
+ com.eos.common.config.mbean.ConfigurationDownload
+
+
+
+
+
+
+ true
+
+
+
+ -1
+ *.class
+
+
+
+
+
+
+ false
+
+ false
+
+
+
+
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+
+ 10000
+ false
+ false
+ false
+
+
+
+
+
+ 4000
+
+
+
+
+
+ com.primeton.common.transaction.impl.datasource.DataSourceTransactionManagerSetProvider
+ PROPAGATION_REQUIRED
+ ISOLATION_DEFAULT
+
+
+ com.primeton.common.transaction.impl.jta.JbossJtaTransactionManagerProvider
+ java:/TransactionManager
+
+ PROPAGATION_REQUIRED
+ ISOLATION_DEFAULT
+
+
+ com.primeton.common.transaction.impl.jta.WebLogicJtaTransactionManagerProvider
+ PROPAGATION_REQUIRED
+ ISOLATION_DEFAULT
+
+
+ com.primeton.common.transaction.impl.jta.WebSphereJtaTransactionManagerProvider
+ PROPAGATION_REQUIRED
+ ISOLATION_DEFAULT
+
+
+
+
+
+ false
+ true
+ 5
+ 10
+ true
+
+
+ 20
+
+
+
+ lob_temp
+
+
+
+ -1
+ false
+
+
+
+ 2000
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-config.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-config.xml
new file mode 100644
index 0000000..a62836c
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-config.xml
@@ -0,0 +1,329 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MySql
+
+ com.mysql.jdbc.Driver
+ jdbc:mysql://192.168.3.32:3306/test_afcenter?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false
+ root
+ 123456
+ 10
+ 50
+ 10
+
+ 600
+
+ 900
+ 0
+ 1
+
+ ISOLATION_DEFAULT
+ SELECT count(*) from EOS_UNIQUE_TABLE
+ -1
+
+
+
+
+
+
+ mail.primeton.com
+
+
+
+ test
+
+ test
+
+
+
+
+
+
+
+
+ true
+ com.eos.server.dict.impl.EosDictCacheLoaderImpl
+
+
+
+
+ true
+ com.primeton.access.client.impl.uddi.ServiceCacheLoader
+ CacheForAccessGroup
+
+
+
+ true
+ REPL_ASYNC
+ true
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+ com.eos.server.dict.impl.EOSBusinDictFactory
+
+
+ CacheForDict
+ true
+
+
+
+
+
+ upload
+ 104857600
+ 10240
+
+ exe,java,jsp,html,htm,class,jar
+
+
+
+ UTF-8
+
+
+
+ 60
+
+
+
+ /,*.gif,*.svg,.ttf,*.woff2,*.woff,*.jpg,*.json,*.ico,*.js,*.css,*.png,*.html,/api/afc/oauth2/*,/api/afc/login/third-party/auth,/api/afc/login/third-party/qrConnect,/afc-proxy/*,/api/afc/validation-code,/swagger-ui.html,/v2/api-docs,/webjars/*,/swagger-resources/*,/afc,/afc/,/api/afc/login,/api/afc/login/password/key,/actuator/*,/om/*,/common.remote,
+ /jmxDefault.jmx,/common.download,/api/test/*
+
+ /*
+
+
+
+
+ false
+
+
+ false
+ **/common.download
+ eval\s*?\([^\)]+?\),alert\s*?\([^\)]+?\),new\s+?Function\s*?\([^\)]+?\),window\[[^\]]+?\]\s*?=
+
+
+
+
+
+
+
+
+ com.primeton.ext.access.authorization.DefaultAccessedResourceFactory
+
+
+
+
+
+
+
+
+
+
+ 10
+
+
+
+ /common/error.jsp
+
+ /common/validateErrors.jsp
+
+
+
+ /common/defaultEnd.jsp
+
+
+
+
+
+ true
+
+
+
+
+
+
+
+ open
+
+ 50
+
+
+
+
+ open
+ 50
+
+
+
+
+ open
+ 50
+
+
+
+
+ open
+ 50
+
+
+
+
+ open
+ 50
+
+
+
+ open
+ 50
+
+
+
+ open
+ 50
+
+
+
+
+
+
+
+
+
+
+
+
+ 0
+ server
+
+
+
+
+ 127.0.0.1
+
+
+ 1
+ workflow
+
+
+
+
+ 127.0.0.1
+
+
+ guest
+ guest
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-local-config.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-local-config.xml
new file mode 100644
index 0000000..f135529
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user-local-config.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+ temp
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-contribution.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-contribution.xml
new file mode 100644
index 0000000..7571688
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-contribution.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-engine.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-engine.xml
new file mode 100644
index 0000000..c92be12
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-engine.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-entity.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-entity.xml
new file mode 100644
index 0000000..8469026
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-entity.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-namedsql.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-namedsql.xml
new file mode 100644
index 0000000..5bfd44c
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-namedsql.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-processor.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-processor.xml
new file mode 100644
index 0000000..582935e
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-processor.xml
@@ -0,0 +1,13 @@
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-startup.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-startup.xml
new file mode 100644
index 0000000..15a2c7e
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-startup.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-web.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-web.xml
new file mode 100644
index 0000000..6467747
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/user/handler-web.xml
@@ -0,0 +1,13 @@
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfengine-config.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfengine-config.xml
new file mode 100644
index 0000000..a7989bf
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfengine-config.xml
@@ -0,0 +1,302 @@
+
+
+
+
+
+ false
+
+ BPS
+
+
+
+ com.primeton.workflow.commons.timer.TimerServiceImpl
+
+ com.primeton.workflow.bizresource.utils.BPSTimeLimitCalculator
+
+
+
+ PROCINST
+
+
+ NEVER
+
+ 00:30:00,05:00:00
+
+
+
+ 1000
+
+ 1000
+
+ false
+
+ false
+
+
+ 5000
+
+
+
+
+
+ eosworkflow
+
+ eosworkflow
+
+ mail.primeton.com
+
+ 25
+
+ eosworkflow@primeton.com
+
+ eosworkflow
+
+ true
+
+
+
+
+
+ com.primeton.workflow.notification.impl.DefaultNotificationRemindImpl
+
+ 10
+
+ true
+
+
+
+ 1600
+
+
+ false
+
+
+
+
+
+ false
+
+ false
+
+
+
+
+
+ com.primeton.workflow.persistence.connection.EOSConnectionProvider
+
+
+
+
+
+
+
+
+ false
+
+ 3000
+
+ 3000
+ true
+ false
+ false
+
+
+
+
+
+
+ com.primeton.gocom.afcenter.bps.om.WFOMServiceImpl
+
+
+
+
+ com.primeton.gocom.afcenter.bps.om.WFOMPermissionImpl
+
+
+
+ com.primeton.bps.multitenancy.impl.ExternalTenantProvider
+
+
+
+
+ 200
+
+
+
+ 5
+
+
+
+
+
+
+
+
+
+ WFClientUserName
+
+
+
+ /workflow/wfcomponent/web/images/processDef_graph
+
+ .gif
+
+ _
+
+
+
+ /workflow/wfcomponent/web/images/processInst_graph
+
+ .gif
+
+ _
+
+
+
+ true
+
+ true
+
+
+ false
+
+ DESC
+
+
+
+
+
+ default
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+ org.gocom.workflow.taskcenter.adapter.bps.WorkListChangeNotifier
+
+
+
+ 2
+
+ 5
+
+ 1
+
+
+
+ http://127.0.0.1:8080/taskcenter
+
+
+
+ 3
+
+
+
+
+ org.gocom.workflow.taskcenter.adapter.bps.convertor.imp.BpsAdapterDefaultConvertor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ var:defaultUrl
+
+
+
+
+
+
+
+ false
+
+ false
+
+ false
+
+
+
+
+ false
+
+ false
+
+
+
+
+
+
+ #A52A2A
+
+ #228B22
+
+ #BCBCBC
+
+ 1
+
+
+
+
+
+
+ false
+ bps
+ pkosszmKuLAJHAwHzJFPiqE=
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfsys-config.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfsys-config.xml
new file mode 100644
index 0000000..7352e89
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/config/wfsys-config.xml
@@ -0,0 +1,313 @@
+
+
+
+
+
+
+ false
+
+ false
+
+ WFMESSAGE_
+
+ 2
+
+ 3000
+
+ average
+
+ false
+
+ 0
+
+ 200
+
+ 1000
+
+ 500
+
+ 50
+
+ 300
+
+ false
+
+ 60000
+
+ 10000
+
+ 3000
+
+ true
+
+
+
+
+
+ 300
+
+ 60000
+
+ step
+
+
+
+
+
+
+ true
+
+ true
+
+ internal
+
+ primeton
+
+
+
+
+
+
+
+
+ 300000
+
+ 300000
+
+ 1200000
+
+ true
+
+
+
+
+
+
+ com.primeton.bps.taskpool.api.DefaultTaskFilter
+
+ com.primeton.bps.taskpool.schedule.TaskLoader
+
+
+
+ 1000
+
+ true
+
+ 1200000
+
+ true
+
+
+
+
+ com.primeton.workflow.service.das.database.impl.DataAccessServiceImpl
+ 100
+
+
+ #com.primeton.workflow.service.notifaction.NotificationServiceChooser
+ 200
+
+
+ com.primeton.workflow.commons.txeos.TransactionServiceImpl4EOS
+ 300
+
+
+ com.primeton.workflow.event.framework.event.base.EventServiceImplDefault
+ 400
+
+
+ com.primeton.workflow.commons.lock.LockServiceOptimizer
+ 500
+
+
+ com.primeton.workflow.service.timer.system.SystemTimerImpl
+ 600
+
+
+ #com.primeton.workflow.service.timer.TimerServiceChooser
+ 700
+
+
+ com.primeton.workflow.process.service.def.DefinationParserServiceImpl
+ 800
+
+
+
+ com.primeton.bps.multitenancy.impl.TenancyCacheService
+ 850
+
+
+
+ com.primeton.bps.taskpool.schedule.ExcludeParticipantsCache
+ 860
+
+
+
+ com.primeton.workflow.service.organization.internal.WFOMServiceInner
+ 900
+
+
+ com.primeton.workflow.service.organization.studio.WFOMModelServiceImpl
+ 1000
+
+
+ com.primeton.workflow.instpool.smp.WFInstancePoolImplBasic
+ 1100
+
+
+ com.primeton.workflow.process.service.def.DefinationCatcheServiceImpl
+ 1200
+
+
+ com.primeton.workflow.task.service.agent.AgentCacheManager
+ 1300
+
+
+ com.primeton.workflow.service.unique.UniqueServiceImpl
+ 1400
+
+
+ com.primeton.workflow.instpool.keytrans.WFKeyTranslatorServiceConcreate
+ 1500
+
+
+
+ com.primeton.workflow.service.bizresource.das.BizResourceCacheServiceImpl
+ 1600
+
+
+ com.primeton.workflow.service.bizresource.das.BizResourceDataAccessServiceImpl
+ 1700
+
+
+ com.primeton.workflow.service.bizresource.runtime.impl.BizResourceRunnerService
+ 1800
+
+
+ com.primeton.workflow.service.bizinfo.WFBizInfoCacheServiceImpl
+ 1900
+
+
+ com.primeton.workflow.engine.transhistory.impl.AutoDeleteShortProcessInstServiceImpl
+ 2000
+
+
+ com.primeton.workflow.message.service.BPSMessageServiceImpl
+ 20
+
+
+ com.primeton.bps.multitenancy.impl.MultiTenancyService
+ 2012
+
+
+ com.primeton.workflow.service.transfer.realtime.ProcessInstDataTransfer
+ 2300
+
+
+
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFEngineConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFEngineConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFOMServiceConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFEngineConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFClusterConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFConnectionProviderConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFAuditLogConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFComposerConfigurationHandler
+ config
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFLinkColorConfigurationHandler
+ config
+
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFMessageConfigurationHandler
+ config
+
+
+ other
+ com.primeton.workflow.commons.notification.notify.MessageConsumer
+
+
+ config
+ com.eos.common.config.mbean.Config
+ com.primeton.workflow.commons.config.handler.WFMultiTenancyConfigurationHandler
+ config
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/_srv/primetonlicense.xml b/com.primeton.eos.demo.boot/src/META-INF/_srv/primetonlicense.xml
new file mode 100644
index 0000000..4d7a094
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/_srv/primetonlicense.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/application-afc.properties b/com.primeton.eos.demo.boot/src/META-INF/application-afc.properties
new file mode 100644
index 0000000..959f824
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/application-afc.properties
@@ -0,0 +1,20 @@
+afc.application.name=AFCENTER
+afc.application.tenant=sys_tenant
+
+bps.application.name=BPS-SERVER
+bps.tenant.id=
+
+# attachment
+# mode: local,db,nexus,aliyun-oss
+afc.attachments.persistence-mode=local
+afc.attachments.local.dir=
+afc.attachments.nexus.repository-url=
+afc.attachments.nexus.username=
+afc.attachments.nexus.password=
+afc.attachments.aliyun-oss.endpoint=
+afc.attachments.aliyun-oss.access-key-id=
+afc.attachments.aliyun-oss.access-key-secret=
+afc.attachments.aliyun-oss.bucket-name=
+afc.attachments.libre-office.host=
+afc.attachments.libre-office.port=
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/application-job.properties b/com.primeton.eos.demo.boot/src/META-INF/application-job.properties
new file mode 100644
index 0000000..197ced1
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/application-job.properties
@@ -0,0 +1,27 @@
+management.health.mail.enabled=false
+mybatis.mapper-locations=classpath*:mybatis-mapper/*Mapper.xml
+#mybatis.type-aliases-package=com.xxl.job.admin.core.model
+spring.mail.host=smtp.qq.com
+spring.mail.port=25
+spring.mail.username=xxx@qq.com
+spring.mail.from=xxx@qq.com
+spring.mail.password=xxx
+spring.mail.properties.mail.smtp.auth=true
+spring.mail.properties.mail.smtp.starttls.enable=true
+spring.mail.properties.mail.smtp.starttls.required=true
+spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
+#xxl.job.accessToken=
+xxl.job.i18n=zh_CN
+xxl.job.triggerpool.fast.max=200
+xxl.job.triggerpool.slow.max=100
+afc.job.admin.enabled=false
+afc.job.executor.enabled=false
+xxl.job.logretentiondays=30
+
+# executor����
+#afc.job.executor.accessToken=default_token
+#afc.job.executor.address=
+#afc.job.executor.ip=
+#afc.job.executor.port=9999
+#afc.job.executor.logPath=
+#afc.job.executor.logRetentionDays=
diff --git a/com.primeton.eos.demo.boot/src/META-INF/application-nacos.properties b/com.primeton.eos.demo.boot/src/META-INF/application-nacos.properties
new file mode 100644
index 0000000..7e5758a
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/application-nacos.properties
@@ -0,0 +1,4 @@
+spring.cloud.nacos.discovery.enabled=true
+spring.cloud.nacos.discovery.server-addr=192.168.3.32:8848
+
+eureka.client.enabled=false
diff --git a/com.primeton.eos.demo.boot/src/META-INF/application.properties b/com.primeton.eos.demo.boot/src/META-INF/application.properties
new file mode 100644
index 0000000..4475341
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/application.properties
@@ -0,0 +1,70 @@
+server.port=28099
+spring.application.name=demo
+server.servlet.session.timeout=PT120M
+
+server.app-server.accept-count=1000
+server.app-server.max-connections=10000
+server.app-server.max-threads=500
+server.app-server.min-space-threads=50
+
+#file upload
+spring.servlet.multipart.max-file-size=100MB
+spring.servlet.multipart.max-request-size=100MB
+
+#spring.profiles.active=eureka
+spring.profiles.active=nacos,afc,job
+
+management.endpoints.web.exposure.include=hystrix.stream,health,info,loggers,eos,mappings
+management.health.redis.enable=false
+
+out.config.folder=config
+
+eos.application.sys-code=EOS-DEMO-SYS
+eos.application.sys-key=dc6baaed30e541d78bb91274803d9432
+# eos environment: dev prod test
+eos.profiles.active=dev
+
+# eos cache config
+eos.cache.mode=redis
+
+spring.session.store-type=none
+# redis
+spring.redis.host=192.168.3.32
+spring.redis.port=6379
+spring.redis.password=panshu123
+spring.redis.database=2
+spring.redis.lettuce.pool.max-active=100
+spring.redis.lettuce.pool.max-idle=100
+spring.redis.lettuce.pool.max-wait=5000
+
+#primary datasource
+
+spring.datasource.url=jdbc:mysql://192.168.3.32:3306/eos-afc-830?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=false
+spring.datasource.driver-class-name=com.mysql.jdbc.Driver
+spring.datasource.username=root
+spring.datasource.password=123456
+spring.datasource.pool-name=main
+spring.datasource.connection-timeout=60000
+spring.datasource.maximum-pool-size=500
+spring.datasource.hikari.minimum-idle=100
+spring.datasource.hikari.idle-timeout=600000
+spring.datasource.hikari.max-lifetime=28740000
+
+#afc datasource
+#spring.datasource.dynamic.datasource.afcenter.url=jdbc:mysql://192.168.3.32:3306/eos-index-831?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=false
+#spring.datasource.dynamic.datasource.afcenter.driver-class-name=com.mysql.jdbc.Driver
+#spring.datasource.dynamic.datasource.afcenter.username=root
+#spring.datasource.dynamic.datasource.afcenter.password=123456
+
+# MyBatis Plus Configuration
+mybatis-plus.type-aliases-package=com.primeton.eos.demo.core.test.entity.bo
+mybatis-plus.mapper-locations=classpath*:mybatis-mapper/*.xml
+mybatis-plus.configuration.jdbc-type-for-null=null
+mybatis-plus.configuration.map-underscore-to-camel-case=true
+mybatis-plus.global-config.banner=false
+
+
+# ??????
+file.local.enable=true
+#file.local.base-path=/home/file
+file.local.base-path=C:/home/file
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly-component.xml b/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly-component.xml
new file mode 100644
index 0000000..5dc9d34
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly-component.xml
@@ -0,0 +1,51 @@
+
+ package-component
+
+ zip
+
+ false
+
+
+
+ target/${project.parent.name}-db-scripts/META-INF/db-scripts
+ script
+
+
+
+
+
+
+
+
+
+
+ ${project.groupId}:${project.groupId}.${project.parent.name}.api
+ ${project.groupId}:${project.groupId}.${project.parent.name}.core
+ ${project.groupId}:${project.groupId}.${project.parent.name}.model
+
+ backend/${project.parent.name}_lib
+ false
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly.xml b/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly.xml
new file mode 100644
index 0000000..931a90b
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/assembly/assembly.xml
@@ -0,0 +1,153 @@
+
+ package
+
+ tar.gz
+
+ false
+
+
+
+
+ lib/jdbc
+
+ mysql:*
+ dameng:*
+ com.huawei.gauss.jdbc.ZenithDriver:*
+ com.oracle.ojdbc:*
+ com.primeton.3rd.jdbc:*
+ com.microsoft.sqlserver:*
+ com.ibm.db2.jcc:*
+ org.postgresql:*
+ com.clickhouse:*
+ ru.yandex.clickhouse:*
+ org.mongodb:*
+
+ 0755
+
+
+ lib/hadoop
+
+ org.apache.hadoop:*
+
+ 0755
+
+
+ lib/hive
+
+ org.apache.hive:*
+ org.apache.hive.shims:*
+ org.apache.thrift:libthrift
+
+ 0755
+
+
+ lib/hbase
+
+ org.apache.hbase:*
+ org.apache.hbase.thirdparty:*
+
+ 0755
+
+
+
+
+
+
+
+ target/eos-db-scripts/db-scripts
+ db-scripts/eos
+
+
+
+ target/demo-db-scripts/META-INF/db-scripts
+ db-scripts/demo
+
+
+
+
+ target
+ .
+
+ *.jar
+
+ 0755
+
+
+
+
+ static
+ static
+
+ */**
+
+
+
+
+
+ ../lib
+ lib
+
+ *.jar
+
+
+
+
+
+ src/META-INF
+ config
+
+ *.yml
+ *.properties
+ logback-spring.xml
+ serialkiller.xml
+
+
+
+
+
+ src/META-INF/_srv/config
+ config/demo
+
+ */**
+
+
+
+
+
+ src/META-INF/db-scripts
+
+ */**
+
+ db-scripts
+
+
+
+
+ src/META-INF/_srv
+ config/demo/license
+
+ *.xml
+
+
+
+
+
+ src/META-INF/scripts
+
+ *.sh
+
+ bin
+ unix
+ 0755
+
+
+ src/META-INF/scripts
+
+ *.cmd
+
+ bin
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/bootstrap.properties b/com.primeton.eos.demo.boot/src/META-INF/bootstrap.properties
new file mode 100644
index 0000000..377cc5f
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/bootstrap.properties
@@ -0,0 +1,3 @@
+# nacos-addr
+spring.cloud.nacos.config.enabled=true
+spring.cloud.nacos.config.server-addr=192.168.3.32:8848
diff --git a/com.primeton.eos.demo.boot/src/META-INF/contribution.eosinf b/com.primeton.eos.demo.boot/src/META-INF/contribution.eosinf
new file mode 100644
index 0000000..f630764
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/contribution.eosinf
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ config
+ com.eos.system.management.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+
+
+
+
+
+ default
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/handler-contribution.xml b/com.primeton.eos.demo.boot/src/META-INF/handler-contribution.xml
new file mode 100644
index 0000000..9c13485
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/handler-contribution.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/logback-spring.xml b/com.primeton.eos.demo.boot/src/META-INF/logback-spring.xml
new file mode 100644
index 0000000..8ffe4c0
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/logback-spring.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.boot/src/META-INF/resources/exception/exception.properties b/com.primeton.eos.demo.boot/src/META-INF/resources/exception/exception.properties
new file mode 100644
index 0000000..e1942e8
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/resources/exception/exception.properties
@@ -0,0 +1,6 @@
+#exception properties resource file.
+#content format:
+# code=message
+#for example:
+# 100001=It occur when [{0}] execute.
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/resources/i18n/i18n.properties b/com.primeton.eos.demo.boot/src/META-INF/resources/i18n/i18n.properties
new file mode 100644
index 0000000..691d4fa
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/resources/i18n/i18n.properties
@@ -0,0 +1,6 @@
+#I18N properties resource file.
+#content format:
+# code=message
+#for example:
+# 10000=name
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.cmd b/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.cmd
new file mode 100644
index 0000000..bbc1750
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.cmd
@@ -0,0 +1,13 @@
+@echo off
+
+setlocal
+
+set PRG=%~dp0
+
+FOR /F %%i IN ('dir /b %PRG%..\*.jar') DO @set JAR_FILE=%%i
+
+echo killing EOS8-PERSON-INDEX server
+
+for /f "tokens=1" %%i in ('jps -m ^| find "%JAR_FILE%"') do ( taskkill /F /PID %%i )
+
+echo Done!
diff --git a/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.sh b/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.sh
new file mode 100644
index 0000000..8f3ed49
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/scripts/shutdown.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+PRG="$0"
+saveddir=`pwd`
+EOS_DAP_HOME=`dirname "$PRG"`/..
+EOS_DAP_HOME=`cd "$EOS_DAP_HOME" && pwd`
+cd "$saveddir"
+
+export APP_NAME=EOS8-PERSON-INDEX
+export MODE=service
+export LOG_FOLDER="${EOS_DAP_HOME}"/logs
+export PID_FOLDER="${LOG_FOLDER}"
+export LOG_FILENAME="${APP_NAME}.out" # log console for background mode running
+
+BOOT_JAR=`echo "${EOS_DAP_HOME}"/*.jar`
+$BOOT_JAR stop "$@"
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.cmd b/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.cmd
new file mode 100644
index 0000000..2a9319f
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.cmd
@@ -0,0 +1,52 @@
+@echo off
+
+set PRG=%~dp0
+
+set EOS_DAP_HOME=%PRG:~0,-5%
+set PRIMETON_HOME=%PRG:~0,-14%
+
+
+if not exist "%JAVA_HOME%\bin\java.exe" set JAVA_HOME=%PRIMETON_HOME%\jdk180
+
+set "JAVA=%JAVA_HOME%\bin\java.exe"
+
+set APP_NAME=EOS8-PERSON-INDEX
+set LOG_FOLDER=%EOS_DAP_HOME%/logs
+
+set EOS_DAP_MEM_OPTS=-Xms512m -Xmx1024m -Xmn256m
+
+set JAVA_OPTS=%JAVA_OPTS% -server -Djava.net.preferIPv4Stack=true -Duser.timezone=Asia/Shanghai -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8
+set JAVA_OPTS=%JAVA_OPTS% %EOS_DAP_MEM_OPTS%
+set JAVA_OPTS=%JAVA_OPTS% -DEXTERNAL_CONFIG_DIR=%EOS_DAP_HOME%\config
+set JAVA_OPTS=%JAVA_OPTS% -Dloader.path=%EOS_DAP_HOME%\lib
+set JAVA_OPTS=%JAVA_OPTS% -Dlogging.config=%EOS_DAP_HOME%\config\logback-spring.xml
+set JAVA_OPTS=%JAVA_OPTS% -Dnacos.logging.path=%LOG_FOLDER%\nacos -Dcom.alibaba.nacos.naming.cache.dir=%LOG_FOLDER%\nacos\cache
+
+@rem set JAVA_OPTS=%JAVA_OPTS% -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=9 -XX:+UseConcMarkSweepGC
+
+echo %*| findstr \-debug >nul && (
+ set JAVA_OPTS=%JAVA_OPTS% -XX:+HeapDumpOnOutOfMemoryError -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787
+)
+
+echo %*| findstr \-apm >nul && (
+ set JAVA_OPTS=%JAVA_OPTS% -javaagent:%EOS_DAP_HOME%\..\..\skywalking-agent\skywalking-agent.jar
+ set JAVA_OPTS=%JAVA_OPTS% -DSW_AGENT_NAME=%APP_NAME%
+ set JAVA_OPTS=%JAVA_OPTS% -Dskywalking.trace.ignore_path=/eureka/**,/actuator/eos/**,/nacos/**
+ @rem set JAVA_OPTS=%JAVA_OPTS% -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800
+)
+
+echo %*| findstr \-version >nul && (
+ set JAVA_OPTS=%JAVA_OPTS% -Dloader.main=com.primeton.eos.springboot.VersionInfo
+)
+
+echo %*| findstr \-opens >nul && (
+ set JAVA_OPTS=%JAVA_OPTS% --add-opens java.base/java.lang=ALL-UNNAMED
+)
+
+cd %EOS_DAP_HOME%
+
+FOR /F %%i IN ('dir /b *.jar') DO @set JAR_FILE=%%i
+set BOOT_JAR=%EOS_DAP_HOME%\%JAR_FILE%
+
+title %JAR_FILE%
+"%JAVA%" %JAVA_OPTS% -jar %BOOT_JAR% %1 %2 %3
diff --git a/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.sh b/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.sh
new file mode 100644
index 0000000..b89ff97
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/scripts/startup.sh
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+PRG="$0"
+saveddir=`pwd`
+EOS_DAP_HOME=`dirname "$PRG"`/..
+EOS_DAP_HOME=`cd "$EOS_DAP_HOME" && pwd`
+cd "$saveddir"
+
+export APP_NAME=EOS8-PERSON-INDEX
+export MODE=service
+export LOG_FOLDER="${EOS_DAP_HOME}"/logs
+export PID_FOLDER="${LOG_FOLDER}"
+export LOG_FILENAME="${APP_NAME}.out" # log console for background mode running
+
+mkdir -p $LOG_FOLDER/$APP_NAME # pid dir
+
+rm -fr $LOG_FOLDER/$LOG_FILENAME
+ln -s /dev/null $LOG_FOLDER/$LOG_FILENAME # "$LOG_FOLDER/$LOG_FILENAME is using for >> "$log_file" 2>&1"
+
+export EOS_DAP_MEM_OPTS="-Xms512m -Xmx1024m -Xmn256m"
+
+export JAVA_OPTS="$JAVA_OPTS -server -Djava.net.preferIPv4Stack=true -Duser.timezone=Asia/Shanghai -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8 -Djava.security.egd=file:/dev/./urandom"
+export JAVA_OPTS="$JAVA_OPTS $EOS_DAP_MEM_OPTS"
+export JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError"
+export JAVA_OPTS="$JAVA_OPTS -DEXTERNAL_CONFIG_DIR=${EOS_DAP_HOME}/config"
+export JAVA_OPTS="$JAVA_OPTS -Dloader.path=${EOS_DAP_HOME}/lib"
+export JAVA_OPTS="$JAVA_OPTS -Dlogging.config=${EOS_DAP_HOME}/config/logback-spring.xml"
+export JAVA_OPTS="$JAVA_OPTS -Dnacos.logging.path=${LOG_FOLDER}/nacos -Dcom.alibaba.nacos.naming.cache.dir=${LOG_FOLDER}/nacos/cache"
+
+# export JAVA_OPTS="$JAVA_OPTS -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=9 -XX:+UseConcMarkSweepGC"
+
+if [[ "$*" =~ "-debug" ]];
+then
+ export JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8788"
+fi
+
+if [[ "$*" =~ "-apm" ]];
+then
+ export JAVA_OPTS="$JAVA_OPTS -javaagent:${EOS_DAP_HOME}/../../skywalking-agent/skywalking-agent.jar"
+ export JAVA_OPTS="$JAVA_OPTS -DSW_AGENT_NAME=${APP_NAME}"
+ export JAVA_OPTS="$JAVA_OPTS -Dskywalking.trace.ignore_path=/eureka/**,/actuator/eos/**,/nacos/**"
+ #export JAVA_OPTS="$JAVA_OPTS -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800"
+fi
+
+if [[ "$*" =~ "-opens" ]];
+then
+ export JAVA_OPTS="$JAVA_OPTS --add-opens java.base/java.lang=ALL-UNNAMED"
+fi
+
+action=$1
+if [[ "$action" == "run" ]] || [[ "$action" == "start" ]];
+then
+ shift
+else
+ action="start"
+fi
+
+if [[ "$*" =~ "-version" ]];
+then
+ export JAVA_OPTS="$JAVA_OPTS -Dloader.main=com.primeton.eos.springboot.VersionInfo"
+ action="run"
+fi
+
+BOOT_JAR=`echo "${EOS_DAP_HOME}"/*.jar`
+$BOOT_JAR $action "$@"
+
diff --git a/com.primeton.eos.demo.boot/src/META-INF/serialkiller.xml b/com.primeton.eos.demo.boot/src/META-INF/serialkiller.xml
new file mode 100644
index 0000000..ef4be39
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/META-INF/serialkiller.xml
@@ -0,0 +1,244 @@
+
+
+
+
+
+ bsh\.XThis$
+ bsh\.Interpreter$
+
+ com\.mchange\.v2\.c3p0\.impl\.PoolBackedDataSourceBase$
+ com\.mchange\.v2\.c3p0\.JndiRefForwardingDataSource$
+ com\.mchange\.v2\.c3p0\.WrapperConnectionPoolDataSource$
+ com\.mchange\.v2\.c3p0\.ComboPooledDataSource$
+ com\.mchange\.v2\.c3p0\.debug\.AfterCloseLoggingComboPooledDataSource$
+
+ org\.apache\.commons\.beanutils\.BeanComparator$
+
+ org\.apache\.commons\.collections\.Transformer$
+ org\.apache\.commons\.collections\.functors\.InvokerTransformer$
+ org\.apache\.commons\.collections\.functors\.ChainedTransformer$
+ org\.apache\.commons\.collections\.functors\.ConstantTransformer$
+ org\.apache\.commons\.collections\.functors\.InstantiateTransformer$
+
+ org\.apache\.commons\.collections4\.functors\.InvokerTransformer$
+ org\.apache\.commons\.collections4\.functors\.ChainedTransformer$
+ org\.apache\.commons\.collections4\.functors\.ConstantTransformer$
+ org\.apache\.commons\.collections4\.functors\.InstantiateTransformer$
+ org\.apache\.commons\.collections4\.comparators\.TransformingComparator$
+
+ org\.apache\.commons\.fileupload\.disk\.DiskFileItem$
+ org\.apache\.wicket\.util\.upload\.DiskFileItem$
+
+ org\.codehaus\.groovy\.runtime\.ConvertedClosure$
+ org\.codehaus\.groovy\.runtime\.MethodClosure$
+
+ org\.hibernate\.engine\.spi\.TypedValue$
+ org\.hibernate\.tuple\.component\.AbstractComponentTuplizer$
+ org\.hibernate\.tuple\.component\.PojoComponentTuplizer$
+ org\.hibernate\.type\.AbstractType$
+ org\.hibernate\.type\.ComponentType$
+ org\.hibernate\.type\.Type$
+ com\.sun\.rowset\.JdbcRowSetImpl$
+
+ org\.jboss\.(weld\.)?interceptor\.builder\.InterceptionModelBuilder$
+ org\.jboss\.(weld\.)?interceptor\.builder\.MethodReference$
+ org\.jboss\.(weld\.)?interceptor\.proxy\.DefaultInvocationContextFactory$
+ org\.jboss\.(weld\.)?interceptor\.proxy\.InterceptorMethodHandler$
+ org\.jboss\.(weld\.)?interceptor\.reader\.ClassMetadataInterceptorReference$
+ org\.jboss\.(weld\.)?interceptor\.reader\.DefaultMethodMetadata$
+ org\.jboss\.(weld\.)?interceptor\.reader\.ReflectiveClassMetadata$
+ org\.jboss\.(weld\.)?interceptor\.reader\.SimpleInterceptorMetadata$
+ org\.jboss\.(weld\.)?interceptor\.spi\.instance\.InterceptorInstantiator$
+ org\.jboss\.(weld\.)?interceptor\.spi\.metadata\.InterceptorReference$
+ org\.jboss\.(weld\.)?interceptor\.spi\.metadata\.MethodMetadata$
+ org\.jboss\.(weld\.)?interceptor\.spi\.model\.InterceptionModel$
+ org\.jboss\.(weld\.)?interceptor\.spi\.model\.InterceptionType$
+
+ java\.rmi\.registry\.Registry$
+ java\.rmi\.server\.ObjID$
+ java\.rmi\.server\.RemoteObjectInvocationHandler$
+
+ net\.sf\.json\.JSONObject$
+
+ javax\.xml\.transform\.Templates$
+
+ org\.python\.core\.PyObject$
+ org\.python\.core\.PyBytecode$
+ org\.python\.core\.PyFunction$
+
+ org\.mozilla\.javascript\.\.*$
+
+ org\.apache\.myfaces\.context\.servlet\.FacesContextImpl$
+ org\.apache\.myfaces\.context\.servlet\.FacesContextImplBase$
+ org\.apache\.myfaces\.el\.CompositeELResolver$
+ org\.apache\.myfaces\.el\.unified\.FacesELContext$
+ org\.apache\.myfaces\.view\.facelets\.el\.ValueExpressionMethodExpression$
+
+ com\.sun\.syndication\.feed\.impl\.ObjectBean$
+
+ org\.springframework\.beans\.factory\.ObjectFactory$
+ org\.springframework\.core\.SerializableTypeWrapper\$MethodInvokeTypeProvider$
+ org\.springframework\.aop\.framework\.AdvisedSupport$
+ org\.springframework\.aop\.target\.SingletonTargetSource$
+ org\.springframework\.aop\.framework\.JdkDynamicAopProxy$
+ org\.springframework\.core\.SerializableTypeWrapper\$TypeProvider$
+ org\.springframework\.beans\.factory\.config\.PropertyPathFactoryBean$
+ org\.springframework\.aop\.config\.MethodLocatingFactoryBean$
+ org\.springframework\.beans\.factory\.config\.BeanReferenceFactoryBean$
+
+ java\.util\.PriorityQueue$
+ java\.lang\.reflect\.Proxy$
+ javax\.management\.MBeanServerInvocationHandler$
+ javax\.management\.openmbean\.CompositeDataInvocationHandler$
+ org\.springframework\.aop\.framework\.JdkDynamicAopProxy$
+ java\.beans\.EventHandler$
+ java\.util\.Comparator$
+ org\.reflections\.Reflections$
+
+
+ com\.sun\.org\.apache\.xalan\.internal\.xsltc\.trax\.TemplatesImpl$
+ org\.apache\.xalan\.xsltc\.trax\.TemplatesImpl$
+
+ java\.util\.logging\.FileHandler$
+ java\.rmi\.server\.UnicastRemoteObject$
+
+ org\.apache\.tomcat\.dbcp\.dbcp2\.BasicDataSource$
+ com\.sun\.org\.apache\.bcel\.internal\.util\.ClassLoader$
+
+ org\.hibernate\.jmx\.StatisticsService$
+ org\.apache\.ibatis\.datasource\.jndi\.JndiDataSourceFactory$
+ org\.apache\.ibatis\.parsing\.XPathParser$
+
+ jodd\.db\.connection\.DataSourceConnectionProvider$
+
+ oracle\.jdbc\.connector\.OracleManagedConnectionFactory$
+ oracle\.jdbc\.rowset\.OracleJDBCRowSet$
+
+ org\.slf4j\.ext\.EventData$
+ flex\.messaging\.util\.concurrent\.AsynchBeansWorkManagerExecutor$
+ com\.sun\.deploy\.security\.ruleset\.DRSHelper$
+ org\.apache\.axis2\.jaxws\.spi\.handler\.HandlerResolverImpl$
+
+ org\.jboss\.util\.propertyeditor\.DocumentEditor$
+ org\.apache\.openjpa\.ee\.RegistryManagedRuntime$
+ org\.apache\.openjpa\.ee\.JNDIManagedRuntime$
+ org\.apache\.openjpa\.ee\.WASRegistryManagedRuntime$
+ org\.apache\.axis2\.transport\.jms\.JMSOutTransportInfo$
+
+ com\.mysql\.cj\.jdbc\.admin\.MiniAdmin$
+
+ com\.newrelic\.agent\.deps\.ch\.qos\.logback\.core\.db\.DriverManagerConnectionSource$
+ com\.newrelic\.agent\.deps\.ch\.qos\.logback\.core\.db\.JNDIConnectionSource$
+ com\.nqadmin\.rowset\.JdbcRowSetImpl$
+ com\.oracle\.wls\.shaded\.org\.apache\.xalan\.lib\.sql\.JNDIConnectionPool$
+ com\.pastdev\.httpcomponents\.configuration\.JndiConfiguration$
+
+ ch\.qos\.logback\.core\.db\.DriverManagerConnectionSource$
+
+ org\.jdom\.transform\.XSLTransformer$
+ org\.jdom2\.transform\.XSLTransformer$
+
+ net\.sf\.ehcache\.transaction\.manager\.DefaultTransactionManagerLookup$
+ net\.sf\.ehcache\.hibernate\.EhcacheJtaTransactionManagerLookup$
+
+ ch\.qos\.logback\.core\.db\.JNDIConnectionSource$
+
+ com\.zaxxer\.hikari\.HikariConfig$
+ com\.zaxxer\.hikari\.HikariDataSource$
+
+ org\.apache\.cxf\.jaxrs\.provider\.XSLTJaxbProvider$
+
+ org\.apache\.commons\.configuration\.JNDIConfiguration$
+ org\.apache\.commons\.configuration2\.JNDIConfiguration$
+
+ org\.apache\.xalan\.lib\.sql\.JNDIConnectionPool$
+
+ com\.sun\.org\.apache\.xalan\.internal\.lib\.sql\.JNDIConnectionPool$
+
+ org\.apache\.commons\.dbcp\.datasources\.PerUserPoolDataSource$
+ org\.apache\.commons\.dbcp\.datasources\.SharedPoolDataSource$
+ com\.p6spy\.engine\.spy\.P6DataSource$
+
+ org\.apache\.log4j\.receivers\.db\.DriverManagerConnectionSource$
+ org\.apache\.log4j\.receivers\.db\.JNDIConnectionSource$
+
+ net\.sf\.ehcache\.transaction\.manager\.selector\.GenericJndiSelector$
+ net\.sf\.ehcache\.transaction\.manager\.selector\.GlassfishSelector$
+
+ org\.apache\.xbean\.propertyeditor\.JndiConverter$
+
+ org\.apache\.hadoop\.shaded\.com\.zaxxer\.hikari\.HikariConfig$
+
+ com\.ibatis\.sqlmap\.engine\.transaction\.jta\.JtaTransactionConfig$
+ br\.com\.anteros\.dbcp\.AnterosDBCPConfig$
+ br\.com\.anteros\.dbcp\.AnterosDBCPDataSource$
+
+ javax\.swing\.JEditorPane$
+ javax\.swing\.JTextPane$
+
+ org\.apache\.shiro\.realm\.jndi\.JndiRealmFactory$
+ org\.apache\.shiro\.jndi\.JndiObjectFactory$
+
+ org\.apache\.ignite\.cache\.jta\.jndi\.CacheJndiTmLookup$
+ org\.apache\.ignite\.cache\.jta\.jndi\.CacheJndiTmFactory$
+ org\.quartz\.utils\.JNDIConnectionProvider$
+
+ org\.apache\.aries\.transaction\.jms\.internal\.XaPooledConnectionFactory$
+ org\.apache\.aries\.transaction\.jms\.RecoverablePooledConnectionFactory$
+
+ com\.caucho\.config\.types\.ResourceRef$
+
+ org\.aoju\.bus\.proxy\.provider\.RmiProvider$
+ org\.aoju\.bus\.proxy\.provider\.remoting\.RmiProvider$
+
+ org\.apache\.activemq\.ActiveMQConnectionFactory$
+ org\.apache\.activemq\.ActiveMQXAConnectionFactory$
+ org\.apache\.activemq\.spring\.ActiveMQConnectionFactory$
+ org\.apache\.activemq\.spring\.ActiveMQXAConnectionFactory$
+ org\.apache\.activemq\.pool\.JcaPooledConnectionFactory$
+ org\.apache\.activemq\.pool\.PooledConnectionFactory$
+ org\.apache\.activemq\.pool\.XaPooledConnectionFactory$
+ org\.apache\.activemq\.jms\.pool\.XaPooledConnectionFactory$
+ org\.apache\.activemq\.jms\.pool\.JcaPooledConnectionFactory$
+
+ org\.apache\.commons\.proxy\.provider\.remoting\.RmiProvider$
+
+ org\.apache\.commons\.jelly\.impl\.Embedded$
+
+ oadd\.org\.apache\.commons\.dbcp\.cpdsadapter\.DriverAdapterCPDS$
+ oadd\.org\.apache\.commons\.dbcp\.datasources\.PerUserPoolDataSource$
+ oadd\.org\.apache\.commons\.dbcp\.datasources\.SharedPoolDataSource$
+
+ org\.apache\.commons\.dbcp\.cpdsadapter\.DriverAdapterCPDS$
+ org\.apache\.commons\.dbcp2\.cpdsadapter\.DriverAdapterCPDS$
+ org\.apache\.commons\.dbcp2\.datasources\.PerUserPoolDataSource$
+ org\.apache\.commons\.dbcp2\.datasources\.SharedPoolDataSource$
+
+
+ oadd\.org\.apache\.xalan\.lib\.sql\.JNDIConnectionPool$
+
+ oracle\.jms\.AQjmsQueueConnectionFactory$
+ oracle\.jms\.AQjmsXATopicConnectionFactory$
+ oracle\.jms\.AQjmsTopicConnectionFactory$
+ oracle\.jms\.AQjmsXAQueueConnectionFactory$
+ oracle\.jms\.AQjmsXAConnectionFactory$
+
+ org\.jsecurity\.realm\.jndi\.JndiRealmFactory$
+
+ org\.apache\.tomcat\.dbcp\.dbcp\.cpdsadapter\.DriverAdapterCPDS$
+ org\.apache\.tomcat\.dbcp\.dbcp\.datasources\.PerUserPoolDataSource$
+ org\.apache\.tomcat\.dbcp\.dbcp\.datasources\.SharedPoolDataSource$
+ org\.apache\.tomcat\.dbcp\.dbcp2\.cpdsadapter\.DriverAdapterCPDS$
+ org\.apache\.tomcat\.dbcp\.dbcp2\.datasources\.PerUserPoolDataSource$
+ org\.apache\.tomcat\.dbcp\.dbcp2\.datasources\.SharedPoolDataSource$
+ org\.arrah\.framework\.rdbms\.UpdatableJdbcRowsetImpl$
+ org\.docx4j\.org\.apache\.xalan\.lib\.sql\.JNDIConnectionPool$
+
+
+
+
+
+ .*
+
+
+
diff --git a/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/Application.java b/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/Application.java
new file mode 100644
index 0000000..396f79b
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/Application.java
@@ -0,0 +1,22 @@
+package com.primeton.eos.demo;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
+
+
+@SpringBootApplication
+@EnableFeignClients
+@EnableDiscoveryClient
+@EnableAspectJAutoProxy(exposeProxy = true)
+@ComponentScan(basePackages = {"com.primeton.eos.demo"})
+@MapperScan(basePackages = {"com.primeton.eos.demo.core.test.mapper", "com.primeton.eos.demo.core.mapper"})
+public class Application {
+ public static void main(String[] args) {
+ SpringApplication.run(Application.class, args);
+ }
+}
diff --git a/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/ProjectReactor.java b/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/ProjectReactor.java
new file mode 100644
index 0000000..49b2d78
--- /dev/null
+++ b/com.primeton.eos.demo.boot/src/com/primeton/eos/demo/ProjectReactor.java
@@ -0,0 +1,152 @@
+package com.primeton.eos.demo;
+
+import cn.hutool.core.io.FileTypeUtil;
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.common.util.collection.SetUtils;
+import lombok.extern.slf4j.Slf4j;
+
+import java.io.File;
+import java.nio.charset.StandardCharsets;
+import java.util.Collection;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.stream.Collectors;
+
+import static java.io.File.separator;
+
+/**
+ * 项目修改器,一键替换 Maven 的 groupId、artifactId,项目的 package 等
+ *
+ * 通过修改 groupIdNew、artifactIdNew、projectBaseDirNew 三个变量
+ *
+ * @author 芋道源码
+ */
+@Slf4j
+public class ProjectReactor {
+
+ private static final String GROUP_ID = "com.primeton.eos";
+ private static final String ARTIFACT_ID = "demo";
+ private static final String PACKAGE_NAME = "com.primeton.eos.demo";
+ private static final String TITLE = "站内消息服务";
+
+ /**
+ * 白名单文件,不进行重写,避免出问题
+ */
+ private static final Set WHITE_FILE_TYPES = SetUtils.asSet("gif", "jpg", "svg", "png", // 图片
+ "eot", "woff2", "ttf", "woff", // 字体
+ "gitignore",
+ "xdb"); // IP 库
+
+ public static void main(String[] args) {
+ long start = System.currentTimeMillis();
+ String projectBaseDir = getProjectBaseDir();
+ log.info("[main][原项目路劲改地址 ({})]", projectBaseDir);
+
+ // ========== 配置,需要你手动修改 ==========
+ String groupIdNew = "com.primeton.eos";
+ String artifactIdNew = "demo";
+ String packageNameNew = "com.primeton.eos.demo";
+ String titleNew = "站内消息服务";
+ String projectBaseDirNew = projectBaseDir + "-eos-demo"; // 一键改名后,“新”项目所在的目录
+ log.info("[main][检测新项目目录 ({})是否存在]", projectBaseDirNew);
+ if (FileUtil.exist(projectBaseDirNew)) {
+ log.error("[main][新项目目录检测 ({})已存在,请更改新的目录!程序退出]", projectBaseDirNew);
+ return;
+ }
+ // 如果新目录中存在 PACKAGE_NAME,ARTIFACT_ID 等关键字,路径会被替换,导致生成的文件不在预期目录
+ if (StrUtil.containsAny(projectBaseDirNew, PACKAGE_NAME, ARTIFACT_ID, StrUtil.upperFirst(ARTIFACT_ID))) {
+ log.error("[main][新项目目录 `projectBaseDirNew` 检测 ({}) 存在冲突名称「{}」或者「{}」,请更改新的目录!程序退出]",
+ projectBaseDirNew, PACKAGE_NAME, ARTIFACT_ID);
+ return;
+ }
+ log.info("[main][完成新项目目录检测,新项目路径地址 ({})]", projectBaseDirNew);
+ // 获得需要复制的文件
+ log.info("[main][开始获得需要重写的文件,预计需要 10-20 秒]");
+ Collection files = listFiles(projectBaseDir);
+ log.info("[main][需要重写的文件数量:{},预计需要 15-30 秒]", files.size());
+ // 写入文件
+ files.forEach(file -> {
+ // 如果是白名单的文件类型,不进行重写,直接拷贝
+ String fileType = getFileType(file);
+ if (WHITE_FILE_TYPES.contains(fileType)) {
+ copyFile(file, projectBaseDir, projectBaseDirNew, packageNameNew, artifactIdNew);
+ return;
+ }
+ // 如果非白名单的文件类型,重写内容,在生成文件
+ String content = replaceFileContent(file, groupIdNew, artifactIdNew, packageNameNew, titleNew);
+ writeFile(file, content, projectBaseDir, projectBaseDirNew, packageNameNew, artifactIdNew);
+ });
+ log.info("[main][重写完成]共耗时:{} 秒", (System.currentTimeMillis() - start) / 1000);
+ }
+
+ private static String getProjectBaseDir() {
+ String baseDir = System.getProperty("user.dir");
+ if (StrUtil.isEmpty(baseDir)) {
+ throw new NullPointerException("项目基础路径不存在");
+ }
+ return baseDir;
+ }
+
+ private static Collection listFiles(String projectBaseDir) {
+ Collection files = FileUtil.loopFiles(projectBaseDir);
+ // 移除 IDEA、Git 自身的文件、Node 编译出来的文件
+ files = files.stream()
+ .filter(file -> !file.getPath().contains(separator + "target" + separator)
+ && !file.getPath().contains(separator + "node_modules" + separator)
+ && !file.getPath().contains(separator + ".idea" + separator)
+ && !file.getPath().contains(separator + ".git" + separator)
+ && !file.getPath().contains(separator + "dist" + separator)
+ && !file.getPath().contains(separator + "logs" + separator)
+ && !file.getPath().contains(".iml")
+ && !file.getPath().contains(".html.gz"))
+ .collect(Collectors.toList());
+ return files;
+ }
+
+ private static String replaceFileContent(File file, String groupIdNew,
+ String artifactIdNew, String packageNameNew,
+ String titleNew) {
+ String content = FileUtil.readString(file, StandardCharsets.UTF_8);
+ // 如果是白名单的文件类型,不进行重写
+ String fileType = getFileType(file);
+ if (WHITE_FILE_TYPES.contains(fileType)) {
+ return content;
+ }
+ // 执行文件内容都重写
+ return content.replaceAll(GROUP_ID, groupIdNew)
+ .replaceAll(PACKAGE_NAME, packageNameNew)
+ .replaceAll(ARTIFACT_ID, artifactIdNew) // 必须放在最后替换,因为 ARTIFACT_ID 太短!
+ .replaceAll(StrUtil.upperFirst(ARTIFACT_ID), StrUtil.upperFirst(artifactIdNew))
+ .replaceAll(TITLE, titleNew);
+ }
+
+ private static void writeFile(File file, String fileContent, String projectBaseDir,
+ String projectBaseDirNew, String packageNameNew, String artifactIdNew) {
+ String newPath = buildNewFilePath(file, projectBaseDir, projectBaseDirNew, packageNameNew, artifactIdNew);
+ FileUtil.writeUtf8String(fileContent, newPath);
+ }
+
+ private static void copyFile(File file, String projectBaseDir,
+ String projectBaseDirNew, String packageNameNew, String artifactIdNew) {
+ String newPath = buildNewFilePath(file, projectBaseDir, projectBaseDirNew, packageNameNew, artifactIdNew);
+ FileUtil.copyFile(file, new File(newPath));
+ }
+
+ private static String buildNewFilePath(File file, String projectBaseDir,
+ String projectBaseDirNew, String packageNameNew, String artifactIdNew) {
+ String replace = file.getPath().replace(projectBaseDir, projectBaseDirNew);
+ replace= replace // 新目录
+ .replace(PACKAGE_NAME,packageNameNew)
+ .replace(PACKAGE_NAME.replaceAll("\\.", Matcher.quoteReplacement(separator)),
+ packageNameNew.replaceAll("\\.", Matcher.quoteReplacement(separator)));
+ replace.replace(ARTIFACT_ID, artifactIdNew) //
+ .replaceAll(StrUtil.upperFirst(ARTIFACT_ID), StrUtil.upperFirst(artifactIdNew));
+ return replace;
+ }
+
+ private static String getFileType(File file) {
+ return file.length() > 0 ? FileTypeUtil.getType(file) : "";
+ }
+
+}
diff --git a/com.primeton.eos.demo.core/pom.xml b/com.primeton.eos.demo.core/pom.xml
new file mode 100644
index 0000000..f30de79
--- /dev/null
+++ b/com.primeton.eos.demo.core/pom.xml
@@ -0,0 +1,55 @@
+
+ 4.0.0
+
+ com.primeton.eos
+ demo
+ 1.0.0
+ ../
+
+ com.primeton.eos.demo.core
+ com.primeton.eos.demo.core
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.model
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.api
+ 1.0.0
+
+
+
+ com.panshu
+ ps-eos-common
+
+
+
+ com.panshu
+ ps-spring-boot-starter-storage
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+ cn.iocoder.boot
+ yudao-spring-boot-starter-redis
+
+
+
+ src
+
+
+ maven-jar-plugin
+
+
+ src/META-INF/MANIFEST.MF
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/META-INF/MANIFEST.MF b/com.primeton.eos.demo.core/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..af0e87d
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-SymbolicName: com.primeton.eos.demo.core
+Bundle-Name: com.primeton.eos.demo.core
+Bundle-Version: 1.0.0
+Bundle-Vendor: 40108
+Require-Bundle:
+eos-webCtxPath: eos
+Bundle-Description:
+
diff --git a/com.primeton.eos.demo.core/src/META-INF/contribution.eosinf b/com.primeton.eos.demo.core/src/META-INF/contribution.eosinf
new file mode 100644
index 0000000..f630764
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/META-INF/contribution.eosinf
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ config
+ com.eos.system.management.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+
+
+
+
+
+ default
+
+
+
diff --git a/com.primeton.eos.demo.core/src/META-INF/handler-contribution.xml b/com.primeton.eos.demo.core/src/META-INF/handler-contribution.xml
new file mode 100644
index 0000000..9c13485
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/META-INF/handler-contribution.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/com.primeton.eos.demo.core/src/META-INF/resources/exception/exception.properties b/com.primeton.eos.demo.core/src/META-INF/resources/exception/exception.properties
new file mode 100644
index 0000000..e1942e8
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/META-INF/resources/exception/exception.properties
@@ -0,0 +1,6 @@
+#exception properties resource file.
+#content format:
+# code=message
+#for example:
+# 100001=It occur when [{0}] execute.
+
diff --git a/com.primeton.eos.demo.core/src/META-INF/resources/i18n/i18n.properties b/com.primeton.eos.demo.core/src/META-INF/resources/i18n/i18n.properties
new file mode 100644
index 0000000..691d4fa
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/META-INF/resources/i18n/i18n.properties
@@ -0,0 +1,6 @@
+#I18N properties resource file.
+#content format:
+# code=message
+#for example:
+# 10000=name
+
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/MybatisConfig.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/MybatisConfig.java
new file mode 100644
index 0000000..41065cb
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/MybatisConfig.java
@@ -0,0 +1,94 @@
+package com.primeton.eos.demo.core.common.config;
+
+import com.baomidou.mybatisplus.autoconfigure.SpringBootVFS;
+import com.baomidou.mybatisplus.core.MybatisConfiguration;
+import com.baomidou.mybatisplus.core.MybatisXMLLanguageDriver;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
+import org.apache.ibatis.mapping.DatabaseIdProvider;
+import org.apache.ibatis.plugin.Interceptor;
+import org.mybatis.spring.boot.autoconfigure.MybatisProperties;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.core.io.DefaultResourceLoader;
+import org.springframework.core.io.ResourceLoader;
+import org.springframework.util.StringUtils;
+
+import javax.sql.DataSource;
+
+@Configuration
+public class MybatisConfig {
+
+ @Autowired
+ private MybatisProperties properties;
+
+ @Autowired
+ private ResourceLoader resourceLoader = new DefaultResourceLoader();
+
+ @Autowired(required = false)
+ private Interceptor[] interceptors;
+
+ @Autowired(required = false)
+ private DatabaseIdProvider databaseIdProvider;
+
+ @Bean
+ public DataSource dataSource(DataSourceProperties properties) {
+ return properties.initializeDataSourceBuilder().build();
+ }
+
+
+ @Bean
+ public MybatisPlusInterceptor mybatisPlusInterceptor() {
+ MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
+ mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
+ // mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.DM));
+ return mybatisPlusInterceptor;
+ }
+
+ /**
+ * 这里全部使用mybatis-autoconfigure 已经自动加载的资源。不手动指定
+ *
+ * 配置文件和mybatis-boot的配置文件同步
+ *
+ * @return
+ */
+ @Bean
+ public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean(@Qualifier("dataSource") DataSource dataSource) {
+ MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean();
+ mybatisPlus.setDataSource(dataSource);
+ mybatisPlus.setVfs(SpringBootVFS.class);
+
+ if (StringUtils.hasText(this.properties.getConfigLocation())) {
+ mybatisPlus.setConfigLocation(this.resourceLoader.getResource(this.properties.getConfigLocation()));
+ }
+
+ if (!ObjectUtils.isEmpty(this.interceptors)) {
+ mybatisPlus.setPlugins(this.interceptors);
+ }
+
+ MybatisConfiguration mc = new MybatisConfiguration();
+ mc.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class);
+
+ //数据库字段设计为驼峰命名,默认开启的驼峰转下划线会报错字段找不到
+ mc.setMapUnderscoreToCamelCase(true);
+ mybatisPlus.setConfiguration(mc);
+ if (this.databaseIdProvider != null) {
+ mybatisPlus.setDatabaseIdProvider(this.databaseIdProvider);
+ }
+ if (StringUtils.hasLength(this.properties.getTypeAliasesPackage())) {
+ mybatisPlus.setTypeAliasesPackage(this.properties.getTypeAliasesPackage());
+ }
+ if (StringUtils.hasLength(this.properties.getTypeHandlersPackage())) {
+ mybatisPlus.setTypeHandlersPackage(this.properties.getTypeHandlersPackage());
+ }
+ if (!ObjectUtils.isEmpty(this.properties.resolveMapperLocations())) {
+ mybatisPlus.setMapperLocations(this.properties.resolveMapperLocations());
+ }
+ return mybatisPlus;
+ }
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/SwaggerConfig.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/SwaggerConfig.java
new file mode 100644
index 0000000..efcea01
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/common/config/SwaggerConfig.java
@@ -0,0 +1,50 @@
+package com.primeton.eos.demo.core.common.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.service.ApiInfo;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+@Configuration // 标明是配置类
+@EnableSwagger2 // 开启swagger功能
+public class SwaggerConfig {
+ @Bean
+ public Docket createRestApi() {
+ return new Docket(DocumentationType.SWAGGER_2) // DocumentationType.SWAGGER_2 固定的,代表swagger2
+ .groupName("站内消息服务") // 如果配置多个文档的时候,那么需要配置groupName来分组标识
+ .apiInfo(apiInfo()) // 用于生成API信息
+ .select() // select()函数返回一个ApiSelectorBuilder实例,用来控制接口被swagger做成文档
+ // 扫描指定包下的接口,最为常用
+ .apis(RequestHandlerSelectors.basePackage("com.primeton.eos.demo"))
+ // .withClassAnnotation(RestController.class) // 扫描带有指定注解的类下所有接口
+ // .withMethodAnnotation(PostMapping.class) // 扫描带有指定注解的方法接口
+ // .apis(RequestHandlerSelectors.any()) // 扫描所有
+
+ // 选择所有的API,如果你想只为部分API生成文档,可以配置这里
+ .paths(PathSelectors.any()
+ // .any() // 满足条件的路径,该断言总为true
+ // .none() // 不满足条件的路径,该断言总为false(可用于生成环境屏蔽 swagger)
+ // .ant("/user/**") // 满足字符串表达式路径
+ // .regex("") // 符合正则的路径
+ ).build();
+ }
+
+ /**
+ * 用于定义API主界面的信息,比如可以声明所有的API的总标题、描述、版本
+ *
+ * @return
+ */
+ private ApiInfo apiInfo() {
+ return new ApiInfoBuilder().title("潮州全民健康档案API") // 可以用来自定义API的主标题
+// .description("XX项目SwaggerAPI管理") // 可以用来描述整体的API
+// .termsOfServiceUrl("https://www.baidu.com") // 用于定义服务的域名(跳转链接)
+ .version("1.0") // 可以用来定义版本
+// .license("Swagger-的使用教程").licenseUrl("https://blog.csdn.net")
+ .build(); //
+ }
+}
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/controller/TestController.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/controller/TestController.java
new file mode 100644
index 0000000..19d9d60
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/controller/TestController.java
@@ -0,0 +1,68 @@
+package com.primeton.eos.demo.core.test.controller;
+
+import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants;
+import com.panshu.pojo.CommonResult;
+import com.panshu.pojo.PageResult;
+import com.panshu.util.object.BeanUtils;
+import com.primeton.eos.demo.core.test.entity.dto.TestDTO;
+import com.primeton.eos.demo.core.test.entity.vo.TestVO;
+import com.primeton.eos.demo.core.test.service.TestService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.primeton.eos.demo.core.test.entity.bo.Test;
+import com.primeton.eos.demo.core.test.entity.dto.TestPageDTO;
+
+import static com.panshu.pojo.CommonResult.success;
+
+
+/**
+ * 测试;(test)表控制层
+ *
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+@Api(tags = "测试对象功能接口")
+@RestController
+@RequestMapping("/api/test")
+public class TestController {
+ @Autowired
+ private TestService testService;
+
+ @PostMapping("/create")
+ @ApiOperation("创建测试")
+ public CommonResult create(@Valid @RequestBody TestDTO createDTO) {
+ return success(testService.create(createDTO));
+ }
+
+ @PutMapping("/update")
+ @ApiOperation("更新测试")
+ public CommonResult update(@Valid @RequestBody TestDTO updateDTO) {
+ testService.update(updateDTO);
+ return success(true);
+ }
+
+ @GetMapping("/get")
+ @ApiOperation("获得测试")
+ public CommonResult get(@RequestParam("id") Long id) {
+ Test test = testService.get(id);
+ return success(BeanUtils.toBean(test, TestVO.class));
+ }
+
+ @GetMapping("/page")
+ @ApiOperation("获得测试分页")
+ public CommonResult> getPage(@Valid TestPageDTO pageDTO) {
+ PageResult pageResult = null;
+ try {
+ pageResult = testService.getPage(pageDTO);
+ } catch (Exception e) {
+ return CommonResult.error(GlobalErrorCodeConstants.UNKNOWN.getCode(), e.getMessage());
+ }
+ return success(BeanUtils.toBean(pageResult, TestVO.class));
+ }
+
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/bo/Test.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/bo/Test.java
new file mode 100644
index 0000000..c9564a7
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/bo/Test.java
@@ -0,0 +1,27 @@
+package com.primeton.eos.demo.core.test.entity.bo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 测试;
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+@Data
+@TableName("test")
+public class Test implements Serializable{
+ /* 主键id */
+ @TableId
+ private Long id ;
+ /* 名称 */
+ private String name ;
+ /* 性别 */
+ private Integer sex ;
+ /* 创建时间 */
+ private Date createTime ;
+
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestDTO.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestDTO.java
new file mode 100644
index 0000000..4ed9b23
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestDTO.java
@@ -0,0 +1,29 @@
+package com.primeton.eos.demo.core.test.entity.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 测试;
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+@Data
+@ApiModel(value = "测试",description = "")
+public class TestDTO implements Serializable{
+ @ApiModelProperty(value = "主键id" )
+ @TableId(type=IdType.ASSIGN_ID)
+ private Long id ;
+ @ApiModelProperty(value = "名称" )
+ private String name ;
+ @ApiModelProperty(value = "性别" )
+ private Integer sex ;
+ @ApiModelProperty(value = "创建时间" )
+ private Date createTime ;
+
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestPageDTO.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestPageDTO.java
new file mode 100644
index 0000000..618cf99
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/dto/TestPageDTO.java
@@ -0,0 +1,30 @@
+package com.primeton.eos.demo.core.test.entity.dto;
+
+import com.panshu.pojo.PageParam;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 测试;
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+@Data
+@ApiModel(value = "测试",description = "")
+public class TestPageDTO extends PageParam {
+ @ApiModelProperty(value = "主键id" )
+ @TableId
+ private Long id ;
+ @ApiModelProperty(value = "名称" )
+ private String name ;
+ @ApiModelProperty(value = "性别" )
+ private Integer sex ;
+ @ApiModelProperty(value = "创建时间" )
+ private Date createTime ;
+
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/vo/TestVO.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/vo/TestVO.java
new file mode 100644
index 0000000..f278b21
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/entity/vo/TestVO.java
@@ -0,0 +1,28 @@
+package com.primeton.eos.demo.core.test.entity.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+ /**
+ * 测试;
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+@Data
+@ApiModel(value = "测试",description = "")
+public class TestVO implements Serializable{
+ @ApiModelProperty(value = "主键id" )
+ @TableId
+ private Long id ;
+ @ApiModelProperty(value = "名称" )
+ private String name ;
+ @ApiModelProperty(value = "性别" )
+ private Integer sex ;
+ @ApiModelProperty(value = "创建时间" )
+ private Date createTime ;
+
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/mapper/TestMapper.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/mapper/TestMapper.java
new file mode 100644
index 0000000..2df9983
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/mapper/TestMapper.java
@@ -0,0 +1,25 @@
+package com.primeton.eos.demo.core.test.mapper;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.panshu.pojo.PageResult;
+import com.panshu.query.BaseMapperX;
+import com.panshu.query.LambdaQueryWrapperX;
+import com.panshu.util.MyBatisUtils;
+import org.apache.ibatis.annotations.Mapper;
+import com.primeton.eos.demo.core.test.entity.bo.Test;
+import com.primeton.eos.demo.core.test.entity.dto.TestPageDTO;
+
+ /**
+ * 测试;(test)表数据库访问层
+ * @author : http://www.chiner.pro
+ * @date : 2025-4-16
+ */
+@Mapper
+public interface TestMapper extends BaseMapperX {
+ default PageResult selectPage(TestPageDTO pageDTO) {
+ IPage mpPage = MyBatisUtils.buildPage(pageDTO, null);
+ LambdaQueryWrapperX queryWrapper = new LambdaQueryWrapperX().orderByDesc(Test::getCreateTime);
+ selectPage(mpPage, queryWrapper);
+ return new PageResult<>(mpPage.getRecords(), mpPage.getTotal(), mpPage.getPages());
+ }
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/TestService.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/TestService.java
new file mode 100644
index 0000000..fea1927
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/TestService.java
@@ -0,0 +1,44 @@
+package com.primeton.eos.demo.core.test.service;
+
+import javax.validation.Valid;
+
+import com.panshu.pojo.PageResult;
+import com.primeton.eos.demo.core.test.entity.bo.Test;
+import com.primeton.eos.demo.core.test.entity.dto.TestDTO;
+import com.primeton.eos.demo.core.test.entity.dto.TestPageDTO;
+
+ /**
+ * 测试;(test)表服务接口
+ * @author : Mr.xiao
+ * @date : 2025-4-16
+ */
+public interface TestService{
+
+ /**
+ * 创建测试
+ *
+ * @param createDTO 创建信息
+ * @return 编号
+ */
+ Long create(@Valid TestDTO createDTO);
+ /**
+ * 更新测试
+ *
+ * @param updateDTO 更新信息
+ */
+ void update(@Valid TestDTO updateDTO);
+ /**
+ * 获得测试
+ *
+ * @param id 编号
+ * @return 测试
+ */
+ Test get(Long id);
+ /**
+ * 获得测试分页
+ *
+ * @param pageDTO 分页查询
+ * @return 测试分页
+ */
+ PageResult getPage(TestPageDTO pageDTO) throws Exception;
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/impl/TestServiceImpl.java b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/impl/TestServiceImpl.java
new file mode 100644
index 0000000..56a5320
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/service/impl/TestServiceImpl.java
@@ -0,0 +1,70 @@
+package com.primeton.eos.demo.core.test.service.impl;
+
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
+import com.panshu.storage.core.FileTemplate;
+import com.panshu.util.object.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.stereotype.Service;
+import com.panshu.pojo.PageResult;
+import com.primeton.eos.demo.core.test.entity.bo.Test;
+import com.primeton.eos.demo.core.test.entity.dto.TestDTO;
+import com.primeton.eos.demo.core.test.entity.dto.TestPageDTO;
+import com.primeton.eos.demo.core.test.mapper.TestMapper;
+import com.primeton.eos.demo.core.test.service.TestService;
+
+import javax.annotation.Resource;
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * 测试;(test)表服务实现类
+ *
+ * @author : http://www.chiner.pro
+ * @date : 2025-4-16
+ */
+@Service
+public class TestServiceImpl implements TestService {
+ @Autowired
+ private TestMapper testMapper;
+ @Autowired
+ private FileTemplate fileTemplate;
+ @Resource
+ private StringRedisTemplate stringRedisTemplate;
+
+ @Override
+ public Long create(TestDTO createDTO) {
+ Test test = BeanUtils.toBean(createDTO, Test.class);
+ testMapper.insert(test);
+ return test.getId();
+ }
+
+ @Override
+ public void update(TestDTO updateDTO) {
+ Test test = BeanUtils.toBean(updateDTO, Test.class);
+ testMapper.updateById(test);
+ }
+
+
+ @Override
+ public Test get(Long id) {
+ String value = stringRedisTemplate.opsForValue().get("ps:test:" + id);
+ if (StrUtil.isNotBlank(value)) {
+ return JsonUtils.parseObject(value, Test.class);
+ }
+ Test test = testMapper.selectById(id);
+ stringRedisTemplate.opsForValue().set("ps:test:" + id, JsonUtils.toJsonString(test), 3600, TimeUnit.SECONDS);
+ return test;
+ }
+
+
+ @Override
+ public PageResult getPage(TestPageDTO pageDTO) throws Exception {
+ BufferedInputStream in = FileUtil.getInputStream("c:/home/test.txt");
+ fileTemplate.putObject("aa", "bb.txt", in);
+ return testMapper.selectPage(pageDTO);
+ }
+}
\ No newline at end of file
diff --git a/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/test_ddl.sql b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/test_ddl.sql
new file mode 100644
index 0000000..2bd45d4
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/com/primeton/eos/demo/core/test/test_ddl.sql
@@ -0,0 +1,8 @@
+DROP TABLE IF EXISTS test;
+CREATE TABLE test(
+ `id` bigint NOT NULL COMMENT '主键id' ,
+ `name` VARCHAR(90) COMMENT '名称' ,
+ `sex` tinyint(1) COMMENT '性别' ,
+ `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP() COMMENT '创建时间' ,
+ PRIMARY KEY (id)
+) COMMENT = '测试';
diff --git a/com.primeton.eos.demo.core/src/mybatis-mapper/TestMapper.xml b/com.primeton.eos.demo.core/src/mybatis-mapper/TestMapper.xml
new file mode 100644
index 0000000..f73ce48
--- /dev/null
+++ b/com.primeton.eos.demo.core/src/mybatis-mapper/TestMapper.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.model/pom.xml b/com.primeton.eos.demo.model/pom.xml
new file mode 100644
index 0000000..988d7f6
--- /dev/null
+++ b/com.primeton.eos.demo.model/pom.xml
@@ -0,0 +1,46 @@
+
+ 4.0.0
+
+ com.primeton.eos
+ demo
+ 1.0.0
+ ../
+
+ com.primeton.eos.demo.model
+ com.primeton.eos.demo.model
+
+ src
+
+
+ com.primeton.eos.maven.plugin
+ eos-ptp-maven-plugin
+
+
+ merge-sql
+ prepare-package
+
+ filesmerge
+
+
+ ${basedir}/target/classes/META-INF/db-scripts
+ all.sql
+ UTF-8
+ true
+
+ **/*.sql
+
+
+
+
+
+
+ maven-jar-plugin
+
+
+ src/META-INF/MANIFEST.MF
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.model/src/META-INF/MANIFEST.MF b/com.primeton.eos.demo.model/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..eb9539f
--- /dev/null
+++ b/com.primeton.eos.demo.model/src/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-SymbolicName: com.primeton.eos.demo.model
+Bundle-Name: com.primeton.eos.demo.model
+Bundle-Version: 1.0.0
+Bundle-Vendor: 40108
+Require-Bundle:
+eos-webCtxPath: eos
+Bundle-Description:
+
diff --git a/com.primeton.eos.demo.model/src/META-INF/contribution.eosinf b/com.primeton.eos.demo.model/src/META-INF/contribution.eosinf
new file mode 100644
index 0000000..f630764
--- /dev/null
+++ b/com.primeton.eos.demo.model/src/META-INF/contribution.eosinf
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ config
+ com.eos.system.management.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+
+
+
+
+
+ default
+
+
+
diff --git a/com.primeton.eos.demo.model/src/META-INF/db-scripts/Mysql/00-table.sql b/com.primeton.eos.demo.model/src/META-INF/db-scripts/Mysql/00-table.sql
new file mode 100644
index 0000000..e69de29
diff --git a/com.primeton.eos.demo.model/src/META-INF/db-scripts/Mysql/01-data.sql b/com.primeton.eos.demo.model/src/META-INF/db-scripts/Mysql/01-data.sql
new file mode 100644
index 0000000..e69de29
diff --git a/com.primeton.eos.demo.model/src/META-INF/handler-contribution.xml b/com.primeton.eos.demo.model/src/META-INF/handler-contribution.xml
new file mode 100644
index 0000000..9c13485
--- /dev/null
+++ b/com.primeton.eos.demo.model/src/META-INF/handler-contribution.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/com.primeton.eos.demo.model/src/META-INF/resources/exception/exception.properties b/com.primeton.eos.demo.model/src/META-INF/resources/exception/exception.properties
new file mode 100644
index 0000000..e1942e8
--- /dev/null
+++ b/com.primeton.eos.demo.model/src/META-INF/resources/exception/exception.properties
@@ -0,0 +1,6 @@
+#exception properties resource file.
+#content format:
+# code=message
+#for example:
+# 100001=It occur when [{0}] execute.
+
diff --git a/com.primeton.eos.demo.model/src/META-INF/resources/i18n/i18n.properties b/com.primeton.eos.demo.model/src/META-INF/resources/i18n/i18n.properties
new file mode 100644
index 0000000..691d4fa
--- /dev/null
+++ b/com.primeton.eos.demo.model/src/META-INF/resources/i18n/i18n.properties
@@ -0,0 +1,6 @@
+#I18N properties resource file.
+#content format:
+# code=message
+#for example:
+# 10000=name
+
diff --git a/com.primeton.eos.demo.starter/pom.xml b/com.primeton.eos.demo.starter/pom.xml
new file mode 100644
index 0000000..5557ca8
--- /dev/null
+++ b/com.primeton.eos.demo.starter/pom.xml
@@ -0,0 +1,41 @@
+
+ 4.0.0
+
+ com.primeton.eos
+ demo
+ 1.0.0
+ ../
+
+ com.primeton.eos.demo.starter
+ com.primeton.eos.demo.starter
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.model
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.api
+ 1.0.0
+
+
+ com.primeton.eos
+ com.primeton.eos.demo.core
+ 1.0.0
+
+
+
+ src
+
+
+ maven-jar-plugin
+
+
+ src/META-INF/MANIFEST.MF
+
+
+
+
+
+
\ No newline at end of file
diff --git a/com.primeton.eos.demo.starter/src/META-INF/MANIFEST.MF b/com.primeton.eos.demo.starter/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0a2f84f
--- /dev/null
+++ b/com.primeton.eos.demo.starter/src/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-SymbolicName: com.primeton.eos.demo.starter
+Bundle-Name: com.primeton.eos.demo.starter
+Bundle-Version: 1.0.0
+Bundle-Vendor: 40108
+Require-Bundle:
+eos-webCtxPath: eos
+Bundle-Description:
+
diff --git a/com.primeton.eos.demo.starter/src/META-INF/contribution.eosinf b/com.primeton.eos.demo.starter/src/META-INF/contribution.eosinf
new file mode 100644
index 0000000..f630764
--- /dev/null
+++ b/com.primeton.eos.demo.starter/src/META-INF/contribution.eosinf
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ config
+ com.eos.system.management.config.mbean.Config
+ com.eos.common.connection.mbean.ContributionDataSourceConfigHandler
+ config
+
+
+
+
+
+
+
+
+ default
+
+
+
diff --git a/com.primeton.eos.demo.starter/src/META-INF/handler-contribution.xml b/com.primeton.eos.demo.starter/src/META-INF/handler-contribution.xml
new file mode 100644
index 0000000..9c13485
--- /dev/null
+++ b/com.primeton.eos.demo.starter/src/META-INF/handler-contribution.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/com.primeton.eos.demo.starter/src/META-INF/resources/exception/exception.properties b/com.primeton.eos.demo.starter/src/META-INF/resources/exception/exception.properties
new file mode 100644
index 0000000..e1942e8
--- /dev/null
+++ b/com.primeton.eos.demo.starter/src/META-INF/resources/exception/exception.properties
@@ -0,0 +1,6 @@
+#exception properties resource file.
+#content format:
+# code=message
+#for example:
+# 100001=It occur when [{0}] execute.
+
diff --git a/com.primeton.eos.demo.starter/src/META-INF/resources/i18n/i18n.properties b/com.primeton.eos.demo.starter/src/META-INF/resources/i18n/i18n.properties
new file mode 100644
index 0000000..691d4fa
--- /dev/null
+++ b/com.primeton.eos.demo.starter/src/META-INF/resources/i18n/i18n.properties
@@ -0,0 +1,6 @@
+#I18N properties resource file.
+#content format:
+# code=message
+#for example:
+# 10000=name
+
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..31e7f2d
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,147 @@
+
+ 4.0.0
+
+ com.primeton.eos
+ eos-pom
+ 8.3.0
+
+
+ com.primeton.eos
+ demo
+ 站内消息服务
+ 1.0.0
+ pom
+
+
+ com.primeton.eos.demo.model
+ com.primeton.eos.demo.api
+ com.primeton.eos.demo.starter
+ com.primeton.eos.demo.core
+ com.primeton.eos.demo.boot
+
+
+ 8.3.0
+ 8.3.0
+ 8.3.0
+ 8.3.0
+ 8.3.0
+ 1.0.0
+ 1.0.0
+ 2.4.1-RELEASE
+
+
+
+ com.primeton.eos
+ eos-server-starter
+
+
+ com.primeton.eos.extension
+ com.primeton.eos.foundation
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.framework.starter
+
+
+ com.primeton.gocom
+ com.primeton.gocom.afcenter.sdk
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.message.sdk
+
+
+
+
+
+
+ com.primeton.eos.extension
+ com.primeton.eos.foundation
+ ${eos.version}
+
+
+ com.primeton.eos
+ eos-server-starter
+ ${eos.version}
+
+
+ com.primeton.bps
+ bps-server-starter
+ ${bps.version}
+
+
+ com.primeton.gocom
+ com.primeton.gocom.afcenter.starter
+ ${afcenter.version}
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.framework.starter
+ ${bfp.version}
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.center.starter
+ ${bfp.version}
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.message.starter
+ ${bfp.version}
+
+
+ com.primeton.gocom
+ com.primeton.gocom.lowcode.starter
+ ${lowcode.version}
+
+
+ com.primeton.gocom
+ com.primeton.gocom.afcenter.sdk
+ ${afcenter.version}
+
+
+ com.primeton.gocom.bfp
+ com.primeton.gocom.bfp.message.sdk
+ ${bfp.version}
+
+
+ com.primeton.gocom
+ com.primeton.gocom.afcenter.bps.om
+ ${afcenter.version}
+
+
+ com.panshu
+ ps-eos-common
+ ${ps-eos-common.version}
+
+
+ com.panshu
+ ps-spring-boot-starter-storage
+ ${ps-storage.version}
+
+
+ cn.iocoder.boot
+ yudao-spring-boot-starter-redis
+ ${yudao-ps.version}
+
+
+
+
+
+
+
+ com.primeton.studio.maven.plugin.eos
+ eos-contribution-maven-plugin
+
+
+ compile
+
+ eoscompile
+
+
+
+
+
+
+