Estoy muy perdido tratando de aprender mi primer framework (Spring MVC). ¿Debo intentar aprender un marco más básico como Play o Struts primero?

Spring Framework puede ser extremadamente confuso si está comenzando desde cero y no tiene a alguien a su alrededor que lo conozca bien. Hay muchas cosas que se supone que debes saber que no están detalladas para principiantes. Esperemos que no dejes que la frustración te obligue a dejar de fumar o te haga pensar que no eres lo suficientemente bueno para usarlo: todos han estado allí con Spring.

Si desea seguir buscando Spring Framework, le recomendaría que mire Spring Boot, que adopta un enfoque obstinado para configurar su proyecto y configura automáticamente algunas de las cosas que supuestamente debería conocer mágicamente.

Otra parte muy confusa sobre Spring Framework es que, si solo está tratando de entrar en él, arroja muchos (posiblemente) nuevos conceptos a la vez como Inyección de dependencia, Inversión de control, propiedades de configuración / entorno, servicio arquitectura orientada, y la lista continúa …

Es el marco más popular, con mucho, para las aplicaciones web Java y ciertamente ayudará a su carrera al conocerlo, si eso es lo que desea. Es mi marco de referencia porque lo conozco muy bien y facilita muchas cosas difíciles. Desafortunadamente, puede dificultar algunas cosas fáciles.

Sugeriría que sea muy simple, escriba un solo controlador que escupe su típico ‘Hola Mundo’. Luego traiga el paquete spring-boot-starter-thymeleaf y acostúmbrese a escribir plantillas Thymleaf / HTML. No me molestaría con JSP, si estás usando Spring, terminarás usando Thymeleaf. Después de eso, agregue formularios, etc. Luego, @Bean anotaciones @Service y @Bean y cómo funciona @Autowired . Una vez que comprenda cómo se conectan las cosas y cómo representar las páginas con datos, será mucho más fácil descubrir el resto (aunque para algunas cosas como Spring Security [para la autenticación / inicio de sesión del usuario], todavía no será así). fácil).

Hay algunos ejemplos buenos (aunque pequeños) en el sitio Spring Boot (Spring Boot), y todo el código fuente está en GitHub, por lo que puede consultar un proyecto en ejecución y comenzar desde allí, lo cual es muy útil.

Como dijiste, acabas de aprender Core Java, así que supongo que no has tocado la parte JavaEE, incluidos los contenedores de servlets, es decir, Tomcat o Jetty o JBoss, etc.

Antes de ir directamente a Spring MVC, ¿puedo pedirle que pase un par de horas en el Tutorial de Servlets? Pregunto porque lo que sea que haga la primavera, Servlet también puede hacerlo. ¿Pero por qué necesitamos Spring en primer lugar? Obtendrá respuesta eventualmente!

Ahora venga a Spring: spring.io es el mejor lugar para comenzar y también puede consultar Spring MVC Framework Tutorial. Debería comenzar a usar spring 4.x. Solo por mencionar que la primavera es más fácil de aprender que Struts.

¡Espero eso ayude!

  • Spring es un marco de Programación Orientada a Aspectos (AOP).
  • AOP complementa a OOP al proporcionar otra forma de pensar sobre la estructura del programa.
  • Hay algunas nuevas terminologías en AOP como Aspect, Punto de unión, Consejo, Pointcut … que pueden aturdirlo 😀

Entonces, antes de excavar en AOP, primero debe entender la OOP. Mi consejo es que primero intentes estudiar 1 del marco OOP, como struts 1, Struts 2 o JSF 2 …

Solo 1 de ellos, entonces puede pasar al trabajo de marco Spring.

Soy un gran admirador de la clase de John Purcell en Spring Framework. Fue la única clase que sentí que no era demasiado densa y de fácil acceso para alguien que buscaba dar el salto de principiante a intermedio (después de aprender OOP y patrones de diseño). Mi consejo es seguir su tutorial de 28 horas (!) Y luego tratar de pasar a cosas como Spring Boot. ¡Te quedarás atascado! Pero persevera. Una vez que conoces Spring, los conoces a todos.

Spring Framework es notoriamente difícil de aprender. Y por difícil, difícil se entiende.

Recomendaría aprender un framework Java diferente y más simple o probar un lenguaje diferente. Porque en algún momento la primavera simplemente no vale la pena.

Java Spark es bueno y también Akka.io. Mira en Vert.x. Además, está el juego! marco de referencia.

Me mudé de Java a Node.js porque Node-land es más sencillo y no he mirado hacia atrás desde entonces.

More Interesting

Tengo un código personalizado para mi sitio web, ¿cómo puedo integrarlo en WordPress?

Si quiero ser un buen desarrollador web, ¿cuál es la secuencia correcta para aprender lenguajes de programación?

Sé HTML 5, CSS, conceptos básicos de JavaScript y ASP .NET. ¿Qué más necesito saber para aprender MVC?

Cómo aprender el desarrollo front-end (lo básico) en una semana

Cómo seleccionar todos los elementos de un grupo por categoría y obtener los datos como una matriz en Laravel

Sabiendo cómo programar en, entre otros, HTML 5, CSS 3, JavaScript, jQuery, Bootstrap 4, PHP, MySQL y Python, quiero comenzar con el desarrollo web independiente. Tengo 15 años. ¿Debo mencionar mi edad a clientes potenciales?

Conozco Flask bastante bien y me gusta. ¿Hay alguna razón por la que me molestaría en aprender Django?

Tengo un sitio de WordPress de membresía, y quiero migrar a una nueva versión del sitio, construir con RoR. ¿Son Jekyll / Middleman buenas soluciones para esto?

Quiero desarrollar un sitio web para una escuela. ¿Qué tecnología o CMS debería preferirse?

¿Por qué necesito un servidor web?

Si quiero crear un sitio web para mi cliente, ¿quién tendrá que comprar el host y el dominio?

Quiero ser un desarrollador web de backend. ¿Puedo saltearme saltear HTML, CSS y JavaScript?

Soy una persona sin tecnología que quiere aprender a codificar para poder crear un negocio como Facebook, Airbnb, Uber, Twitter, etc. ¿Qué debo aprender?

Estoy familiarizado con JavaScript, Ruby y Scala. Para el desarrollo de backend, ¿debería aprender Node, Rails o Play?

Cómo implementar código Java mientras se usa AWS