Skapa ny applikation (Java - Spring Boot)

Innan du sätter igång med detta, läs igenom: Utveckling
Där har vi författat viktiga saker att känna till som systemutvecklare på Sundsvalls Kommun.

1. Repository (repo)

Open-source repos skapas här: https://github.com/Sundsvallskommun

Interna repos skapas här: https://gitlab.sundsvall.se

2. Skapande av applikation

  1. Surfa in på: https://start.spring.io/ och ange följande:

    1. Project - Maven Project

    2. Spring Boot - Ta den senaste stabila versionen, för tillfället 2.6.2

    3. Group - Ange se.sundsvall . Detta blir grunden i paketstrukturen.

    4. Artifact - Ange namnet på din applikation.

    5. Name - Återigen namnet på din applikation, fast “vanligt” namn.

    6. Description - En kortfattad beskrivning av applikationen.

    7. Packaging - Jar.

    8. Java - Minst 11

  2. Under “Dependencies” kan du lägga till Maven-dependencies. Följande kan vara bra att ha, men det är självklart beroende på vad du ska bygga:

  3. Klicka på “Generate your application” och ladda ned som .zip-fil.

  4. Packa upp innehållet till ditt repo.

  5. Nu är det äntligen dags att koda!

3. Biolerplatekod

Lägg till följande i pom:en för att exponera swagger-ui:

<dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.6.4</version> </dependency>

 

Skapa en klass för att snygga till OpenAPI-infon (Inte nödvändigt):

package se.sundsvall.demo; import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.info.Contact; import io.swagger.v3.oas.models.info.Info; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class OpenApiConfig { @Bean OpenAPI openApi() { return new OpenAPI() .info(new Info().title("Demo Application") .version("1.0.0") .description("Description") .contact(new Contact().name("Contact Name") .email("noreply@sundsvall.se") .url("https://sundsvall.se"))); } }

 

Skapa även en enkel Controller-klass för att ha någonting att anropa:

package se.sundsvall.demo; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping(value = "/demo") public class DemoResource { @GetMapping(value = "/helloThere") public ResponseEntity<String> helloThere() { return ResponseEntity.ok("General Kenobi!"); } }

 

För att starta applikationen kör: mvn spring-boot:run. Navigera sedan till http://localhost:8080/swagger-ui/index.html för att testa ditt API.