Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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://codestart.quarkusspring.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. Buildtool - Låt vara Maven.

    6. Version - Låt vara “1.0.0-SNAPSHOT”.

    7. Example code - Välj om du vill ha några exempelklasser. Om du väljer detta kommer paketstrukturen genereras, vilket kan vara skönt. Kom dock ihåg att ersätta exempelklasserna.

    Under “Pick your extensions
    1. Name - Återigen namnet på din applikation, fast “vanligt” namn.

    2. Description - En kortfattad beskrivning av applikationen.

    3. Packaging - Jar.

    4. 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:

    1. Image RemovedImage Added
  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:

Code Block
languagexml
<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):

Code Block
languagejava
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:

Code Block
languagejava
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.