This was an test evaluation assignment as part of GenerationSG Junior Fullstack Developer Bootcamp, Day 45.
Welcome to the course assessment for the Java & Spring Boot for Web Development module!
In this session, you will complete a project about creating a Todo list.
By the end of this session, you will be able to:
● Build a full stack application using Java.
● Complete a Spring project.
Welcome to the course assessment for the Java & Spring Boot for Web Development module!
In this session, you will complete a project about creating a Todo list.
By the end of this session, you will be able to:
● Build a full stack application using Java.
● Complete a Spring project.
Setup your spring project using org.generation as the company name.
Name your spring project as todolist.
You will develop a Simple Spring MVC Todo management web application using Spring Boot, Spring MVC, JPA and MySQL as a database.
-
Show all Todo list : Create a web page to display all Todo lists (the following UI is for illustration purposes. Feel free to do your own UI with the required information shown).
The table will list out all the information for the Todo list. Information to be retrieved from MySQL database.
-
Add Todo list: Create a web page to allow users to add their Todo list (the following UI is for illustration purposes. Feel free to do your own UI with the required information shown). Form should check for empty fields. Select of Target Date (challenger) should be restricted to greater than today’s date.
The form allows users to enter their Todo list details. When users click on the ‘Add’ button, the newly entered information will be added to the MySQL database.
-
Create a simple menu (navbar) to navigate to the 2 pages (Show TODO list and Add TODO list). You can apply BootStrap with 2 basic links for the 2 pages. You may use the Thymeleaf package for URL routing and mapping.
-
Export your data to csv or json file and submit together with .mwb file and your project folder.
Please place your SpringBoot solution in your github.
Per the assessment requirement, enclosed are the following documents.
- data.json ~ 6 records, inputted during tests
- todolist EER.mwb ~ MySQL Workbench EER Diagram
This is a screenshot of the finished assessment application.
Ans: This project was really tough, but I appreciate that it allowed me to gain a better, hands-on understanding of how the structure of an application works. I also value the importance of planning and designing a software application well from the beginning.
Ans: During my attempt to complete this assessment, MySQL Workbench (mac) crashed numerous times and gave me errors stating that port 8080 was already in use. These issues only added to my frustration, against the backdrop a looming deadline.
Ans: Another lecture covering similar projects or a detailed guided code-along recap of Task 3 would have been significantly helpful. However, I understand that the bootcamp is operating under a tight schedule.
Fortunately, the extension of the class submission deadline has helped alleviate the need, allowing me more time to analyze, refactor, test & iterate.