大版本,Jboot v3.6.0 重磅发布

栏目: 软件资讯 · 发布时间: 3年前

内容简介:Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、...

Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开发,快乐生活。

到目前为止,Jboot 已经开源超过了 4 年的时间,迭代了 160+ 个版本,已经被超过 1000+ 公司在使用,其中包含了多个知名的上市公司。

Jboot 基于 JFinal 开发,属于 JFinal 生态体系应用框架,在 JFinal 的支持上,Jboot 主要新增了一些常用的功能。

  • 1、扩展了 Action 的日志,和 Sql 日志。详细的知道了每条完整的 Sql 及其 执行消耗时间。
  • 2、能够知道每个 Controller 的执行行号定位,每个拦截器是否执行、以及拦截器的执行行号定位,方便定位调试。

大版本,Jboot v3.6.0 重磅发布

  • 3、在 JFinal ActiveRecordPlugin 的支持上、新增了根据列来查询的 API,更加方便我们通过 API 来查询数据。

示例1:

String name = "michael";
DAO.findFirstByColumns(Columns.create("username",name));

生成的 sql 为

select * from tableName where username = 'michael'

示例2:

public List<User> findList(){
   DAO.alias('u')
      .leftJoin("article").as('a').on("u.id = a.user_id")
      .loadColumns('u.nickname,a.title')
      .findListByColumns(Columns.create().in('u.id',1,2,3))
}

生成的 sql 为

select u.nickname,a.title from user as u 
left join article a on u.id = a.user.id
where u.id in (1,2,3)

同时支持、一对多、多对一、多对多查询、分库分表查询、和分布式事务等,详情:https://jbootprojects.gitee.io/docs/docs/db.html

  • 4、最新支持 JFinal 的 @Path 注解(同 @RequestMapping ),同时不需要在 Config 做任何的代码配置,同时支持在 @Path 下传入参数。

例如:

@Path("${myconfig}/club")
public class ClubController extends Controller {
   ......
}

在 jboot.properties  添加如下配置:

myconfig = /admin

最终,ClubController 的映射路径为:/admin/club ,其实,不仅仅是 @Path 注解,在 Jboot 体系下,所有的注解都支持参数配置。

当然,还有 RPC、分布式缓存、MQ 等更多的企业级功能,文档详情:https://jbootprojects.gitee.io/docs/

同时,Jboot 官方也推出了企业级开发框架 JbootAdmin,详情 https://jbootprojects.gitee.io/docs/jbootadmin/

 

Jboot 主要有以下特征:

  • 1、基于 JFinal 的 MVC + ORM 快速开发。
  • 2、基于 ShardingSphere + Seata 分布式事务 和 分库分表。
  • 3、基于 Dubbo 或 Motan 的 RPC 实现
  • 4、基于 Sentinel 的分布式限流和降级
  • 5、基于 Apollo 和 Nacos 的分布式配置中心
  • 6、基于 EhCache 和 Redis 的分布式二级缓存

Jboot v3.6.0  更新内容如下:

  • 新增:ClassUtil.hasClass 方法,用于判断一些第三方组件依赖
  • 新增:Model 新增 @JsonIgnore 注解,用于配置某些不输出的字段
  • 新增:Model 新增 FastJson 的注解 @JsonField 的配置支持
  • 新增:新增对 JFinal 最新版本 @Path 的配置支持
  • 新增:DAO 查询的时候,支持通过 loadColumns() 方法配置其查询的列
  • 修复:Columns组装sql工具类in()、notIn()方法新增安全模式检查参数是否为空,解决安全模式下,List不为null,但没有元素时跳过安全检查。感谢 @Liuenxin
  • 优化:Columns.in() 和 Columns.notIn 修改参数 List 为 Collection
  • 优化:升级 JFinal、Fastjson、Nacos 等到最新版本
  • 优化:为 Json 的相关代码创建独立包
  • 优化:重构 JbootJson 使之代码更加简洁
  • 优化:重命名 SqlDebugger.debug 为 SqlDebugger.run,删除其不必要的方法
  • 优化:优化 AopCache,使之在缓存数据错误时,自动刷新缓存信息
  • 文档:更新 json 的相关文档

开发文档:

https://jbootprojects.gitee.io/docs/

maven 依赖:

<dependency>
    <groupId>io.jboot</groupId>
    <artifactId>jboot</artifactId>
    <version>3.6.0</version>
</dependency>

Hello World:

@RequestMapping("/")
public class HelloworldController extends JbootController {

    public void index(){
        renderText("hello world");
    }

    public static void main(String[] args){
        JbootApplication.run(args);
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大数据

大数据

涂子沛 / 广西师范大学出版社 / 2013-4-1 / 49.90元

公布官员财产美国是怎么做的,美国能让少部人腐败起来吗,美国式上访是怎么回事,凭什么美国矿难那么少,全民医改美国做得到吗,美国总统大选有什么利器才能赢,下一轮全球洗牌我们世界工厂会被淘汰吗…… 除了上帝,任何人都必须用数据来说话。 大数据浪潮,汹涌来袭,与互联网的发明一样,这绝不仅仅是信息技术领域的革命,更是在全球范围启动透明政府、加速企业创新、引领社会变革的利器。现代管理学之父德鲁克有......一起来看看 《大数据》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

随机密码生成器
随机密码生成器

多种字符组合密码