恕我直言,有一个很好的解决方案来管理应用程序数据,而无需编写任何额外的代码.

LightAdmin是一个可插拔的Java库,用于Spring / JPA支持的应用程序,它通过干净简单的UI提供标准的CRUD功能,过滤,JSR-303验证.

它提供用于界面定制的DSL,您可以随时从应用程序中插入/拔出它.

以下是DSL配置定制的一个小例子:

@Administration( Booking.class )

public class BookingAdministration {

public static ScopesConfigurationUnit scopes( final ScopesConfigurationUnitBuilder scopeBuilder ) {

return scopeBuilder

.scope( "All",all() )

.scope( "Smoking Apartments",specification( smokingApartmentsSpec( true ) ) )

.scope( "Non Smoking Apartments",specification( smokingApartmentsSpec( false ) ) )

.scope( "Long-term bookings",filter( longTermBookingPredicate() ) ).defaultScope().build();

}

public static FiltersConfigurationUnit filters( final FiltersConfigurationUnitBuilder filterBuilder ) {

return filterBuilder

.filter( "Customer","user" )

.filter( "Booked Hotel","hotel" )

.filter( "Check-In Date","checkinDate" ).build();

}

public static FieldSetConfigurationUnit listView( final FieldSetConfigurationUnitBuilder fragmentBuilder ) {

return fragmentBuilder

.field( "user" ).caption( "Customer" )

.field( "hotel" ).caption( "Hotel" )

.field( "checkinDate" ).caption( "Check-In Date" )

.field( "smoking" ).caption( "Smoking" )

.field( "beds" ).caption( "Beds" )

.build();

}

public static DomainTypePredicate longTermBookingPredicate() {

return new DomainTypePredicate() {

@Override

public boolean apply( final Booking booking ) {

return booking.getNights() > 20;

}

};

}

public static DomainTypeSpecification smokingApartmentsSpec( final boolean isSmokingApartment ) {

return new DomainTypeSpecification() {

@Override

public Predicate toPredicate( final Root root,final CriteriaQuery> query,final CriteriaBuilder cb ) {

return cb.equal( root.get( "smoking" ),isSmokingApartment );

}

};

}

}

java crud是什么_为现有数据库开发Java CRUD的最佳框架是什么?相关推荐

  1. java护照号码校验_学无止境之小白学java……第001天

    学习主题:预科阶段 对应视频: http://www.itbaizhan.cn/course/id/18.html 对应作业: 1. 为什么需要学编程,什么样的人可以做程序员? 编程是现实逻辑的表达, ...

  2. java初级能干什么_小黄鸭系列java基础知识 | java能干什么?

    java能干什么? 前言 java本身只是一种编程语言,一种工具,我们在使用任何工具之前,应该要充分了解这个工具能干什么,只有搞清楚了这问题,你才能清楚你要不要使用它.所以今天我们要探讨的问题就是-- ...

  3. java基本语法借阅_课内资源 - 基于Java和MySql实现的光盘借阅管理系统

    一.需求设计以下几个类:光盘类:用户类:借阅记录类,包括下列模块: 新建.修改.删除光盘信息 新建.修改.删除用户信息 光盘借阅/归还信息记录 查询光盘名称,用户的借阅历史 要求:基于JFrame窗体 ...

  4. java底层原理书籍_阿里面试题:Java中this和super关键字的底层实现原理

    知道的越多,不知道的就越多,业余的像一棵小草! 编辑:业余草 来源:https://www.xttblog.com/?p=5028 B 站:业余草 最近一个粉丝加我说,接到了阿里的面试,问问我阿里会面 ...

  5. java 优秀源码_想要快速进阶Java架构师?这份超强(长)学习计划单 请签收!...

    优秀工程师的成长之路就是一条不断打怪升级之路的"修仙之路"! 而Java程序员一向比别人更难,如果说大家都在修仙的话,java程序员简直神似"剑修",入行枯燥精 ...

  6. java引用公共类_使用键引用从Java公共类获取值 - java

    我们有一个Java公共类, public class Test { public class ob1 { public static final String test = "T1T1&qu ...

  7. java青蛙过河打字_趣味算法——青蛙过河(JAVA)

    青蛙过河是一个非常有趣的智力游戏,其大意如下: 一条河之间有若干个石块间隔,有两队青蛙在过河,每队有3只青蛙,这些青蛙只能向前移动,不能向后移动,且一次只能有一只青蛙向前移动.在移动过程中,青蛙可以向 ...

  8. java 判断是否夏令时_确定指定日期的Java夏令时(DST)是否处于活动状态

    我有一个Java类,它占用一个位置的纬度/经度,并在夏时制开启和关闭时返回GMT偏移量.我正在寻找一个简单的方法来确定Java如果当前日期是在夏令时间,所以我可以应用正确的偏移量.目前,我只对美国时区 ...

  9. java 模仿支付成功_我的大学到研究生自学 Java 之路,过程艰辛,不放弃,保持热情,最终发现我是这样拿到大厂 offer 的!...

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:本人真实经历:面试了20家大厂之后,发现这样介绍项目经验,显得项目很牛逼! 这一部分,其实,以前在自己的公众号写 ...

最新文章

  1. .net3.5的安装与修复
  2. 【Linux】tail命令
  3. 快速接入 GitHub、QQ 第三方登录方式
  4. 如何无监督地获得一个句子的向量表示?
  5. iPhone应用程序编程指南(窗口和视图)
  6. selenium自动化测试_维持Selenium测试自动化的完美方法
  7. html选择按键点击后锁死输入框_js实现的键盘开启大写锁定提示和密码显示与隐藏的效果...
  8. python饼状图教程_Python数据可视化:饼状图的实例讲解
  9. 【转】eclipse中window-preference选项中没有tomcat的解决方法
  10. STM8学习笔记---定时器 TIM1功能实现
  11. Qt之QSS:带CheckBox的QGroupBox及其样式设计
  12. 数据库信息查询(作者不是我)
  13. UIAlertController中TextField的用法
  14. 小白记录问题(2)——关于np.savez()与np.laod()储存与读取字典数据的问题
  15. 作为一个平面设计师,该如何转变平面设计思维
  16. Certificate for <xxx.xxx.xxx.com> doesn‘t match any of the subject alternative names: [xxx..com]
  17. document的使用方法
  18. html隐藏visibility,HTML DOM Style visibility 属性 | 菜鸟教程
  19. System.Threading.ThreadAbortException: 正在中止线程
  20. NetSuite合作伙伴

热门文章

  1. 【蓝牙学习笔记二】初识BLE蓝牙协议栈
  2. sth. about tarjan
  3. 利用scrapy框架爬取网易新闻排行榜
  4. 使用Postmark作为稳定、给力的邮件代发服务器!
  5. AidLux+无人机——AI电力巡检新模式
  6. 短视频之后,Vlog为何能成为内容市场和品牌营销的新风口?
  7. 移动应用的AR滤镜和实时特效:提升用户创造力和娱乐体验
  8. 1.专家系统涉及内容简介-01
  9. 某公司规定,销售人员工资由基本工资和销售提成两部分组成,其中基本工资是1500/月,销售提成规则如下:销售额小于10000,按照%5提成
  10. IOS应用程序多语言本地化解决方案