2010-02-09 19 views
21

Soy un desarrollador de Java. ¿Hay algún tipo de framework de Django/Ruby-on-Rails para Java? No me gusta crear el panel de administración para cada proyecto que hago. Es aburrido hacer lo mismo una y otra vez. También para mi nuevo proyecto tengo un plazo corto y me gustaría usar algún tipo de framework Java que acelere el desarrollo.Django como marco para Java

Respuesta

12

Recientemente me encontré con un marco que se parecía mucho a Django. Se llama playframework y se puede encontrar aquí:

http://playframework.org/

le sugiero que vea el video en la página principal.

Otro framework basado en django basado en Java es Spring Roo, pero en mi opinión no está del todo listo. La última vez que lo usé la documentación era prácticamente inexistente.

http://www.springsource.org/roo

+0

gracias por contestar. ¿Se puede desarrollar una aplicación utilizando play run en tomcat? – user267067

+0

Por lo que sé, puede empaquetar todos sus archivos en un .war que luego se puede implementar en un servidor tomcat. Pero no hay realmente necesidad de eso. Simplemente puede usar el servidor integrado y simplemente usar proxy http como nginx/lighty delante de eso. – Jens

+0

Thanaks nuevamente. Tengo que implementar la aplicación en un servidor compartido de un tercero. El tercero no me permitirá ejecutar el servidor integrado, supongo. – user267067

13

También para mi nuevo proyecto que tengo un plazo breve y me gustaría usar algún tipo de marco de Java eso acelera el desarrollo.

Sería prudente acerca de hacer un proyecto con una fecha límite corta usando un marco que no conozco. Parece una receta para los excesos de fecha límite. Seguir con la tecnología con la que ya está familiarizado ... y esperar un proyecto con fechas límite más relajadas en las que pueda darse el lujo de cometer algunos errores.

21

Eche un vistazo a LightAdmin pluggable administration interface para aplicaciones web respaldadas por Spring/JPA.

Por lo general, en el desarrollo de aplicaciones web, necesita tener algún tipo de back-end de administración con UI utilizable y es aburrido desarrollarlo desde cero todo el tiempo y mantenerlo en el futuro.

Personalmente, resolví esto para mis proyectos de Java simplemente conectando la biblioteca LightAdmin y haciendo algunas personalizaciones desde las configuraciones de DSL.

Todo lo que necesita hacer es declarar la dependencia de Maven & habilitar el panel de administración en su web.xml. Justo después de esto usted tiene una interfaz de usuario rica en características con soporte completo ABM, filtrado, alcances, seguridad, etc. DSL

LightAdmin 's, por ejemplo, la personalización panel de administración:

@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); 
     } 
    }; 
} 

} 
+4

debe tener en cuenta que usted es el autor principal. Aunque esta es información pública disponible a través de la página [lightadmin contribuidores] (https://github.com/la-team/light-admin/graphs/contributors), creo que no reduce el valor de su respuesta (lo voté arriba)) – Kariem

+0

Desafortunadamente, esto ya no está desarrollado y se rompe por completo una aplicación Spring Boot. – kravemir

2

Tener una mira JHipster. ¿Por qué es bueno?

  • Generar interfaz GUI basada en bootstrap.código del lado del cliente
  • generada es bajo en nodejs y AngularJS
  • código del lado del servidor generado se basa en el arranque de primavera
  • prueba de unidad e integración pruebas se generan automáticamente.
  • Tiene una amplia gama de opciones con respecto a los marcos del lado del cliente y del lado del servidor.

Estos puntos significan que desarrollará su desarrollo en conjuntos de herramientas y marcos de última generación. JHipster es mucho más que eso, eche un vistazo a: https://jhipster.github.io/

0

Puede probar también Spring Framework o Play Framework, si desea codificar en Java para la Web. Para generar la interfaz gráfica de usuario, puede utilizar Vaadin

Éstos son algunos de mis proyectos de la muestra en la primavera (He usado Sólo la primavera hasta el momento y parece que funciona bien para lo que quiero hacer):

También puede generar getters/setters automáticamente según los campos que tenga en sus clases usando Project Lombok. Lo uso también en mis proyectos, me ayuda a escribir menos código y concentrarme en los problemas principales que tengo que resolver usando mis habilidades de codificación (si deseo agregar un código personalizado en los métodos que generé automáticamente, puedo escribirlos más tarde como Necesito).

+0

Al menos agregue algunos enlaces, ayudémonos unos a otros. – AMAN77

+0

Lea este [cómo-responder] (http://stackoverflow.com/help/how-to-answer) y siga las instrucciones allí para proporcionar una respuesta de calidad. – thewaywewere