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 placeras skapas här: https://github.com/Sundsvallskommun
Kontakta Per Persson för beställning av repo.

Interna repos placeras skapas här: https://gitlab.sundsvall.seKontakta Per Persson för beställning av repo.

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. Döp om mappen från ditt applikationsnamn till “kod” och ersätt den befintliga “kod”-mappen i repot.

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

3.

...

När du har kodat klart och känner att det är dags att installera din applikation så är det några saker du behöver ha koll på.

...

Det finns två brancher

  1. Sandbox - En branch som helt enkelt fungerar som en sandlåda. Där kan du experimentera lite.

    1. Nås efter installation på: https://microservices.sundsvall.se/sandbox/{namnet på ditt repo}

  2. Master - Produktionsbranchen. Det som pushas hit avses vara produktionskod.

    1. Nås efter installation på: https://microservices.sundsvall.se/{namnet på ditt repo}

...

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.