Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/brian-emarquez/learning-springboot

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can just run. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need minimal Spring configuration.
https://github.com/brian-emarquez/learning-springboot

java microservice spring-boot

Last synced: 23 days ago
JSON representation

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can just run. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need minimal Spring configuration.

Awesome Lists containing this project

README

        

Java | Learning SpringBoot 🍃







Stars


Forks
























Spring Boot es una de las tecnologías dentro del mundo de Spring de las que más se esta hablando últimamente.

| Name | Link | Proyect | Name Backend(Engine) |
|:------------:|:--------:|:-----------:|:------------------------:|
| Tesis| [Virtual Courses System](https://github.com/orgs/Ollarves/repositories) | SCV | EDITH |

### Installation

📦 [IntelliJ IDEA](https://www.jetbrains.com/idea/download/#section=windows) Download IntelliJ IDEA

📦 [Spring Tools IDE](https://spring.io/tools) Intalador de Spring Tools

📦 [JDK](https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html) Java SE Development Kit 8 Downloads

📦 [Lombok](https://projectlombok.org/download) Project Lombok

📦 [Maven](https://maven.apache.org/download.cgi) Downloading Apache Maven

📦 [Java SE Development Kit](https://www.oracle.com/pe/java/technologies/downloads/) Java Downloads

### Setting

Generar - Configurar Proyecto Spring Boot





[SPRINT.IO](https://start.spring.io/)

## Tabla de contenidos

| Numeration | Check | Topic | Quantization | Edit | Downloads | link |
| ------------ |--------|-------------- |----------------- |------------------ |---------------- |-------- |
| 001-004|:heavy_check_mark: | [Hola Mundo API](#Hola-Mundo-Spring-usando-controlador) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |
| 005 |:heavy_check_mark: | [Personalizar el puerto HTTP](#Personalizar-el-puerto-HTTP) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |
| 006 |:heavy_check_mark: | [Spring MVC](#Spring-MVC) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |
| 007 |:heavy_check_mark: | [Inversion Of Control](#Inversion-Of-Control) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |
| 008 |:heavy_check_mark: | [Spring MVC](#Spring-MVC) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |
| 009 |:heavy_check_mark: | [Teoria Inyeccion de Dependencias](#Teoria-Inyeccion-de-Dependencias) | | ☕ | 💾 | [ ⬅️ Atras](https://github.com/brian-emarquez) |

---

### Commands

```bash
netstat -ano | findstr LISTENING | findstr 8080
```

```bash
taskkill /PID 1234 /F
```

```bash
mvn spring-boot:run
```

```bash
mvn clean install
```

---

|Numeration | File | Link | Folk | Code | Version | State | Download | Go back |
|:----------:|:------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
| 001 | [Spring Boot](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/Spring%20Boot) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |

## Hola Mundo Spring usando controlador

**Creacion de un Proyecto Spring**

[Spring.io](https://start.spring.io/)





**Configuracion de un Proyecto Spring**

En este caso ajustamos la version a 11





**Execution**





```java
http://localhost:8080/
```

```java
@RestController
public class HomeController {

@GetMapping("")
public String inicio() {
return "Hola Mundo";
}
}
```

|Numeration | File | Link | Folk | Code | Version | State | Download | Go back |
|:----------:|:------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
|002 | [Hola Mundo Spring usando controlador](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/holaMundoSpring) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |
|003 | [Hola Mundo Spring usando controlador 2](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/HolaMundoSpring2) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |
|004 | [Hola Mundo Thymeleaf ](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/HolaMundoThymeleaf) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |

## Personalizar el puerto HTTP

_SE PUEDE DECLARAR PROPIEDADES PARA CAMBIAR VALORES_
_CAMBIO DE PUERTO_

```java
# server.port=7070
```

---

## Spring MVC

- Spring MVC utiliza una arquitectura de aplicaciones seguiendo el patro de diseño MVC (Mode View Controller)
- Spring MVC es un framework web basado en Servlets que viene incluido en Spring Framenwork (Spring-webmvc)
- Spring MVC esta diseñado sifuiendo el patron de diseño Front Controller
- En Spring MVC el Front Controller es mejor conocido como DispatcherServlet

**Funciones** Enviar peticiones(request) a lo manejadores (handlers) para que sean preocesadas

- A Partir de Spring 4.0 se pueden crear RRESFUL Web servives utilizando la anotacion `@RestController`, `@PathVariable`

- Basado en Spring IOC container (Inyeccion de Dependencias)
- Spring MVC se integra facil con otros proyectos de Spring:

* Spring BooT
* Spring Data JPA
* Spirng Security
* Sprint REST

**Ventajas**

- Inyeccion de dependencias (Favorece el "loose coupling")
- Desarrollo sencillo con POJOs (PLain Old Java Object)
- Minimiza el codigo repetitivo (boilerplate code)
- Simplifica el acceso a datos
- Programacion Orientada a Aspectos(AOP): Modularidad Muy alta.

**Modulos**

Core

Infraestructura
Acceso a datos
Contenedor central
Web/MVC
Pruebas

AOP
Aspects
Messaging
Instrumentation

JDBC
Transactions
ORM(Object Relational Mapping)

Beans
Beans
Spel
Context
Core

Servlets
WebRocket
Portlet
Web

Unit
Mock
InTegration

## Inversion Of Control

- Invierte el flujo de control del programa, externalizando(agente externo: framework) la contruccion y manejo de objetos

_Ventajas_

- Proporciona modularidad
- Permite amplair la funcionalidad de nuestras aplicaciones son modificar las clases
- Evita la dependencia entre clases
- Flexibiliza nustras aplicaciones haciendolas mas configurables

|Numeration | File | Link | Folk | Code | Version | State | Download | Go back |
|:----------:|:------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
|005 | [Inversion Of Control](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/InversionOfControl) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |
|006 | [Inversion Of Control 2](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/InversionOfControl2) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |

## Spring MVC

**¿Que es un controlador de Spring MVC?**

-Un controlador (Controller) es Spring MVC) es una clase normal a la cual se le arega la anotacion `@controller` a novel de la clase.
- En Una aplicacion web estos metodos principalmente esta marcados con las anotaciones `@GetMapping`, `@PostMapping`, `@ResquestMapping`(Action Controller)
- Los Metodos pueden tener cualquier nombre y deben regresar un String (nombre de la vista)
- Los metodos son ejecutados al ser invocados por medio de la URL espefifica como parametro en las anotaciones `@GetMapping`, etc.

|Numeration | File | Link | Folk | Code | Version | State | Download | Go back |
|:----------:|:------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
|007 | [Spring MVC](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/SpringMVC) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |

## Teoria Inyeccion de Dependencias

|Numeration | File | Link | Folk | Code | Version | State | Download | Go back |
|:----------:|:------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|:-----------:|
|008 | [Teoria Inyeccion de Dependencias](https://github.com/brian-emarquez/Learning-SpringBoot/tree/main/SpringMVC) | ✔️ | ✔️ | yes | yes | ✔️ | 💾 | [⬅️Atras](#Spring-Boot-Learning) |

---

## Learning Java

- Aprende Java desde cero orientado a objetos hasta un nivel avanzado full stack

🏫 Link de Entrenamiento [Learning Java](https://github.com/brian-emarquez/Learning-Java)

## Spotify Java | Spring

🎵 Music Java | Spring [List on Spotify 🎤](https://open.spotify.com/playlist/1UMfu4axebdOMeM996K0xP?si=A-pW9orFSRegxZBWoMZp4w)

## Paypal Donation

🩸 Hacer una donación [PAYPAL](https://www.paypal.com/donate?hosted_button_id=98U3T62494H9Y) 🍵

## Licence

Todo acerca de la licencia [here](https://github.com/brian-emarquez/Learning-SpringBoot/blob/main/LICENCE)



A
B


C

E


F
G