This is a simple to-do application made using spring boot and spring mvc. 😃
🔵 This is a Todo-Web-Application made using Spring Boot and Spring MVC. We can add, delete and update the todo list using this application. This application uses Spring-starter-security for login credentials.
🟣 The main Todo controller uses object of TodoRepository which is an interface which extends the JpaRepository from the Spring Data JPA.
🟢 For the database side we have an in-memory h2-database for querying and storing Todo data. There is also the use of JSTL tags used for looping and conditional processing in JavaServer Pages(JSP).
🟠 There is also the use of Spring-boot-devtools for automatic application restart simplifying the process of creating the application.
🟡 For the front-end side there are libraries like : bootstrap,jquery and bootstrap-datepicker. There is also the presence of raw CSS for styling some elements.
✅ When we run the application from the terminal, spring boot starter security provides us with a login check.
✅ The username and password are provided in class SpringSecurityConfig.java.
✅ After logging in we are redirected to the welcome page which is managed by the WelcomeController which has (@RequestMapping="/",method=RequestMethod.GET).
✅ From there we are directed to the list-todos page.
✅ We can add,delete and update todos in this page. At the start some todos are updated to the h2-database but thereafter we can edit it.
✅ Using the logout button we can exit from the page. Re-Login requires credentials again.
📗 Spring Boot is an open-source Java framework that makes it easy to create Spring-based applications. It provides a wide range of features that simplify the development and deployment process.
📗 Spring MVC is a Java framework that implements the Model-View-Controller (MVC) design pattern. It is part of the Spring Framework.
This Project is rather a simple project but there is a lot to learn from this. How annotation works? How spring works? What are controllers? How to use database? How to provide security? and many more.
This Project is open for contributions for making it better. So feel free to send a merge request. 😎