-
Based on SpringBoot,IntelliJ, I used Java and Thymeleaf to develop a web application for issues tracking for learning SpringBoot.
-
The TopPage is shown like below.
TopPage
-
When I click the Issue List link, it will go to the list page. And we could click the link to return TopPage, and go to the issue submit page.
List Page
-
For issue submit page, summary and description will be input and sent to the controller. Then it will be stored in the model and shown in the view, that is the List page.
Submit Page
Input
New issues will be added in to the List Page
Detail Page
-
Therefore, for frontend, there are four html files.
- index.html for showing the top page.
- list.html for showing the issues list on list page.
- detail.html for showing the details of each issue on detail page.
- creationForm.html for showing the input form on the issue submit page.
-
Misunderstood concept
- MVC(Model View Controller) is a design pattern for presentation layer, and it's triangular. User interacts with Controller and see View. View could be updated directly from Model. And Controller can manipulate the Model. Microservice
- Three-tier architecture is system architecture for the whole system,and it's linear. Presentation tier send request and get respond from Business Logic tier. Business Logic Tier send query and get respond from Data Access Tier.Macroservice.
- Code is implemented based on three-tier architecture.
- Presentation tier: Firstly, we created IndexController class to return the index.html to the view. And IssueController return the list.html,detail.html,creationForm.html to the view and pass the input data from creationForm.html to model. An IssueForm class for the input data.
- Business Logic tier: IssueService class to get selected results and add new elements to the data access tier. And IssueEntity for the issue entity includes id, summary and description.
- Data Access tier: Insert and select from the database.