From 6360aee0ffc4b1789abd11c89aa25fcb11829573 Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Mon, 18 Mar 2024 09:25:51 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E3=80=90QQYUN-8561=E3=80=91=E4=BC=81?= =?UTF-8?q?=E4=B8=9A=E5=BE=AE=E4=BF=A1=E7=99=BB=E9=99=86=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=AE=BE=E7=BD=AE=E4=B8=8A=E4=B8=8B=E6=96=87?= =?UTF-8?q?=E4=B8=8D=E4=B8=80=E8=87=B4=EF=BC=8C=E5=AF=BC=E8=87=B4=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3404?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/jeecg/common/util/CommonUtils.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/CommonUtils.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/CommonUtils.java index b99df5f2..9294a5c2 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/CommonUtils.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/CommonUtils.java @@ -348,8 +348,11 @@ public class CommonUtils { //返回 host domain String baseDomainPath = null; - int length = 80; - if(length == serverPort){ + //update-begin---author:wangshuai---date:2024-03-15---for:【QQYUN-8561】企业微信登陆请求接口设置上下文不一致,导致接口404--- + int httpPort = 80; + int httpsPort = 443; + if(httpPort == serverPort || httpsPort == serverPort){ + //update-end---author:wangshuai---date:2024-03-15---for:【QQYUN-8561】企业微信登陆请求接口设置上下文不一致,导致接口404---~ baseDomainPath = scheme + "://" + serverName + contextPath ; }else{ baseDomainPath = scheme + "://" + serverName + ":" + serverPort + contextPath ; From 990f79fdfe0a41c443fa2d0028b511d43e59afc5 Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Mon, 18 Mar 2024 09:27:54 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E8=B0=83=E6=95=B4flyway=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=EF=BC=8C=E6=A3=80=E6=9F=A5=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E5=8F=AA=E6=9C=89mysql=E6=89=8D=E5=90=AF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jeecg-system-start/pom.xml | 3 +- .../org/jeecg/config/flyway/FlywayConfig.java | 136 ++++++++++++++++++ .../src/main/resources/application-dev.yml | 6 +- .../src/main/resources/application-prod.yml | 4 +- .../src/main/resources/application-test.yml | 4 +- 5 files changed, 147 insertions(+), 6 deletions(-) create mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/config/flyway/FlywayConfig.java diff --git a/jeecg-module-system/jeecg-system-start/pom.xml b/jeecg-module-system/jeecg-system-start/pom.xml index f04e8794..3499e865 100644 --- a/jeecg-module-system/jeecg-system-start/pom.xml +++ b/jeecg-module-system/jeecg-system-start/pom.xml @@ -43,11 +43,10 @@ ${dm8.version} - + org.flywaydb flyway-core - 7.15.0 diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/config/flyway/FlywayConfig.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/config/flyway/FlywayConfig.java new file mode 100644 index 00000000..adc8e86d --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/config/flyway/FlywayConfig.java @@ -0,0 +1,136 @@ +package org.jeecg.config.flyway; + +import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; +import lombok.extern.slf4j.Slf4j; +import org.flywaydb.core.Flyway; +import org.flywaydb.core.api.FlywayException; +import org.springframework.beans.factory.annotation.Autowired; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; + +import javax.sql.DataSource; +import java.util.Map; + +/** +* @Description: 初始化flyway配置 修改之后支持多数据源,当出现异常时打印日志,不影响项目启动 +* +* @author: wangshuai +* @date: 2024/3/12 10:03 +*/ +@Slf4j +@Configuration +public class FlywayConfig { + + @Autowired + private DataSource dataSource; + + @Autowired + private Environment environment; + + /** + * 是否开启flyway + */ + @Value("${spring.flyway.enabled:false}") + private Boolean enabled; + + /** + * 编码格式,默认UTF-8 + */ + @Value("${spring.flyway.encoding:UTF-8}") + private String encoding; + + /** + * 迁移sql脚本文件存放路径,官方默认db/migration + */ + @Value("${spring.flyway.locations:}") + private String locations; + + /** + * 迁移sql脚本文件名称的前缀,默认V + */ + @Value("${spring.flyway.sql-migration-prefix:V}") + private String sqlMigrationPrefix; + + /** + * 迁移sql脚本文件名称的分隔符,默认2个下划线__ + */ + @Value("${spring.flyway.sql-migration-separator:__}") + private String sqlMigrationSeparator; + + /** + * 文本前缀 + */ + @Value("${spring.flyway.placeholder-prefix:#(}") + private String placeholderPrefix; + + /** + * 文本后缀 + */ + @Value("${spring.flyway.placeholder-suffix:)}") + private String placeholderSuffix; + + /** + * 迁移sql脚本文件名称的后缀 + */ + @Value("${spring.flyway.sql-migration-suffixes:.sql}") + private String sqlMigrationSuffixes; + + /** + * 迁移时是否进行校验,默认true + */ + @Value("${spring.flyway.validate-on-migrate:true}") + private Boolean validateOnMigrate; + + /** + * 当迁移发现数据库非空且存在没有元数据的表时,自动执行基准迁移,新建schema_version表 + */ + @Value("${spring.flyway.baseline-on-migrate:true}") + private Boolean baselineOnMigrate; + + /** + * 是否关闭要清除已有库下的表功能,生产环境必须为true,否则会删库,非常重要!!! + */ + @Value("${spring.flyway.clean-disabled:true}") + private Boolean cleanDisabled; + + @Bean + public void migrate() { + if(!enabled){ + return; + } + + DynamicRoutingDataSource ds = (DynamicRoutingDataSource) dataSource; + Map dataSources = ds.getDataSources(); + dataSources.forEach((k, v) -> { + if("master".equals(k)){ + String databaseType = environment.getProperty("spring.datasource.dynamic.datasource." + k + ".url"); + if (databaseType != null && databaseType.contains("mysql")) { + try { + Flyway flyway = Flyway.configure() + .dataSource(v) + .locations(locations) + .encoding(encoding) + .sqlMigrationPrefix(sqlMigrationPrefix) + .sqlMigrationSeparator(sqlMigrationSeparator) + .placeholderPrefix(placeholderPrefix) + .placeholderSuffix(placeholderSuffix) + .sqlMigrationSuffixes(sqlMigrationSuffixes) + .validateOnMigrate(validateOnMigrate) + .baselineOnMigrate(baselineOnMigrate) + .cleanDisabled(cleanDisabled) + .load(); + flyway.migrate(); + log.info("【升级提示】平台集成了MySQL库的Flyway,数据库版本自动升级! "); + } catch (FlywayException e) { + log.error("【升级提示】flyway执行sql脚本失败", e); + } + } else { + log.warn("【升级提示】平台只集成了MySQL库的Flyway,实现了数据库版本自动升级! 其他类型的数据库,您可以考虑手工升级~"); + } + } + }); + } +} \ No newline at end of file diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml index 783ec60a..3acf0b05 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml @@ -118,7 +118,9 @@ spring: resource: static-locations: classpath:/static/,classpath:/public/ autoconfigure: - exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + exclude: + - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + - org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration datasource: druid: stat-view-servlet: @@ -261,7 +263,7 @@ jeecg: password: type: STANDALONE enabled: true - # ChartGPT对接配置 + # ai-chat ai-chat: # 是否开启;必须。 enabled: false diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml index 720c4437..0003ed03 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml @@ -118,7 +118,9 @@ spring: resource: static-locations: classpath:/static/,classpath:/public/ autoconfigure: - exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + exclude: + - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + - org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration datasource: druid: stat-view-servlet: diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml index 9aa6f4e1..29970031 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml @@ -118,7 +118,9 @@ spring: resource: static-locations: classpath:/static/,classpath:/public/ autoconfigure: - exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + exclude: + - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure + - org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration datasource: druid: stat-view-servlet: From 10a3e9c6ba7e490af46b4ec177cc7795fda197a4 Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Mon, 18 Mar 2024 10:11:05 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=8D=87=E7=BA=A7knife4j=E3=80=81mybatispl?= =?UTF-8?q?us=E3=80=81justauth=E3=80=81minidao=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jeecg-boot-base-core/pom.xml | 9 ++- .../sqlInjection/parse/ConstAnalyzer.java | 68 +++++-------------- .../java/org/jeecg/config/Swagger2Config.java | 10 +-- .../jeecg-cloud-gateway/pom.xml | 7 +- pom.xml | 32 +++++++-- 5 files changed, 60 insertions(+), 66 deletions(-) diff --git a/jeecg-boot-base-core/pom.xml b/jeecg-boot-base-core/pom.xml index 168dd94f..54498efd 100644 --- a/jeecg-boot-base-core/pom.xml +++ b/jeecg-boot-base-core/pom.xml @@ -82,7 +82,7 @@ commons-io commons-io - ${commons.version} + ${commons-io.version} commons-lang @@ -183,9 +183,14 @@ - + + + com.github.xiaoymin + knife4j-openapi2-spring-boot-starter ${knife4j-spring-boot-starter.version} diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java index 7ec118e2..9b7345c0 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java @@ -1,55 +1,6 @@ package org.jeecg.common.util.sqlInjection.parse; -import net.sf.jsqlparser.expression.AllValue; -import net.sf.jsqlparser.expression.AnalyticExpression; -import net.sf.jsqlparser.expression.AnyComparisonExpression; -import net.sf.jsqlparser.expression.ArrayConstructor; -import net.sf.jsqlparser.expression.ArrayExpression; -import net.sf.jsqlparser.expression.BinaryExpression; -import net.sf.jsqlparser.expression.CaseExpression; -import net.sf.jsqlparser.expression.CastExpression; -import net.sf.jsqlparser.expression.CollateExpression; -import net.sf.jsqlparser.expression.ConnectByRootOperator; -import net.sf.jsqlparser.expression.DateTimeLiteralExpression; -import net.sf.jsqlparser.expression.DateValue; -import net.sf.jsqlparser.expression.DoubleValue; -import net.sf.jsqlparser.expression.Expression; -import net.sf.jsqlparser.expression.ExpressionVisitor; -import net.sf.jsqlparser.expression.ExtractExpression; -import net.sf.jsqlparser.expression.Function; -import net.sf.jsqlparser.expression.HexValue; -import net.sf.jsqlparser.expression.IntervalExpression; -import net.sf.jsqlparser.expression.JdbcNamedParameter; -import net.sf.jsqlparser.expression.JdbcParameter; -import net.sf.jsqlparser.expression.JsonAggregateFunction; -import net.sf.jsqlparser.expression.JsonExpression; -import net.sf.jsqlparser.expression.JsonFunction; -import net.sf.jsqlparser.expression.JsonFunctionExpression; -import net.sf.jsqlparser.expression.KeepExpression; -import net.sf.jsqlparser.expression.LongValue; -import net.sf.jsqlparser.expression.MySQLGroupConcat; -import net.sf.jsqlparser.expression.NextValExpression; -import net.sf.jsqlparser.expression.NotExpression; -import net.sf.jsqlparser.expression.NullValue; -import net.sf.jsqlparser.expression.NumericBind; -import net.sf.jsqlparser.expression.OracleHierarchicalExpression; -import net.sf.jsqlparser.expression.OracleHint; -import net.sf.jsqlparser.expression.OracleNamedFunctionParameter; -import net.sf.jsqlparser.expression.Parenthesis; -import net.sf.jsqlparser.expression.RowConstructor; -import net.sf.jsqlparser.expression.RowGetExpression; -import net.sf.jsqlparser.expression.SignedExpression; -import net.sf.jsqlparser.expression.StringValue; -import net.sf.jsqlparser.expression.TimeKeyExpression; -import net.sf.jsqlparser.expression.TimeValue; -import net.sf.jsqlparser.expression.TimestampValue; -import net.sf.jsqlparser.expression.TimezoneExpression; -import net.sf.jsqlparser.expression.TryCastExpression; -import net.sf.jsqlparser.expression.UserVariable; -import net.sf.jsqlparser.expression.ValueListExpression; -import net.sf.jsqlparser.expression.VariableAssignment; -import net.sf.jsqlparser.expression.WhenClause; -import net.sf.jsqlparser.expression.XMLSerializeExpr; +import net.sf.jsqlparser.expression.*; import net.sf.jsqlparser.expression.operators.arithmetic.Addition; import net.sf.jsqlparser.expression.operators.arithmetic.BitwiseAnd; import net.sf.jsqlparser.expression.operators.arithmetic.BitwiseLeftShift; @@ -215,6 +166,23 @@ public class ConstAnalyzer implements ExpressionVisitor, ItemsListVisitor { expr.getBetweenExpressionEnd().accept(this); } + /** + * 用于处理 OverlapsCondition 类型的表达式 + * @param overlapsCondition + */ + @Override + public void visit(OverlapsCondition overlapsCondition) { + constFlag.set(false); + } + /** + * 用于处理 SafeCastExpression 类型的表达式。 + * @param safeCastExpression + */ + @Override + public void visit(SafeCastExpression safeCastExpression) { + constFlag.set(false); + } + @Override public void visit(EqualsTo expr) { visitBinaryExpression(expr); diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger2Config.java b/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger2Config.java index 92e962e1..5723f1be 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger2Config.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger2Config.java @@ -1,7 +1,6 @@ package org.jeecg.config; -import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j; import io.swagger.annotations.ApiOperation; import org.jeecg.common.constant.CommonConstant; import org.springframework.beans.BeansException; @@ -19,15 +18,13 @@ import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.ParameterBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; -import springfox.documentation.oas.annotations.EnableOpenApi; import springfox.documentation.schema.ModelRef; import springfox.documentation.service.*; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spi.service.contexts.SecurityContext; import springfox.documentation.spring.web.plugins.Docket; -import springfox.documentation.spring.web.plugins.WebFluxRequestHandlerProvider; import springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider; -import springfox.documentation.swagger2.annotations.EnableSwagger2; +import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc; import java.lang.reflect.Field; import java.util.ArrayList; @@ -39,8 +36,7 @@ import java.util.stream.Collectors; * @Author scott */ @Configuration -@EnableSwagger2 //开启 Swagger2 -@EnableKnife4j //开启 knife4j,可以不写 +@EnableSwagger2WebMvc @Import(BeanValidatorPluginsConfiguration.class) public class Swagger2Config implements WebMvcConfigurer { @@ -152,7 +148,7 @@ public class Swagger2Config implements WebMvcConfigurer { @Override public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { - if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) { + if (bean instanceof WebMvcRequestHandlerProvider) { customizeSpringfoxHandlerMappings(getHandlerMappings(bean)); } return bean; diff --git a/jeecg-server-cloud/jeecg-cloud-gateway/pom.xml b/jeecg-server-cloud/jeecg-cloud-gateway/pom.xml index 48ec3b01..38398678 100644 --- a/jeecg-server-cloud/jeecg-cloud-gateway/pom.xml +++ b/jeecg-server-cloud/jeecg-cloud-gateway/pom.xml @@ -73,9 +73,14 @@ com.github.xiaoymin - knife4j-spring-boot-starter + knife4j-openapi2-spring-boot-starter ${knife4j-spring-boot-starter.version} + + org.apache.commons + commons-lang3 + 3.12.0 + diff --git a/pom.xml b/pom.xml index 93b3f7e7..cd884945 100644 --- a/pom.xml +++ b/pom.xml @@ -40,8 +40,7 @@ 2.2.0 1.2.83 1.6.0 - 3.0.3 - 2.0.9 + 4.4.0 42.2.25 11.2.0.3 @@ -52,13 +51,14 @@ 8.1.1.49 - 3.5.3.1 + 3.5.5 4.1.3 1.2.19 - 1.9.5 + 1.9.7 1.7.2-beta + 2.11.0 2.6 2.1.0 3.11.2 @@ -69,7 +69,7 @@ 1.4.6 1.4.7 8.0.3 - 1.3.4 + 1.4.0 1.6.1 7.4.0 @@ -365,6 +365,18 @@ commons-lang commons-lang + + commons-collections + commons-collections + + + commons-logging + commons-logging + + + commons-io + commons-io + @@ -394,7 +406,15 @@ org.jeecgframework.boot jeecg-boot-starter-chatgpt - ${jeecgboot.version} + ${jeecgboot.version} + + + + + + org.flywaydb + flyway-core + 7.15.0 From fee729e16c3aed48baefc5d509f94b4edab32d7b Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Mon, 18 Mar 2024 14:06:09 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E3=80=90=E5=9B=9E=E6=BB=9A=E3=80=91?= =?UTF-8?q?=E6=9A=82=E6=97=B6=E5=9B=9E=E9=80=80mybatisplus=E3=80=81minidao?= =?UTF-8?q?=E7=89=88=E6=9C=AC=EF=BC=8Conline=E6=A8=A1=E5=9D=97=E4=B8=8D?= =?UTF-8?q?=E5=85=BC=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sqlInjection/parse/ConstAnalyzer.java | 32 +++++++++---------- pom.xml | 4 +-- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java index 9b7345c0..50551e40 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/sqlInjection/parse/ConstAnalyzer.java @@ -166,22 +166,22 @@ public class ConstAnalyzer implements ExpressionVisitor, ItemsListVisitor { expr.getBetweenExpressionEnd().accept(this); } - /** - * 用于处理 OverlapsCondition 类型的表达式 - * @param overlapsCondition - */ - @Override - public void visit(OverlapsCondition overlapsCondition) { - constFlag.set(false); - } - /** - * 用于处理 SafeCastExpression 类型的表达式。 - * @param safeCastExpression - */ - @Override - public void visit(SafeCastExpression safeCastExpression) { - constFlag.set(false); - } +// /** +// * 用于处理 OverlapsCondition 类型的表达式 +// * @param overlapsCondition +// */ +// @Override +// public void visit(OverlapsCondition overlapsCondition) { +// constFlag.set(false); +// } +// /** +// * 用于处理 SafeCastExpression 类型的表达式。 +// * @param safeCastExpression +// */ +// @Override +// public void visit(SafeCastExpression safeCastExpression) { +// constFlag.set(false); +// } @Override public void visit(EqualsTo expr) { diff --git a/pom.xml b/pom.xml index cd884945..9212862d 100644 --- a/pom.xml +++ b/pom.xml @@ -51,10 +51,10 @@ 8.1.1.49 - 3.5.5 + 3.5.3.1 4.1.3 1.2.19 - 1.9.7 + 1.9.6 1.7.2-beta From 9fd40d097359e700915a9095e76a951e806bf02b Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Wed, 20 Mar 2024 10:07:54 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=99=A8jar=E5=8C=85=E4=B8=AD=E6=90=BA=E5=B8=A6=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6=E5=AF=BC=E8=87=B4=20spring.profiles?= =?UTF-8?q?.active=20=E8=A2=AB=E8=A6=86=E7=9B=96=20#6010?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9212862d..90d46a27 100644 --- a/pom.xml +++ b/pom.xml @@ -66,7 +66,7 @@ 1.12.0 3.11.0 3.2.2 - 1.4.6 + 1.4.7 1.4.7 8.0.3 1.4.0 From 58865bef282144f9b847d8de03591dfc123ad993 Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Wed, 20 Mar 2024 22:59:27 +0800 Subject: [PATCH 6/7] =?UTF-8?q?jimureport-drag:2.0.1=20=E6=8A=A5=E9=94=99?= =?UTF-8?q?=20java.lang.IllegalStateException:=20No=20TaglibFactory=20avai?= =?UTF-8?q?lable=20#6021?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/jeecg/config/shiro/ShiroConfig.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index 509614c9..9aed1bb7 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java @@ -177,13 +177,13 @@ public class ShiroConfig { // 企业微信证书排除 filterChainDefinitionMap.put("/WW_verify*", "anon"); - // 通过注解免登录url - List ignoreAuthUrlList = collectIgnoreAuthUrl(ctx); - if (!CollectionUtils.isEmpty(ignoreAuthUrlList)) { - for (String url : ignoreAuthUrlList) { - filterChainDefinitionMap.put(url, "anon"); - } - } +// // 通过注解免登录url +// List ignoreAuthUrlList = collectIgnoreAuthUrl(ctx); +// if (!CollectionUtils.isEmpty(ignoreAuthUrlList)) { +// for (String url : ignoreAuthUrlList) { +// filterChainDefinitionMap.put(url, "anon"); +// } +// } // 添加自己的过滤器并且取名为jwt Map filterMap = new HashMap(1); From 80b92ca1322f7fa3102bee327dcb8a96e785bb6a Mon Sep 17 00:00:00 2001 From: JEECG <445654970@qq.com> Date: Fri, 22 Mar 2024 16:22:48 +0800 Subject: [PATCH 7/7] =?UTF-8?q?flowable=E3=80=81activiti=E9=83=BD=E6=94=AF?= =?UTF-8?q?=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e666cf33..10bdedbc 100644 --- a/README.md +++ b/README.md @@ -196,8 +196,8 @@ Star走势图 * 17.支持SAAS服务模式,提供SaaS多租户架构方案。 * 18.分布式文件服务,集成minio、阿里OSS等优秀的第三方,提供便捷的文件上传与管理,同时也支持本地存储。 * 19.主流数据库兼容,一套代码完全兼容Mysql、Postgresql、Oracle、Sqlserver、MariaDB、达梦等主流数据库。 -* 20.集成工作流activiti、flowable,并实现了只需在页面配置流程转向,可极大的简化bpm工作流的开发;用bpm的流程设计器画出了流程走向,一个工作流基本就完成了,只需写很少量的java代码; -* 21.低代码能力:在线流程设计,采用开源Activiti流程引擎,实现在线画流程,自定义表单,表单挂靠,业务流转 +* 20.集成工作流flowable、activiti,并实现了只需在页面配置流程转向,可极大的简化bpm工作流的开发;用bpm的流程设计器画出了流程走向,一个工作流基本就完成了,只需写很少量的java代码; +* 21.低代码能力:在线流程设计,采用开源flowable、activiti流程引擎,实现在线画流程,自定义表单,表单挂靠,业务流转 * 22.多数据源:及其简易的使用方式,在线配置数据源配置,便捷的从其他数据抓取数据; * 23.提供单点登录CAS集成方案,项目中已经提供完善的对接代码 * 24.低代码能力:表单设计器,支持用户自定义表单布局,支持单表,一对多表单、支持select、radio、checkbox、textarea、date、popup、列表、宏等控件