3

Please do not skip my question due to its length and also please read it completely so that you can know why I am stuck.

My problem in short : How/Where I can learn the structure of a real world Java web application with sample code and explanation

My problem in details : I know basics things like inheritance, logging , MVC etc. I have completed programming tutorials on these topics, but only after I started to do some maintenance work of an application of a real world company, I realised that these basics and other things need to be properly and efficiently organised in an application. That application have code to automatically log what values are send to data base for debugging purpose, code to automatically load different property files in different environments and code to similar non business but essential functionalities I do not even know exist in the application. All that kind of codes for that application were already done and since it was a maintenance project I only had to add new pages, so I did not know how these functionalities were implemented and what other similar non business functionalities exists in the application.

Could you please let me know, Which book/tutorial/git hub/Video I have to learn to understand what non business functionalities needs to be present in a real world web application and how that should be put together. I would like to see complete code for a small dummy application with all these codes with explanation that I can download and go through each class by class to understand all these.

Can I call this architecture of the application or should I refer it as architecture of application at micro level ?

Thanks

Ajay
  • 55
  • 5
  • PS: I quit the company due to some personal reasons :( so I do not have access to that code anymore. That is why I can not refer the code, Also when the code was handed over to us for maintenance, it was already in a completed state and these functionalities and structure were already coded so not even the senior most person in our team know what kind of functionalities are there in the application and how those are organised and implemented. The just add new pages and fix something if it breaks. – Ajay Oct 05 '19 at 10:57

3 Answers3

0

Spring Framework Guru is a great resource for learning Spring, and building web applications. In particular, I would suggest you to go through the Spring Boot web application series. It's a step by step guide, and goes into all the aspects of building a web application in Spring, in a fairly detailed manner.

Links:

  1. Bootstrapping a Spring boot application

  2. Rendering Simple Pages using Thymeleaf (templating engine)

  3. Adding a data layer with Spring Jpa and performing CRUD operations

  4. Using Spring MVC to build a Controller and tying with the data layer

  5. Setting up authentication (and authorization) with Spring Security

  6. Going deeper into Spring Security with Auth Providers (optional)

The tutorials above will help you get started with the core ideas (and architecture) used in most web applications, and help you explore further.

priyank-sriv
  • 1,094
  • 6
  • 12
0

One good option is the online courses platforms like Udemy, you could easily find courses like this: https://www.udemy.com/course/spring-framework-5-beginner-to-guru . This is a beginner course and it's full of good practices. You can also find advanced courses: https://www.udemy.com/course/spring-core-advanced-beyond-the-basics/

CarlosSM
  • 63
  • 6
0

If I understood you correctly, you are not looking for a language centric features; but a more comprehensive knowledge of the components of an enterprise application?.

Unfortunately they don't teach this skill in school. And there is a reason. The architecture of an application depends mainly on the business function. Each architecture differs with the type of business function it performs. Adding to this complexity, there is the cloud infrastructure architecture too. Both of these compliments each other.

Many of these are skills you will acquire on the job. You develop an intuition after reading many lines of codes for many years. However, you can advance your pace by following the stalwarts of the industry. One such guy is Martin Fowler. His book Patterns of Enterprise Application Architecture is a good start. He has compiled a list of best practices and architectural considerations you need to follow while designing an enterprise application.

rptony
  • 1,024
  • 1
  • 12
  • 22