当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

Dodo Framework

Java Web 自动化开发框架
授权协议 Apache
开发语言 Java
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 国产
投 递 者 白子明
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

DodoFramework

介绍

一个基于代码生成引擎的Java Web自动化开发框架,开发效率提升90+%,后台管理系统秒级生成。

上手成本极低(几个注解,仅应用在Java 实体类),大众化的基础框架(Spring MVC、Hibernate、Freemarker),瞬间生成完全手写代码,代码注释完备,安全健壮,命名规范,可读性高,可维护,可扩展,针对特定需求可轻松修改。

上手成本极低

仅需学习如何对实体类加注解即可;实体类的注解代码生成完成后,可以删掉,不影响运行

适合场景

中小型Java Web系统、APP或者小程序的后台管理系统,基本上生成无须或者很少改动。让精力更加focus在业务逻辑上。

共十一套页面模板

Classic版本支持10套模板,Pro版本支持1套模板

示例效果图

登录图片 登录图片 登录图片 登录图片

Get Started

第一步:POJO 实体类注解

写好Java 实体类后,使用Dodo注解扩展

@DodoField(name = "产品名称", sortSeq = 0, isRemoteCheck = true, regExp="[A-Za-z0-9]+",regExpTip="只允许输入数字和26个英文字母")
    private String            name;

    @DodoField(name = "产品描述", sortSeq = 5, listable = false, isnullable = false, isRichText = true)
    private String            productDesc;

    @DodoField(name = "产品价格", sortSeq = 1)
    private BigDecimal        price;

    @DodoField(name = "产品积分", sortSeq = 2, max = Integer.MAX_VALUE + "", min = Integer.MIN_VALUE + "")
    private int               buyScore;

    @DodoField(name = "产品状态", sortSeq = 4, isnullable = false, isRemoteCheck = false)
    private ProductStatus     productStatus;

    @DodoField(name = "产品颜色", sortSeq = 5, isnullable = false, isColor = true)
    private String            productColor;

第二步:生成代码

运行代码生成引擎,生成MVC、DB代码数据

16:56:21.791 [main] INFO  c.g.f.p.counter.FileLineCounter - Congratulations:
16:56:21.791 [main] INFO  c.g.f.p.counter.FileLineCounter - Finally:
16:56:21.791 [main] INFO  c.g.f.p.counter.FileLineCounter - You have written: 43 files : 8670 lines
16:56:21.791 [main] INFO  c.g.f.p.counter.FileLineCounter - Generate: 772 files : 381785 lines
16:56:21.791 [main] INFO  c.g.f.p.counter.FileLineCounter - The percentage of generated code is 97.78%:
16:56:21.791 [main] INFO  c.generate.utils.Step_4_GenerateCode - 
16:56:21.791 [main] INFO  c.generate.utils.Step_4_GenerateCode - ******************************************************
16:56:21.791 [main] INFO  c.generate.utils.Step_4_GenerateCode - Step_4_GenerateCode ....Exec OK!
16:56:21.791 [main] INFO  c.generate.utils.Step_4_GenerateCode - Take time -> 00:00:05:037

第三步:Coffee time

部署三联:刷新、打包、部署;大部分项目产出的管理后台无须任何改动。

在线演示

DEMO系统的编码量只是写了几个实体类模型而已,其余全部由引擎生成,包括权限管理、基础管理等模块

** DodoFramework Pro 在线演示**

What is Dodo?

一句话概括这个项目:这是一个基于代码生成引擎的Java Web系统自动化开发框架。简单的说,就是一个Java Web整合的基础框架加上一个代码生成引擎。

上手成本极低(几个注解,仅应用在Java 实体类),大众化的基础框架(Spring MVC、Hibernate、Freemarker),瞬间生成完全手写代码,代码注释完备,安全健壮,命名规范,可读性高,可维护,可扩展,针对特定需求可轻松修改。

(1)安全稳定的基础框架

基于Spring MVC-5.1、Hibernate-5.4、Freemarker、Druid框架组合

管理系统安全框架:Spring Security-5.2

安全增强:登录加盐,动态Salt、静态Salt;支持随时变换后台访问地址,上线后由运营同学修改,增加安全性

8年使用实践,0问题报告

(2)MVC、DB全代码生成

全代码自动生成:对Java实体注解增强,然后瞬间生成MVC每层代码;代码全注释,修改易维护

生成功能多样可配置,需求轻松应对;无需关心数据库,数据库表自动生成(带注释),数据库表命名规范、可维护;基础数据自动生成;

内置十七种Detector,配置问题提前发现,确保生成系统正常运行,万无一失

(3)节省开发时间

学习成本极低:只需要学习几个注解,而且注解只应用于Java POJO类上

支持近二十种组件,每种组件一个注解搞定,而且支持各种校验、控制,PDF自动在线预览,断点续传,自动取值,文档、视频自动转换展示等等

集成微信SDK,微信开发更快速

HQLHelper:链式编写HQL查询语句,无需了解HQL知识;另外支持JDBC

(4)简单强大的在线报表

在线编辑SQL、配置菜单、配置查询条件、分页筛选、导出Excel、指定子视图等等

(5)精细的权限控制

功能权限、字段权限、行级数据权限、按钮权限等,支持权限委托、权限动态更新

(6)完善的日志记录

业务日志、登录日志、请求日志、Slow Sql日志、后台登录会话查看、踢出

Features

  • 基础框架简单安全,人人都会:Spring MVC、Spring Security、Hibernate、Freemarker、Druid
  • 全代码自动生成:对Java实体注解增强,然后瞬间生成MVC每层代码;代码全注释,修改易维护
  • 生成功能多样可配置,需求轻松应对:CRUD、批量导入导出、批量更新、统计列表图表、弹出选择等
  • 无需关心数据库,数据库表自动生成(带注释),数据库表命名规范、可维护
  • 基础数据自动生成:菜单、权限、字段权限、角色、管理员、实体、字段配置等等
  • 代码生成全面预校验:内置十七种Detector,将配置问题暴露代码生成之前,麻麻再也不用担心生成代码无法运行、报错了
  • 全面国际化支持:菜单、字段、枚举、提示文本、easyUI、ueditor、分页等等,一键切换
  • 支持多种组件:字符串、文本域、富文本、文件、文档、视频、多文件、地理位置、颜色、密码域、数字、整数、日期、等等
  • 组件支持各种校验:非空、最大最小、邮箱、手机、URL、信用卡、IP地址、日期,自定义正则表达式
  • 组件支持各种控制:不同组件录入及展示方式不同,断点续传、图片尺寸校验、文档自动转换在线预览、视频自动转换在线预览、pdf在线预览、自动取值等
  • HQLHelper:链式编写HQL查询语句,无需了解HQL知识;另外支持JDBC
  • 精细的权限控制:功能权限、字段权限、行级数据权限、按钮权限等,支持权限委托、权限动态更新
  • 简单强大的在线报表:在线编辑SQL、配置菜单、配置查询条件、分页筛选、导出Excel、指定子视图等等
  • 完善的日志记录:业务日志、登录日志、请求日志、Slow Sql日志、后台登录会话查看、踢出
  • 无限级联支持:多组级联、混合级联
  • 各种树支持:单表树、多表树、混合树
  • 支持模型扩展(后台):无需生成代码,后台通过模型扩展模块给模型添加虚拟字段,支持各种组件
  • 游离文件自动删除:上传的垃圾文件自动记录并自动删除(可选)
  • 多数据源支持
  • 安全增强:登录加盐,动态Salt、静态Salt;支持随时变换后台访问地址,上线后由运营同学修改,增加安全性
  • 更多特性开发中...

授权协议及声明

  • 已开源的全部代码,采用 Apache-2.0 License 授权协议进行发行。
  • DodoFramework可以被用来完全免费开发任何私有的或者商业项目。
  • 将DodoFramework本身(包括以任何形式的修改)作为一个工具或者开发平台、框架而从事商业活动,是不被授权允许的。DodoFramework保留运用法律手段的权利。
  • 在使用过程中,请保留代码中的协议、版权声明和其他原作者规定需要包含的说明。
  • 请了解并知悉,DodoFramework Classic对实体类模型数量无任何限制。DodoFramework Pro社区版实体类模型数量不可超过15个。
  • DodoFramework Pro无限制授权:https://www.0yi0.com https://www.bydodo.com

技术服务与支持

  • 没有资金的支撑就很难得到发展,特别是一个好的产品,如果 DodoFramework 帮助了您,请为我们点赞Star。
  • 支持我们,我们将协助您更加降低研发成本、提高研发效率,请给我们一些支持和动力吧,非常感谢已支持我们的朋友!
  • 官方网站:https://www.bydodo.com
 相关资料
  • 一面 电话面试,大概半小时,我睡的迷迷糊糊就突然打过来了,没准备好o(╥﹏╥)o python 用过list和元组吗,他们之间的区别是什么 给一个列表,想要对他排序,或者去除重复元素怎么去 去除之后他的地址会改变吗,浅拷贝和深拷贝的区别 我们知道循环是for...in...,如果让你重新写一个类,实现in的功能该怎么办 类的继承是什么,他继承了哪些信息,如果同时实现三个类的继承该怎么做 如果有一个

  • 本文向大家介绍说明模块化自动化框架。,包括了说明模块化自动化框架。的使用技巧和注意事项,需要的朋友参考一下 在模块化自动化框架中,通过将整个应用程序划分为几个小的自给自足的模块,在模块或集群的基础上开发测试脚本。因此,创建了属于特定模块或集群的各个测试脚本。 属于这些隔离模块的这些脚本可以集成,并且可以由主驱动程序脚本驱动,以在模块之间执行集成测试。所有这些都是在开发模块脚本时使用的通用功能库(包

  • 作为开发人员,我们的工作就是为最终用户实现过程自动化;然而,很多开发人员却忽略了将自己的开发过程自动化的机会。为此,自动化专家 Paul Duvall 编写了 让开发自动化 这个系列文章,专门探讨软件开发过程自动化的实际应用,并教您 何时 以及 如何 成功地应用自动化。

  • 本文向大家介绍Python API自动化框架总结,包括了Python API自动化框架总结的使用技巧和注意事项,需要的朋友参考一下 学完了Python脚本接口自动化之后,一直没有对该框架做总结,今天终于试着来做一份总结了。 框架结构如下图: 来说一下每个目录的作用: Configs:该目录下存放的是.conf,.ini文件格式的配置文件;文件里面的内容可以通过封装好的读写配置文件的类去获取。 da

  • 本文向大家介绍python接口自动化框架实战,包括了python接口自动化框架实战的使用技巧和注意事项,需要的朋友参考一下      python接口测试的原理,就不解释了,百度一大堆。     先看目录,可能这个框架比较简单,但是麻雀虽小五脏俱全。 各个文件夹下的文件如下: 一.理清思路     我这个自动化框架要实现什么     1.从excel里面提取测试用例     2.测试报告的输出,并

  • 本文向大家介绍python3+selenium自动化测试框架详解,包括了python3+selenium自动化测试框架详解的使用技巧和注意事项,需要的朋友参考一下 背景 为了更好的发展自身的测试技能,应对测试行业以及互联网行业的迭代变化。自学python以及自动化测试。 虽然在2017年已经开始接触了selenium,期间是断断续续执行自动化测试,因为还有其他测试任务,培训任务要执行… 前期建议大

  • 本文向大家介绍解释测试驱动开发框架。,包括了解释测试驱动开发框架。的使用技巧和注意事项,需要的朋友参考一下 测试驱动开发框架是从开发人员的思想出发实施的方法。在这里,开发人员编写测试用例,涵盖应用程序的每个功能,以验证代码是否正确。 一旦这些测试用例失败,开发人员将重构代码以使这些测试用例通过。该过程一直持续到所有测试用例通过为止。这种类型的方法广泛用于敏捷方法中。在此框架中,在开发产品的实际功能