diff --git a/.DS_Store b/.DS_Store index 26af2ca..a08b580 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..6a6ec1c --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +## Simple HTTP Service (M13) + +

+ spring-long + java + mysql + javascript + jquery + html-5 + css-3 + bootstrap + mysql + postman + eclipse + visual-studio-code +

+ +## Introduction + +Backend of Rest API CRUD with H2 Persistence Database. Developed with Spring boot and applying design pattern MVC. + +Frontend with Javascript & Jquery to consume & send Jsons to the Rest API and HTML, CSS with libraries Bootstrap & Datatables to show & interact with the user. + + +link: https://employee-it.herokuapp.com/ + + +

+ + CRUD employees + +

+ +## Exercise Description [in Catalan] + +Exercici per aprofundir en peticions HTTP (GET, POST, PUT DELETE). Projecte realitzat amb Spring i amb patró MVC aplicat. + +### - Nivell 1 - (Rest API Spring) + +Realització d'una Rest API per fer peticions HTTP amb un CRUD (Create, Read, Update, Delete) al complet. Per això s'ha implementat un patró d'arquitectura MVC amb repositori en memòria. + +S'ha utilitzat Spring (Java) construït amb Maven amb les implementacions: +- Spring Boot DevTools. +- Spring Web. +- Thymeleaf +- Spring Data JPA. + +Crearem un programa de gestió d'empleats on depenent de la feina de l'empleat se li assignarà un salari automàticament. D'un treballador identifiquem el nom i la seva feina, estaria bé tenir un identificador únic per aquest treballador. Les feines són fixes, és a dir ja estan definits en un ENUMERABLE. Depenent de la feina s'assignarà un salari a l'empleat un cop es crea. + +Comprovació de peticions amb Postman. + +### - Nivell 2 - (Estructura HTTP i lògica JavaScript) + +Creació d'una web amb http/javascript/ajax per crear un formulari per poder provar les crides API de la Rest API anterior. +La web ha de poder fer el CRUD complet (Create, Read, Update, Delete) + +S'ha realitat la maqueta: +- Maqueta en HTML de la web. +- Creació del JavaScript e importa'l al índex.html. +- Importació de jQuery per poder fer les crides API. +- Creació funcions de JavaScript per fer les crides API. +- No cal que sigui visualment atractiu. Només ha de ser funcional. + + +### - Nivell 3 - (Disseny web amb CSS, Bootstrap i DataTable) + +Realització del disseny estètic de la web mitjançant CSS, Bootstrap. S'ha implementat la llibreria DataTables per poder afegir funcionalitats a la taula d'empleats. + +Implementació de base de dades persistent MySQL i creació de dos perfils de propietats per alternar entre MySQL i H2 (BD en memòria) + diff --git a/screenshots/M13-Employee CRUD HTTP SERVICE.jpg b/screenshots/M13-Employee CRUD HTTP SERVICE.jpg new file mode 100644 index 0000000..71da21c Binary files /dev/null and b/screenshots/M13-Employee CRUD HTTP SERVICE.jpg differ diff --git a/src/main/resources/.DS_Store b/src/main/resources/.DS_Store index 5008ddf..a580bdf 100644 Binary files a/src/main/resources/.DS_Store and b/src/main/resources/.DS_Store differ diff --git a/src/main/resources/application-mysql.properties b/src/main/resources/application-mysql.properties index 3525397..c2266b6 100644 --- a/src/main/resources/application-mysql.properties +++ b/src/main/resources/application-mysql.properties @@ -1,6 +1,6 @@ ##-- Mysql BD persistent --## -spring.datasource.url = jdbc:mysql://localhost:3306/m13_employee +spring.datasource.url = jdbc:mysql://localhost:3306/m13_employee?createDatabaseIfNotExist=true spring.datasource.username = root spring.datasource.password = @@ -10,5 +10,5 @@ spring.jpa.show-sql = true spring.jpa.hibernate.ddl-auto = update -spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect +spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 4cba757..0bc1901 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,7 +1,11 @@ -#-- Perfil "mysql" per treballar amb una Base de Dades persistent i "H2" per treballar amb una Base de Dades en memoria +#-- Profile "mysql" to work with persistent DataBase and "H2" to work with in memory DataBase -spring.profiles.active=mysql +spring.profiles.active = mysql -# (Test) Introdueix 11 entitats de prova a la base de dades -# Si s'eliminen tornen a crear-se al recarregar el projecte -spring.datasource.initialization-mode=always +# (Test) Populate the DataBase +# If some data is removed they will be recreated when you restart the app +spring.datasource.initialization-mode = always + +# Allow Thymeleaf templates to be reloaded at dev time +# AutoBuild should be as well activated Project > Build Automatically +spring.thymeleaf.cache: false diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html index 8f7221f..8fec7a0 100644 --- a/src/main/resources/templates/index.html +++ b/src/main/resources/templates/index.html @@ -2,7 +2,8 @@ - + + Spring - Crud Empleats @@ -25,7 +26,7 @@ - + @@ -84,7 +85,7 @@
Exercici realitzat utilitzant: Spring Api Rest, Javascript, jquery i Bootstr