类似Django的Java框架
我是一名Java开发人员。有没有Django/RubyonRails之类的Java框架? 我不喜欢为我做的每个项目创建管理面板。一次又一次地做同样的事情是很无聊的。 另外,对于我的新项目,我的截止日期很短,我想使用某种Java框架来加快开发速度。看看Grails:类似Django的Java框架,java,django,frameworks,Java,Django,Frameworks,我是一名Java开发人员。有没有Django/RubyonRails之类的Java框架? 我不喜欢为我做的每个项目创建管理面板。一次又一次地做同样的事情是很无聊的。 另外,对于我的新项目,我的截止日期很短,我想使用某种Java框架来加快开发速度。看看Grails: 最近我发现了一个非常像django的框架。它被称为playframework,您可以在这里找到它: 我建议你看头版的视频 另一个基于Java的类似django的框架是SpringRoo,但我认为它还没有完全准备好。上次我使用它时,文
最近我发现了一个非常像django的框架。它被称为playframework,您可以在这里找到它: 我建议你看头版的视频 另一个基于Java的类似django的框架是SpringRoo,但我认为它还没有完全准备好。上次我使用它时,文档几乎不存在
Django可以使用jython在jvm中运行, 更多信息请点击此处 另外,对于我的新项目,我的最后期限很短,我想使用某种java框架来加快开发 对于使用我不熟悉的框架来完成一个期限很短的项目,我会非常谨慎。这听起来像是一个超期的秘诀。坚持使用您已经熟悉的技术。。。等待一个期限更宽松的项目,这样你就有时间犯一些错误。看看Spring/JPA支持的web应用程序 通常,在web应用程序开发中,您需要某种具有可用UI的管理后端,而一直从头开始开发它并在将来维护它是很无聊的 就我个人而言,我为我的Java项目解决了这个问题,只需插入LightAdmin库并从DSL配置中进行一些定制 您只需在web.xml中声明Maven dependency&enable administration面板。在此之后,您将拥有一个功能丰富的UI,具有完整的CRUD支持、过滤、作用域、安全性等 LightAdmin管理面板自定义的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<Booking> longTermBookingPredicate() {
return new DomainTypePredicate<Booking>() {
@Override
public boolean apply( final Booking booking ) {
return booking.getNights() > 20;
}
};
}
public static DomainTypeSpecification<Booking> smokingApartmentsSpec( final boolean isSmokingApartment ) {
return new DomainTypeSpecification<Booking>() {
@Override
public Predicate toPredicate( final Root<Booking> root, final CriteriaQuery<?> query, final CriteriaBuilder cb ) {
return cb.equal( root.get( "smoking" ), isSmokingApartment );
}
};
}
}
@管理(Booking.class)
公共课预订管理{
公共静态范围配置单元范围(最终范围配置单元生成器范围生成器){
返回范围生成器
.scope(“全部”,全部())
.范围(“吸烟公寓”,规范(吸烟公寓规范(真实))
.范围(“无烟公寓”,规范(吸烟公寓规范(假))
.scope(“长期预订”,过滤器(longTermBookingPredicate()).defaultScope().build();
}
公共静态过滤器ConfigurationUnit过滤器(最终过滤器ConfigurationUnitBuilder过滤器生成器){
返回过滤器生成器
.filter(“客户”、“用户”)
.filter(“预订酒店”、“酒店”)
.filter(“签入日期”、“签入日期”).build();
}
公共静态FieldSetConfigurationUnit列表视图(最终FieldSetConfigurationUnitBuilder fragmentBuilder){
返回碎片生成器
.字段(“用户”).标题(“客户”)
.field(“酒店”)。标题(“酒店”)
.字段(“签入日期”).标题(“签入日期”)
.字段(“吸烟”).标题(“吸烟”)
.字段(“床”)。标题(“床”)
.build();
}
公共静态域TypePredicate longTermBookingPredicate(){
返回新的DomainTypePredicate(){
@凌驾
公共布尔应用(最终预订){
返回预订。getNights()>20;
}
};
}
公共静态域类型规范SmokingApartsSpec(最终布尔值isSmokingApartment){
返回新的DomainTypeSpecification(){
@凌驾
公共谓词toPredicate(最终根根、最终CriteriaQuery查询、最终CriteriaBuilder cb){
返回cb.equal(root.get(“吸烟”),IsSmoking公寓);
}
};
}
}
看看JHipster。
为什么它好
- 生成基于引导的GUI界面
- 生成的客户端代码基于nodejs和AngularJs
- 生成的服务器端代码基于Spring引导
- 单元测试和集成测试将自动生成
- 关于客户端和服务器端框架,您有多种选择
如果您想用Java为Web编写代码,还可以尝试Spring Framework或Play Framework。要生成GUI,可以使用Vaadin
- -对于数据库连接,我使用ORM,对于验证,我使用Hibernate Validator
还可以根据类中的字段使用自动生成getter/setter。我在我的项目中也使用了它,它帮助我编写更少的代码,并专注于使用我的编码技能必须解决的主要问题(如果我想在自动生成的方法中添加自定义代码,我可以稍后根据需要编写).感谢您的回复。使用play开发的应用程序能否在tomcat上运行?据我所知,您可以将所有文件打包成.war,然后部署到tomcat服务器上。但实际上没有必要这样做。您只需使用集成服务器,然后在前面使用http代理,如nginx/lighty。再次使用Thanaks。我必须从第三方在共享服务器上开发应用程序。我想第三方不允许我运行集成服务器。您应该注意,您是主要作者。虽然这是通过提供的公开信息,但我认为这不会降低您答案的价值(我投了赞成票)。不幸的是,这不再是开发的,它完全破坏了Spring Boot应用程序。注释标记为非建设性。至少添加一些链接,让我们互相帮助。请阅读此内容并遵循gui