muxiangqiu / bdf3 Goto Github PK
View Code? Open in Web Editor NEWBDF3 是基于 Spring Boot 组件化的渐进式企业级开发框架。
License: Apache License 2.0
BDF3 是基于 Spring Boot 组件化的渐进式企业级开发框架。
License: Apache License 2.0
同spring boot一样.spring cloud需要自己的parent定义,而maven不能同时有多个parent定义
<parent> <groupId>com.bstek.bdf3</groupId> <artifactId>bdf3-starter-parent</artifactId> <version>0.0.1-SNAPSHOT</version> </parent>
在BDF3框架中如何整合Echarts环境,麻烦提供案例参考
先感谢一下锐道的各位大神,从各位大神的代码中我学到了无数的知识.让我成功的从一个混饭吃的成长为一个能养家糊口的汉子.
一直想和你们谈谈我最近工作,我觉得能给你们更多启发,让我们这些程序员更受益
最近换了一家公司,公司引进了一种新的开发模式.能够让产品经理在界面简单配置就能完成产品原型(从需求角度出发而不是技术),开发的主力从程序员变成了需求人员甚至是实习生,一般的项目,他们能完成80%以上的开发工作,而我们开发人员的开发工作变成了实现他们按钮上需要实现的逻辑就好了.所以一个项目组的配置变成了:一个产品经理+2-4个需求人员+1个开发+2-4个实习生,效率就不说了,我们一个陆陆续续达到10人的技术团队在半年内同时完成了10个项目的研发.
当然这个框架唯一让我吐槽的就是他们的技术框架太落后,还是jsp时代产物,连事物管理都没有.
产品思路参考下图,模板的地位比较重要
如题
这个工程是不是无法和uflo2集成了,注入uflo需要的sessionfactory就会启动失败。
以下是错误详情:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'uflo.instanceDetection' defined in class path resource [uflo-context-configs.xml]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Already value [org.springframework.orm.jpa.EntityManagerHolder@407985b8] for key [org.hibernate.internal.SessionFactoryImpl@52063be6] bound to thread [restartedMain]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1710) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:583) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:502) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:312) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:868) ~[spring-context-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) ~[spring-context-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) ~[spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) [spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:388) [spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) [spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1246) [spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1234) [spring-boot-2.0.0.RELEASE.jar:2.0.0.RELEASE]
at com.hthj.starvastweb.StarvastWebApplication.main(StarvastWebApplication.java:14) [classes/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_144]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_144]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_144]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_144]
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.0.0.RELEASE.jar:2.0.0.RELEASE]
Caused by: java.lang.IllegalStateException: Already value [org.springframework.orm.jpa.EntityManagerHolder@407985b8] for key [org.hibernate.internal.SessionFactoryImpl@52063be6] bound to thread [restartedMain]
at org.springframework.transaction.support.TransactionSynchronizationManager.bindResource(TransactionSynchronizationManager.java:193) ~[spring-tx-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.orm.hibernate5.SpringSessionContext.currentSession(SpringSessionContext.java:131) ~[spring-orm-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.hibernate.internal.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:464) ~[hibernate-core-5.2.14.Final.jar:5.2.14.Final]
at com.bstek.uflo.env.impl.ContextImpl.getSession(ContextImpl.java:44) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.command.impl.GetTaskReminderCommand.execute(GetTaskReminderCommand.java:38) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.command.impl.GetTaskReminderCommand.execute(GetTaskReminderCommand.java:31) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.command.impl.SpringTransactionCommandService$1.doInTransaction(SpringTransactionCommandService.java:53) ~[uflo-core-2.1.5.jar:na]
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) ~[spring-tx-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at com.bstek.uflo.command.impl.SpringTransactionCommandService.executeCommand(SpringTransactionCommandService.java:51) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.service.impl.DefaultTaskService.getAllTaskReminders(DefaultTaskService.java:358) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.service.impl.SchedulerServiceImpl.initTaskReminders(SchedulerServiceImpl.java:193) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.service.impl.SchedulerServiceImpl.resetScheduer(SchedulerServiceImpl.java:172) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.heartbeat.InstanceDetection.startDaemonJob(InstanceDetection.java:61) ~[uflo-core-2.1.5.jar:na]
at com.bstek.uflo.heartbeat.InstanceDetection.afterPropertiesSet(InstanceDetection.java:116) ~[uflo-core-2.1.5.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1769) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1706) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
... 21 common frames omitted
能否加入组织机构功能
如题
数据安全要求越来越高了,是否可以增加如下功能:
1、用户过期限制,设定过期天数后,对于过期用户登陆后强制修改密码;
2、管理用户可强制某用户退出
3、新用户登录后,强制修改密码
4、强密码策略,系统运维人员可配置强密码内容,包含大小写、数字、特殊字符等
5、限制一个用户只能在一个页面打开,不允许多页面登录
6、指定某账户只能有指定的mac或者ip登录
其中3、4、5、6项最好能有一张系统表进行配置,修改后刷新缓存生效
调用这个方法的时候,能不能传入参数赋值给实体的某个字段,而不是通过excel读取赋值。比如这个实体的外键,需要传入参数赋值,而不是从excel中读取
我把公司的Dorado7升级成SSM+Vue+Layui开发了,支持前后端分离
可以看看
https://editor.csdn.net/md/?articleId=106950087
#登陆页面地址
bdf3.loginPath=com.xxx.core.view.Login.d
登录后页面空白,后台报错,找不到com.xxx.core.view.Login.d
但是单独打开com.xxx.core.view.Login.d是正常的欢迎页面
目前是画中画,客户表示无法接受,希望直接跳到登录页面,建议增加可配置,切换2种方式
项目中使用@configuration定义WebSecurityConfigurer会跟DoradoWebSecurityConfigurer冲突,项目改为继承DoradoWebSecurityConfigurer会导致自定义的AuthenticationProvider无法正常使用。
希望能提供再配置的扩展方案
//目前项目是去掉的DoradoWebSecurityConfigurer的@component注解解决冲突问题
bdf3自带的日志记录 中的"来源"字段 想记录view的路径
默认是@dataresover,可以自动记录
但如果是@expose
就没有入库
BDF3 框架,左边菜单栏的菜单,如何设置属性默认全展开模式
bdf3.saas.packagesToScan=com.yx.bdf3_demo.entity,com.bstek.bdf3.security.orm,com.bstek.bdf3.message.domain,com.bstek.bdf3.dictionary.domain,com.bstek.bdf3.log.model,com.bstek.bdf3.importer.model,com.bstek.bdf3.profile.domain
经排查,注释PersonalCenterServiceImpl#36行后解决
请问在多租户情况下,后台的 ScanJobExecutor 这个任务每个租户都会起一个任务还是总共只启动一个任务
作者是锐道 公司的吗,看锐道 官网上并没有出bdf3
已经添加了dorado-echart-1.0.0 的jar包,但是找不到echart控件。这一块如何处理?谢谢。
有没有考虑使用vue来重写dorado?
有没有类似索引的属性,在dataGrid的数据更新后,指定当前行。现在的状况是更新dataSet后,dataGrid会自动选中第一行为当前行(这个当前行是操作前的当前行)。@J-cafe
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.