Skip to content

This is a tutorial to create an application using Microservices, Spring-Boot, Spring-Cloud (Eureka), Hibernate and JSP (JSTL support). For logging, Logback framework is used. The IDE used is STS4.

Notifications You must be signed in to change notification settings

aman-1998/Microservices_Using_SpringBoot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



About:-

In Mahindra folder, a microservice named 'Mahindra-App' is there. Similarly, in Honda folder, a microservice named 'Honda-App' is there. Mahindra-App returns the information of all the products of Mahindra with different category(eg., Bike, Car, etc). And Honda-App returns the information of all the products of Honda with different category. These microservices return the data in JSON format.

These datas are received by another microservice Store-App which in the folder Store. These datas are then processed and passed to a JSP page. In JSP page, using JSTL taglibs data is presented.

To resolve urls of Mahindra-App and Honda-App inside Store-App, discovery service is used. Here, Eureka (one of the technology Spring-Cloud integrates with) is used as a Discovery Service. It is a Client-Side-Discovery-Service.

When all the microservices and Eureka server will run then these microservices(Eureka client) register themselves with the Eureka server.

Note:- Eureka server is also a Eureka client and it also register itself on the server. This is important because when we will be having multiple instances of Eureka server running then it is important for all Eureka servers to register themselves with each other so that even when one of the server fails, other instances of the server will provide the discovery service.

Eureka client updates its registration in every few seconds so that any change in Eureka client is immediately reflected on Eureka server.

When Eureka client shuts down or timeout happens then it is deregistered from Eureka server. At this time Eureka server does not have any information about the microservice.

When Store-App wants to communicate with Honda-App then it sends a GET request to the Discovery service. Inside Discovery service querying happens and then it send the response back to the Store-App. Now Store-App has the information required to communicate with Honda-App. And then actual communication takes place.

Some important links:-

1. https://docs.spring.io/spring-framework/docs/2.0.8/reference/spring-form.tld.html#spring-form.tld.input
2. https://docs.spring.io/spring-framework/docs/4.2.x/spring-framework-reference/html/spring-form-tld.html
3. https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/html/view.html
4. https://www.denisbouquet.com/css-forbid-selection-user-select-dragging-ghost-image/
5. https://pixabay.com/vectors/search/error/
6. https://studyeasy.org/spring/spring-mvc-minimal/
7. https://studyeasy.org/jstl/jstl-taglibs/
8. https://studyeasy.org/general/implicit-objects/
9. https://studyeasy.org/general/locale/
10. https://studyeasy.org/jsp/setting-up-jndi/
11. https://studyeasy.org/hibernate/hibernate-configuration-xml/
12. https://studyeasy.org/maven/java-11-on-maven/
13. https://www.codejava.net/frameworks/hibernate/how-to-make-hibernate-work-with-oracle-database
14. https://mvnrepository.com/artifact/org.springframework
15. https://mvnrepository.com
16. https://stackoverflow.com/questions/12745751/hibernate-sequencegenerator-and-allocationsize
17. https://newbedev.com/hibernate-sequencegenerator-and-allocationsize
18. https://discourse.hibernate.org/t/sequencegenerator-allocationsize-versus-increment-by/5070
19. https://discourse.hibernate.org
20. https://marketplace.eclipse.org
21. https://www.eclipse.org
22. https://shields.io
23. https://spring.io/tools
24. https://codepen.io/ankithingarajiya/pen/jjOxMo
25. https://support.oracle.com/knowledge/Oracle%20Database%20Products/2287819_1.html#CAUSE
26. https://docs.spring.io/spring-framework/docs/4.2.x/spring-framework-reference/html/spring-form-tld.html
27. https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/html/view.html
28. https://docs.spring.io/spring-framework/docs/2.0.8/reference/spring-form.tld.html#spring-form.tld.input
29. https://www.tutorialspoint.com/jsp/jsp_expression_language.htm
30. https://howtodoinjava.com/spring-mvc/spring-mvc-display-validate-and-submit-form-example/
31. https://howtodoinjava.com/spring-mvc/spring-mvc-resourcebundleviewresolver-configuration-example/
32. https://mkyong.com/spring-mvc/spring-mvc-form-check-if-a-field-has-an-error/
33. https://docs.oracle.com/cd/E17802_01/j2ee/j2ee/1.4/docs/tutorial-update2/doc/JSPIntro7.html
34. https://www.flaticon.com/search?word=cross&type=icon
35. https://pixabay.com/vectors/search/error/
36. https://freepngimg.com/png/15560-red-cross-mark-png-file
37. https://www.pngwing.com/en/free-png-bhnfk
38. https://www.youtube.com/watch?v=lYI9w7I4N0I
39. https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator/7.0.2.Final
40. https://docs.jboss.org/hibernate/validator/3.1/reference/en/html_single/
41. https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#validator-gettingstarted
42. https://www.baeldung.com/spring-validation-message-interpolation
43. https://stackoverflow.com/questions/15498724/tomcat-server-not-starting-with-in-45-seconds
44. https://stackoverflow.com/questions/39632667/how-do-i-kill-the-process-currently-using-a-port-on-localhost-in-windows
45. https://www.youtube.com/watch?v=4IjsEgNNl88
46. https://mvnrepository.com/artifact/org.hibernate/hibernate-core/5.6.5.Final
47. https://stackoverflow.com/questions/13388045/oracle-data-source-configuration-for-spring
48. https://howtodoinjava.com/java/regex/java-regex-validate-email-address/
49. https://www.w3schools.com/java/java_regex.asp
50. https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc8/21.4.0.0.1
51. https://www.javatpoint.com/spring-mvc-requestparam-annotation
52. https://initialcommit.com/blog/pass-data-from-jsp-to-spring-controller
53. https://stackoverflow.com/questions/6989711/spring-mvc-pre-populate-checkboxes
54. https://stackoverflow.com/questions/1900843/how-to-compare-two-object-variables-in-el-expression-language
55. https://stackoverflow.com/questions/15875301/how-to-make-spring-form-as-read-only
56. https://stackoverflow.com/questions/1271641/in-sql-is-update-always-faster-than-deleteinsert
57. https://stackoverflow.com/questions/29075047/spring-validation-exception-bindexception
58. https://www.youtube.com/playlist?list=PLsyeobzWxl7ps4Z1C4VMtvZEx5-PgyoYI
59. https://restfulapi.net/http-status-codes/
60. https://www.restapitutorial.com/httpstatuscodes.html
61. https://stackoverflow.com/questions/4738817/error-in-hibernate-cfg-xml
62. https://stackoverflow.com/questions/42065877/entitymanagerfactory-is-closed-hibernate
63. https://www.ques10.com/p/29518/what-do-you-mean-by-json-why-use-json-over-xml/
64. https://spring.io/projects/spring-hateoas
65. https://spring.io/guides/gs/rest-hateoas/
66. https://www.baeldung.com/hibernate-one-to-many
67. https://mkyong.com/hibernate/hibernate-parameter-binding-examples/
68. https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.first-application
69. https://docs.spring.io/spring-boot/docs/1.4.x/reference/html/common-application-properties.html
70. https://www.codejava.net/frameworks/spring-boot/connect-to-oracle-database-examples
71. https://www.bezkoder.com/spring-boot-hibernate-oracle/
72. https://spring.io/guides/gs/accessing-data-mysql/
73. https://www.baeldung.com/sql-logging-spring-boot
74. https://www.baeldung.com/spring-open-session-in-view
75. https://stackoverflow.com/questions/44839753/returning-json-object-as-response-in-spring-boot
76. https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc
77. https://www.baeldung.com/spring-request-response-body
78. https://www.springboottutorial.com/spring-boot-hateoas-for-rest-services
79. https://www.baeldung.com/hibernate-5-spring
80. https://www.onlinetutorialspoint.com/spring-boot/spring-boot-hibernate-integration-example.html
81. https://www.baeldung.com/spring-data-jpa-query
82. https://stackoverflow.com/questions/30528255/how-to-access-a-value-defined-in-the-application-properties-file-in-spring-boot
83. https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config
84. https://howtodoinjava.com/hibernate/hibarnate-build-sessionfactory/
85. https://howtodoinjava.com/spring-boot2/logging/multiple-log-files/
86. https://logback.qos.ch/manual/layouts.html#conversionWord
87. https://logback.qos.ch/manual/filters.html
88. https://logback.qos.ch
89. https://www.baeldung.com/spring-controller-vs-restcontroller
90. https://www.baeldung.com/logback
91. https://tedblob.com/logback-multiple-log-files/?amp=1
92. https://examples.javacodegeeks.com/enterprise-java/logback/logback-additivity-example/
93. https://stackoverflow.com/questions/24180772/logback-logger-logging-twice
94. https://howtodoinjava.com/spring-boot2/rest/rest-with-spring-hateoas-example/
95. https://www.baeldung.com/spring-resttemplate-json-list
96. https://www.nginx.com/blog/service-discovery-in-a-microservices-architecture/
97. https://www.baeldung.com/spring-webclient-resttemplate
98. https://spring.io/guides/gs/service-registration-and-discovery/
99. https://start.spring.io
100. https://stackoverflow.com/questions/41230164/eureka-unknownhostexception-in-service-discovery
101. https://www.youtube.com/watch?v=xruvRk1Uf5I
102. https://www.youtube.com/watch?v=TxjIlNYRZ5M
103. https://www.youtube.com/watch?v=y8IQb4ofjDo&list=PLqq-6Pq4lTTZSKAFG6aCDVDP86Qx4lNas
104. https://www.youtube.com/watch?v=PdxPp-cn7bI
105. https://spring.io/projects/spring-cloud

About

This is a tutorial to create an application using Microservices, Spring-Boot, Spring-Cloud (Eureka), Hibernate and JSP (JSTL support). For logging, Logback framework is used. The IDE used is STS4.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published