BDF3

渐进式企业级开发框架
授权协议 Apache
开发语言 Java
所属分类 程序开发、 服务框架/平台
软件类型 开源软件
地区 国产
投 递 者 鲜于允晨
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

BDF3 是基于 Spring Boot 组件化的渐进式企业级开发框架。 提供一系列企业级通用模块功能,使用 BDF3 框架在业务项目,我们可以直接专注到业务功能模块的开发。

欢迎大家联系我们:技术交流、商业合作、共建开源等。

非多租户模式:

多租户模式:

特征

  • 零配置,开箱即用。基于 Spring Boot 自动配置机制实现
  • 前端界面可视化开发,基于 Dorado 展现中间件实现
  • 前端组件标准化,后端开发者也能轻松开发前端
  • 抽象业务通用能力,提供通用功能模块,这些通用模块开箱即用,如权限管理、多租户、工作流、报表、实时通信、公众号、微程序、云数据库管理、规则引擎、日志、菜单、认证、字典、数据导入和导出等等
  • 基于角色的权限授权,权限粒度为组件级别
  • 开发企业管理系统效率极高
  • 多数据源智能切换、开启事务
  • 多租户支持,横向无限扩展,传统项目零代码切换为多租户项目
  • 提供丰富多样的主页面选择
  • 功能组件化,自由选择需要的组件
  • 基于 JPA 实现的极简、可读性高的结构化查询 Linq,与 Dorado 无缝集成
  • 基于 Spring Security 实现的认证与授权,开箱即用

在线演示

其中,公司 ID 为 master,用户名/密码为 admin/123456

快速开始

BDF3 基于 Spring Boot 自动配置机制实现,做到了零配置,开箱即用,没有额外学习成本,BDF3 也提供了一系列 pom 类型的 Starter 模块,也 Spring Boot 提供的 Starter 模块类似,Starter 模块简化了 BDF3 的模块依赖管理,让项目依赖变得更为简单,好维护。

第一步:初始化一个标准的 Maven 项目

创建一个标准的 Maven 项目,名称为 bdf3-sample,项目打包类型为 jar,项目的父项目指向 bdf3-starter-parent。最终生成的 pom文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <!-- 继承的 BDF3 提供的依赖管理的父项目 -->
  <parent>
    <groupId>com.bstek.bdf3</groupId>
    <artifactId>bdf3-starter-parent</artifactId>
    <version>1.1.0-SNAPSHOT</version>
  </parent>
  <artifactId>bdf3-sample</artifactId>
  <dependencies>
    <!-- 添加 BDF3 提供的预定义依赖 Starter,BDF3 还提供了其他的 Starter -->
    <dependency>
      <groupId>com.bstek.bdf3</groupId>
      <artifactId>bdf3-starter</artifactId>
    </dependency>
    <!-- 开发测试工具 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <scope>provided</scope>
    </dependency>
    <!-- 数据库驱动,正式场景改为 mysql、oracle 等等数据库驱动 -->
    <dependency> 
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId> 
    </dependency>
  </dependencies>
  <!-- BDF3 提供的模块存放的 maven 私服仓库 -->
  <repositories>
    <repository>
      <id>bsdn-maven-repository</id>
      <url>http://nexus.bsdn.org/content/groups/public/</url>
    </repository>
  </repositories>
</project>

第二步:启动类

package com.bstek.bdf3.sample;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;

/**
 * @author Kevin Yang (mailto:kevin@cellbang.com)
 * @since 2016年12月10日
 */
@SpringBootApplication  // Spring Boot 启动类注解
@EnableCaching          // 开启缓存功能注解
public class SampleApplication {

    public static void main(String[] args) throws Exception {
		    SpringApplication.run(SampleApplication.class, args);
    }
  
}

通过以上两个步骤,一个基本的BDF3 框架的项目就搭建好了。直接运行项目的启动类(运行 main 静态方法)示例下载

数据源与 JPA 配置

在 Spring 的配置中,如下配置:

# 文件 application.properties
# 服务器端口设置
server.port = 8080
# 项目上下文路由
server.context-path=/bdf
# 是否打印sql语句
spring.jpa.showSql=true
#hibernate 反向创建表设置,update启动时更新表结构,create 启动时重新创建表结构,none 启动时不检查
spring.jpa.hibernate.ddl-auto=update
# Spring Boot 热部署设置,添加以下文件匹配规则,改动不重启。
spring.devtools.restart.additional-exclude=com/**
#数据库脚本的编码设置为 UTF-8
spring.datasource.sql-script-encoding=UTF-8

# 数据源配置,pom 中需要引入对应的数据库 jdbc 依赖,以下使用 mysql 数据库为例
spring.datasource.continue-on-error=true
spring.datasource.url=jdbc:mysql://localhost:3306/bdf3
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# 如果数据库为非嵌入式数据库,这个属性第一次启动的时候一定要设置为ALWAYS,用于初始化数据,初始化好后,可以关闭,也可以不关闭,有自己决定
spring.datasource.initialization-mode=ALWAYS

Spring Boot 文档教程

Spring Boot 文档教程

  • 搜索热词 (1)bdf命令的效果 @H_404_4@lijiaman$[/home/oracle]bdf Filesystem kbytes used avail %used Mounted on /dev/vg00/lvol3 10485760 225552 10180096 2% / /dev/vg00/lvol1 4194304 390200 3774448 9% /stand /dev/v

  • 1.首先需要一个采集信息字段的基本类 public class JBCode { private String ksid; public String getKsid() { return ksid; } public void setKsid(String ksid) { this.ksid = ksid; } }

  • public static bool Bdt(string text, string str) { int i = 0; bool reu

 相关资料
  • 本文向大家介绍java微信企业号开发之开发模式的开启,包括了java微信企业号开发之开发模式的开启的使用技巧和注意事项,需要的朋友参考一下 首先说微信企业号的开发模式分为:编辑模式(普通模式)和开发模式(回调模式) ,在编辑模式下,只能做简单的自定义菜单和自动回复消息,要想实现其他功能还得开启开发者模式。 一、编辑模式和开发模式对消息的处理流程  1.编辑模式下,所有的业务流程都配置在微信服务器上

  • 本文向大家介绍利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架,包括了利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架的使用技巧和注意事项,需要的朋友参考一下 我们要搭建的框架是企业级开发框架,适用用企业管理信息系统的开发,如:OA、HR等 1、框架名称:sampleFrame。 2、搭建原则:最少知识原则。 3、先定义一个简单的编码规范:除

  • 本文向大家介绍浅析Android企业级开发数据绑定技术,包括了浅析Android企业级开发数据绑定技术的使用技巧和注意事项,需要的朋友参考一下 这篇文章通过发文的方式让大家知道什么是数据绑定,以及为什么要用数据绑定等问题,有助于大家理解Android企业级开发数据绑定技术。 首先要了解什么是数据绑定?为什么要用数据绑定?怎么用数据绑定?   语法的使用 简单例子,数据绑定textview控件,一般

  • 注意:本书中的 Service Mesh 章节已不再维护,请转到 istio-handbook 中浏览。 本节是根据由Nginx赞助,O’Reilly出版社出品的关于服务网格的书籍总结而来,本书标题是 The Enterprise Path to Service Mesh ,还有个副标题 Decoupling at Layer 5 ,第一版发行于2018年8月8日。这本书一共61页,本文是我对该书

  • 以下是为 linkerd 提供商业支持和其他企业产品的公司列表: Buoyant 是 linkerd 的原创者,并提供支持,培训和企业产品。 了解更多 »

  • 作用 用于查询企业账户额度、开票额度等信息。 依赖 暂无依赖 注意 所有接口调用时需要严格遵守请求方式(GET/POST) 使用接口前需要仔细阅读每个接口的注意事项 接口报错时先阅读通用错误解决方案和当前接口文档下的接口错误解决方案