we will talk about how we will go on in this course.
Also we talk about project structure that will be implemented in this course.
We will create a new project in this course.
And we will implement this project with using Spring Boot and MySQL. Then we will deploy to heroku or we can say that we will serve it from heroku.
In our project, we will implement CRUD operations. And these CRUD operations will be requested from Postman.
Then these requests will be handled from Spring Boot.
Our project will be Simple user management system.
Our main operations will be save user and list user.
We will have three main components to implement our project.
These are server side, client side and infrastructure.
In Server Side:
Spring Boot will be the main thing.
Model View Controller structure will be implemented with using Spring Boot.
Our MVC structure will work like that:
First of all, the entity classes will be created under model package.
Later, if model class is permanent, we will create a repository for it.
Then we will call repository from services.
Finally, we will call services from from controllers.
In Spring Boot, Data will be presented to client as API call so Spring Rest Controller will be used to handle it.
We will use MySQL as Database and we will use it on localhost and cloud. On cloud, we will create it via amazon web services. So we will also examine amazon RDS in this course.
We will also use Object Relational Mapping with Java Persistence API and Hibernate.
You know, We can map our database tables to objects with hibernate.
We will use JPA Repository and Crudrepository in Spring Boot.
So these repository templates will handle common database operations like save, update, find, delete.
With Spring Boot, we will also use Lombok library for clean code.
You know that we don't want to implement getter, setter, equals and hashcode. So we can escape it using Lombok @Data or @Value annotation.
We will use Gradle To handle all dependencies on the server side.
That's all about Server side.
Let's talk about the Client Side.
We will create endpoints with Spring boot.
And on the Client Side, we will test these endpoints with Postman.
With Postman, we can handle Authorization and basic Http methods.
Finally, we will deploy our project to heroku via Github repository. Then we will serve our project.