为现有数据库开发Java CRUD的最佳框架是什么?

前端之家收集整理的这篇文章主要介绍了为现有数据库开发Java CRUD的最佳框架是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有一个 Java应用程序,在数据库(Oracle)上有许多配置表.我们希望有基于Web的GUI来设置这些表,我们目前通过SQL查询更新这些表.为数据库的子集开发CRUD的最简单方法是什么?这样做有没有基于Java的框架?

解决方法

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

@L_301_1@是一个可插拔的Java库,用于Spring / JPA支持的应用程序,它通过干净简单的UI提供标准的CRUD功能,过滤,JSR-303验证.
它提供用于界面定制的DSL,您可以随时从应用程序中插入/拔出它.

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

  1. @Administration( Booking.class )
  2. public class BookingAdministration {
  3.  
  4. public static ScopesConfigurationUnit scopes( final ScopesConfigurationUnitBuilder scopeBuilder ) {
  5. return scopeBuilder
  6. .scope( "All",all() )
  7. .scope( "Smoking Apartments",specification( smokingApartmentsSpec( true ) ) )
  8. .scope( "Non Smoking Apartments",specification( smokingApartmentsSpec( false ) ) )
  9. .scope( "Long-term bookings",filter( longTermBookingPredicate() ) ).defaultScope().build();
  10. }
  11.  
  12. public static FiltersConfigurationUnit filters( final FiltersConfigurationUnitBuilder filterBuilder ) {
  13. return filterBuilder
  14. .filter( "Customer","user" )
  15. .filter( "Booked Hotel","hotel" )
  16. .filter( "Check-In Date","checkinDate" ).build();
  17. }
  18.  
  19. public static FieldSetConfigurationUnit listView( final FieldSetConfigurationUnitBuilder fragmentBuilder ) {
  20. return fragmentBuilder
  21. .field( "user" ).caption( "Customer" )
  22. .field( "hotel" ).caption( "Hotel" )
  23. .field( "checkinDate" ).caption( "Check-In Date" )
  24. .field( "smoking" ).caption( "Smoking" )
  25. .field( "beds" ).caption( "Beds" )
  26. .build();
  27. }
  28.  
  29. public static DomainTypePredicate longTermBookingPredicate() {
  30. return new DomainTypePredicate() {
  31. @Override
  32. public boolean apply( final Booking booking ) {
  33. return booking.getNights() > 20;
  34. }
  35. };
  36. }
  37.  
  38. public static DomainTypeSpecification smokingApartmentsSpec( final boolean isSmokingApartment ) {
  39. return new DomainTypeSpecification() {
  40. @Override
  41. public Predicate toPredicate( final Root root,final CriteriaQuery<?> query,final CriteriaBuilder cb ) {
  42. return cb.equal( root.get( "smoking" ),isSmokingApartment );
  43. }
  44. };
  45. }
  46.  
  47. }

猜你在找的MsSQL相关文章