Jboot v3.9.4 发布,可能是最完美的、针对数据字典、枚举解决方案

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

内容简介:Jboot 一个更简单的分布式、微服务框架。 Jboot是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务、分布式开发门槛。爽爽开发,快乐...

Jboot 一个更简单的分布式、微服务框架。

Jboot是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务、分布式开发门槛。爽爽开发,快乐生活。

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

Jboot v3.9.4 最大的功能,是正对 JFinal Enjoy 模板引擎的增强,完美的支持了 ”枚举“ 在模板引擎中的使用。这样带来的好处是在 html 模板引擎里,可以和 Java 毫无差别的使用枚举。

而枚举,在系统开发里,更多的是用来做 ”数据字典“,很多系统(比如 JbootAdmin)的数据字典是可以直接生成 ”枚举“ 代码的。

比如:”支付类型“ 的枚举如下:

public enum PayType {
   
    ALIPAY(1, "支付宝"),
    WECHAT(10, "微信支付"),

    public int value;
    public String text;

    PayType(int value, String text) {
        this.value = value;
        this.text = text;
    }

   
    public static String text(Integer value) {
        if (value != null) {
            for (AccountType type : values()) {
                if (type.value == value) {
                    return type.text;
                }
            }
        }
        return null;
    }


    public static boolean isAlipay(Integer value) {
        return value != null && ALIPAY.value == value;
    }

}

我们只需要给该枚举添加注解 @JFinalSharedEnum , 就可以在在 html 通过如下的方式使用该枚举了。

比如:

<html>
<body>
   #(PayType.ALIPAY.text)   <br/>
   #(PayType.text(1))   <br/>
   #(PayType.isAlipay(1))   <br/>
</body>
</html>

为什么说是对 JFinal 模板引擎的增强呢,因为 JFinal 模板引擎默认情况下可以添加枚举,但是并不支持使用枚举里的静态方法。当添加枚举的静态方法后,最直接的好处是:我们可以把保存在数据库的 int 类型的枚举数据,在模板引擎里通过 #(PayType.text(1)) 这样显示出其 text 内容。

虽然一个很小的功能,却非常实用。虽然在 JFinal 社区也给出了不同的解决方法,但是没有一个解决方案与之媲美 。

在这个版本中,Jboot 还新增了对注解 @PostConstruct 注解的支持,优化了门户官网代码,详情请查看 changelist。

 

Jboot 开发文档:

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

同时,Jboot 官方也推出了收费的企业级开发框架 JbootAdmin ,关于 JbootAdmin 详情咨询海哥。

 

maven 依赖:

<dependency>
    <groupId>io.jboot</groupId>
    <artifactId>jboot</artifactId>
    <version>3.9.4</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);
    }
}

 


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

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

人工智能+:AI与IA如何重塑未来

人工智能+:AI与IA如何重塑未来

[美]韩德尔·琼斯(Handel Jones) [中]张臣雄 / 机械工业出版社 / 2018-10 / 55.00

当深度学习模型引发了全世界对人工智能的再次关注时,人工智能迎来第三次高速增长,人工智能(AI)、增强现实(AR)和虚拟现实(VR)正把人类带向新的“智能增强时代”(IA),我们将在不知不觉中接纳机器智能。 针对人类社会长期存在的众多复杂的动态的难题,人机融合智能将会提供全新的解决方案,谷歌、Facebook、微软、亚马逊、腾讯、阿里巴巴、百度等平台巨头纷纷斥千亿巨资布局人工智能的尖端技术;智......一起来看看 《人工智能+:AI与IA如何重塑未来》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具