让人上瘾的新一代开发神器,8彻底告别Controller、Service、Dao等方法
扫码关注“后端架构师”,选择“星标”公众号
重磅干货,第一时间送达!
责编:架构君 | 来源:网络
责编:架构君 | 来源:网络
上一篇好文:优秀的代码都是如何分层的?
大家好,我是后端架构师。
今天,推荐一个开发神器。我第一次使用就有点上头,爱不释手,必须要推荐给大家。
上次是谁要的开发神器啊,我帮你找到了。
这是我目前见过最好的开发神器。功能完整,代码结构清晰。值得推荐。📚 项目介绍
最近我在逛网站的时候发现一个不错的开源项目,这个项目目前收获了 1.4K Star,我觉得不错,值得拿出来和大家分享下。
初衷
用尽可能简单的方式,完成尽可能多的需求。通过约定的方式 实现统一的标准。告别加班,拒绝重复劳动,远离搬砖
特性
用于快速开发API接口。不再定义Controller
,Service
,Dao
,Mybatis
,xml
,Entity
,VO
等对象和方法.
可视化界面,将入参自动封装到可执行的脚本上,支持所有关系性数据库SQL执行语句,非关系型MONGODB
查询语句.欢迎扩展
完全基于springboot2.x 作为springboot项目的stater方式集成,无侵入性,新老项目都能快速集成
只需编写一行代码即可完成大部分的业务需求开发,使用难度级别(测试 or 运维)也可参与开发
在线动态编译,无需重启,即时生效,多数据源操作
版本控制,历史记录比对,回滚等功能
远程一键发布到线上环境
线上POSTMAN调试,保存POSTMAN信息或三方文档的自动生成,历史调用记录存储,回塑。扩展:接私活儿
代码提示,SQL提示,语法提示
用户管理控制,安全性控制,以及历史行为记录
经过多次项目验证,传统业务型开发,服务端效率能够提升3-5倍,前后端联调提升效率1倍,测试效率2倍提升
传统开发步骤:
增加一张表
创建实体对象,映射这张表
创建API入参VO
创建API出参VO
创建Controller
创建Service
创建Dao
创建Mapper, xml或者JPA
在mysql客户端,或者mongo客户端中写执行脚本语句,复制到代码中
反复重启,进行接口自测
编写API文档
完成一个功能点开发
使用一些工具比如mybatis plus,jpa,或者idea的Easy code、MybatisCodeHelperPro等可以一键生成一些基于单表的操作的相关代码,但是业务场景来说,可能喜欢更灵活,代码执行效率更高的一些操作方式,并且一个项目开发中,从来不仅仅是单表的一些操作操作
市面上就上面的这些问题,提供了APIJSON和GraphQL等解决方案,这两个工具相对操作数据库相对很灵活,但是操作难度,和学习成本高,并且适合场景也是有限,如果要实现简单的业务处理逻辑会比较复杂
那么,我希望有一种功具,它可以像mybatis xml,像metabase BI,一样,能够直接操作原生的数据库查询及操作语句,并且可以有springboot的restful这种业界标准的接口定义/及参数定义方式,并且按照统一约定的方式,省略三层MVC的定义,并且能够对数据进行一些逻辑处理,以满足多元化的业务需求。最好是作为一个插件的形式,能够很好的集成在现有项目中,不会影响到现有的业务逻辑处理
这就是我要介绍的一款工具神器
地址:文末获取
区别于前两类的设计方式不同点在于:
基于springboot开发。包括接口的注册,参数的获取,输入输出的消息转换,都是基于springboot的生态环境,能无侵入性集成于springboot项目中,如果你有基于springboot实现了全局异常处理,返回值统一封装,权限控制等,不用担心,都在你的管控范围内
参考于mybatis的参数定义方式,不同点在于使用默认大于配置的逻辑,实现参数的注入直接来源于请求参数,省略了传统MVC 实体类,方法,VO等定义
默认担供了内部函数,可以很简单的实现 多表/多库的增/删/改/查,导出,导入,上传,下载,分页查询等功能
提供了基于Groovy的语法解析,可以实现Groovy的一些逻辑处理
提供了调用springboot bean对象的方法及其他任意java定义的静态类,方法和对象,这意味着我能够调用公共定义的类,或者之前在项目中定义的service,dao,和utils
因为基于的groovy动态语法解析,所以代码修改,或者线上问题的处理能够不用重启服务,也不用升级代码就能够完成功能开发和问题处理,这对开发效率而言会有很大的提升。另外,搜索公众号Java架构师技术后台回复“物联网”,获取一份惊喜礼包。
传统业务开发,不仅有服务端的开发,还有相对应的文档生成,前后端对接,以及测试配合。“Rocket API” 提供了POSTMAN的操作页面,能够将参数的请求值,请求类型,响应等保存起来,给予前端做真实数据的对接,而不是类yapi,或者swagger之类生成的不能使用的假数据。基于这些真实的请求参数和返回值,提供了外部接口能力,测试团队可以以此来做接口的一键冒烟测试,和文档的一键生成
演示说明
接口功能逻辑页面
接口功能自测页面
文档和演示地址:
地址:文末获取
集成方式:
1. 添加依赖
<dependency>
<groupId>com.github.alenfive</groupId>
<artifactId>rocket-api-boot-starter</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2. 数据源配置
@Component
public class DefaultDataSourceManager extends DataSourceManager {
@Autowired
private JdbcTemplate jdbcTemplate;
@PostConstruct
public void init() {
Map<String,DataSourceDialect> dialects = new HashMap<>();
dialects.put("mysql",new SqlDataSource(jdbcTemplate,true));
super.setDialectMap(dialects);
}
}
3. 最新建表脚本查看:
地址:文末获取
启动项目,访问地址:
地址:文末获取
最后,想学习这个项目的可以查看项目地址:
项目源码,怎么领取?
源码获取
扫码下方二维码,后台回复【神器】即可获取所有思维导图
欢迎有需要的同学试试,如果本文对您有帮助,也请帮忙点个 赞 + 在看 啦!❤️
在 GitHub猿 还有更多优质项目系统学习资源,欢迎分享给其他同学吧!
PS:如果觉得我的分享不错,欢迎大家随手点赞、转发、在看。
最后给读者整理了一份BAT大厂面试真题,需要的可扫码加微信备注:“面试”获取。
上一篇好文:优秀的代码都是如何分层的?
大家好,我是后端架构师。
今天,推荐一个开发神器。我第一次使用就有点上头,爱不释手,必须要推荐给大家。上次是谁要的开发神器啊,我帮你找到了。
这是我目前见过最好的开发神器。功能完整,代码结构清晰。值得推荐。📚 项目介绍
最近我在逛网站的时候发现一个不错的开源项目,这个项目目前收获了 1.4K Star,我觉得不错,值得拿出来和大家分享下。
初衷
用尽可能简单的方式,完成尽可能多的需求。通过约定的方式 实现统一的标准。告别加班,拒绝重复劳动,远离搬砖
特性
用于快速开发API接口。不再定义
Controller
,Service
,Dao
,Mybatis
,xml
,Entity
,VO
等对象和方法.可视化界面,将入参自动封装到可执行的脚本上,支持所有关系性数据库SQL执行语句,非关系型
MONGODB
查询语句.欢迎扩展完全基于springboot2.x 作为springboot项目的stater方式集成,无侵入性,新老项目都能快速集成
只需编写一行代码即可完成大部分的业务需求开发,使用难度级别(测试 or 运维)也可参与开发
在线动态编译,无需重启,即时生效,多数据源操作
版本控制,历史记录比对,回滚等功能
远程一键发布到线上环境
线上POSTMAN调试,保存POSTMAN信息或三方文档的自动生成,历史调用记录存储,回塑。扩展:接私活儿
代码提示,SQL提示,语法提示
用户管理控制,安全性控制,以及历史行为记录
经过多次项目验证,传统业务型开发,服务端效率能够提升3-5倍,前后端联调提升效率1倍,测试效率2倍提升
传统开发步骤:
增加一张表
创建实体对象,映射这张表
创建API入参VO
创建API出参VO
创建Controller
创建Service
创建Dao
创建Mapper, xml或者JPA
在mysql客户端,或者mongo客户端中写执行脚本语句,复制到代码中
反复重启,进行接口自测
编写API文档
完成一个功能点开发
使用一些工具比如mybatis plus,jpa,或者idea的Easy code、MybatisCodeHelperPro等可以一键生成一些基于单表的操作的相关代码,但是业务场景来说,可能喜欢更灵活,代码执行效率更高的一些操作方式,并且一个项目开发中,从来不仅仅是单表的一些操作操作
市面上就上面的这些问题,提供了APIJSON和GraphQL等解决方案,这两个工具相对操作数据库相对很灵活,但是操作难度,和学习成本高,并且适合场景也是有限,如果要实现简单的业务处理逻辑会比较复杂
那么,我希望有一种功具,它可以像mybatis xml,像metabase BI,一样,能够直接操作原生的数据库查询及操作语句,并且可以有springboot的restful这种业界标准的接口定义/及参数定义方式,并且按照统一约定的方式,省略三层MVC的定义,并且能够对数据进行一些逻辑处理,以满足多元化的业务需求。最好是作为一个插件的形式,能够很好的集成在现有项目中,不会影响到现有的业务逻辑处理
这就是我要介绍的一款工具神器
地址:文末获取
区别于前两类的设计方式不同点在于:
基于springboot开发。包括接口的注册,参数的获取,输入输出的消息转换,都是基于springboot的生态环境,能无侵入性集成于springboot项目中,如果你有基于springboot实现了全局异常处理,返回值统一封装,权限控制等,不用担心,都在你的管控范围内
参考于mybatis的参数定义方式,不同点在于使用默认大于配置的逻辑,实现参数的注入直接来源于请求参数,省略了传统MVC 实体类,方法,VO等定义
默认担供了内部函数,可以很简单的实现 多表/多库的增/删/改/查,导出,导入,上传,下载,分页查询等功能
提供了基于Groovy的语法解析,可以实现Groovy的一些逻辑处理
提供了调用springboot bean对象的方法及其他任意java定义的静态类,方法和对象,这意味着我能够调用公共定义的类,或者之前在项目中定义的service,dao,和utils
因为基于的groovy动态语法解析,所以代码修改,或者线上问题的处理能够不用重启服务,也不用升级代码就能够完成功能开发和问题处理,这对开发效率而言会有很大的提升。另外,搜索公众号Java架构师技术后台回复“物联网”,获取一份惊喜礼包。
传统业务开发,不仅有服务端的开发,还有相对应的文档生成,前后端对接,以及测试配合。“Rocket API” 提供了POSTMAN的操作页面,能够将参数的请求值,请求类型,响应等保存起来,给予前端做真实数据的对接,而不是类yapi,或者swagger之类生成的不能使用的假数据。基于这些真实的请求参数和返回值,提供了外部接口能力,测试团队可以以此来做接口的一键冒烟测试,和文档的一键生成
演示说明
接口功能逻辑页面
接口功能自测页面
文档和演示地址:
地址:文末获取
集成方式:
1. 添加依赖
<dependency>
<groupId>com.github.alenfive</groupId>
<artifactId>rocket-api-boot-starter</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2. 数据源配置
@Component
public class DefaultDataSourceManager extends DataSourceManager {
@Autowired
private JdbcTemplate jdbcTemplate;
@PostConstruct
public void init() {
Map<String,DataSourceDialect> dialects = new HashMap<>();
dialects.put("mysql",new SqlDataSource(jdbcTemplate,true));
super.setDialectMap(dialects);
}
}
3. 最新建表脚本查看:
地址:文末获取
启动项目,访问地址:
地址:文末获取
最后,想学习这个项目的可以查看项目地址:
项目源码,怎么领取?
扫码下方二维码,后台回复【神器】即可获取所有思维导图
在 GitHub猿 还有更多优质项目系统学习资源,欢迎分享给其他同学吧!
PS:如果觉得我的分享不错,欢迎大家随手点赞、转发、在看。
最后给读者整理了一份BAT大厂面试真题,需要的可扫码加微信备注:“面试”获取。
版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!
版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!
END
最近面试BAT,整理一份面试资料《Java面试BAT通关手册》,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。在这里,我为大家准备了一份2021年最新最全BAT等大厂Java面试经验总结。
别找了,想获取史上最全的Java大厂面试题学习资料
扫下方二维码回复「面试」就好了
历史好文:
基于SpringBoot 的CMS系统,拿去开发企业官网真香
扫码关注“后端架构师”,选择“星标”公众号
别找了,想获取史上最全的Java大厂面试题学习资料
扫下方二维码回复「面试」就好了
历史好文:
基于SpringBoot 的CMS系统,拿去开发企业官网真香
扫码关注“后端架构师”,选择“星标”公众号