Would you recommend courses, books, documentation, or jumping straight to a project and googling things along the way? I have a solid foundation of Java and want to start learning how to develop web apps with it.

Any help much appreciated

6 points

The way I learned Spring was basically by just being pushed into a Java project that was using it right after I finished uni. Tbh it was a bit overwhelming but I was able to slowly wrap my head around it in about a month or two. It was also the first “real” framework I ever used. Ever since then I started to just jump right into projects and try to grasp the basic concepts of the frameworks used, since they are mostly quite similar and try to expand my knowledge from there on. At least for me this worked well for NestJS, Flask, Django and somehow also for stuff like angular and Android development but there I had to put up with some formerly unknown concepts.

permalink
report
reply
5 points

I ended up working for a company which had a large Spring project and learnt by working on that. It didn’t seem too hard once I got my head around autowiring.

That was ten years ago, still using XML configuration files, and once I started working on projects with annotations instead things became a lot easier.

permalink
report
reply
0 points

Same here. Went straight from University to working with Spring and learning by doing. By now you can actually use ChatGPT as a nice little mentor as well. It’s decent at explaining how things work if you don’t want to google everything.

permalink
report
parent
reply
1 point

When I was still at university, I started working on a place where Spring was used… they gave me a book called “Spring in Action” to read. I loved reading it and everything made much more sense after that… I highly recommend trying to get a deep understanding of something so central to an application like Spring before you start doing anything more advanced with it. You wouldn’t want to drive a F1 car without first learning how to do it properly, it may be fun at first but you’re likely to crash and burn.

permalink
report
parent
reply
3 points

If you want a book that does a really good job of explaining the basics and laying the foundation of Spring from the ground up, then I recommend Spring Start Here. It’s the book I wish I had when I started working on Spring (Boot) projects all those years ago.

permalink
report
reply
1 point

Thanks for the link!

permalink
report
parent
reply
2 points

Trial by fire. We were in the infancy stages of a project and the alternative OTS options were really bad for our use case. We had a project manager that really believed in our group and pointed us to the Spring framework as one they had used in the past to solve a number of the same issues we were facing at the time. I had mainly worked in very heavy custom Java environments (no frameworks, and very few third-party dependencies) so dropping into a Framework with actual rules/guidelines was so nice and I’m currently noodling out how to rewrite some of our legacy apps in Spring because of how much it slots into our workflows.

I don’t love programming books and find them very hard to follow, so I leaned heavily on Baeldung and StackOverflow for most of my questions. Like some of the other comments in this thread, I had a hard time understanding dependency injection since I had no prior experience with it, but man-oh-man is it useful.

permalink
report
reply
1 point

I was forced to use it because its the default web server framework at my mega-corp. I’ve been using it for almost 7 years now, and I think one of the reasons Spring is popular is because you can pick it up pretty easily if you’ve got an existing app with some examples to work in.

I think the only three core concepts you have to understand for Spring to make sense are (1) MVC architecture, (2) server-side templating and (3) dependency injection. If you have a reasonable idea of how these things work, you can muddle your way through the rest.

permalink
report
reply

Programming

!programming@beehaw.org

Create post

All things programming and coding related. Subcommunity of Technology.


This community’s icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

Community stats

  • 69

    Monthly active users

  • 320

    Posts

  • 3.3K

    Comments