[JAVA] À partir de Spring Boot 0. Utilisez Spring CLI

introduction

J'ai décidé d'utiliser Spring (Framework) au travail J'ai décidé de toucher Spring Boot, qui m'intéressait depuis longtemps. Au fait, Spring Boot ≠ Spring Framework, mais j'ose sélectionner Spring Boot en privé.

Cette fois, essayez d'utiliser Spring CLI avant Spring Boot.

environnement

Logiciel version
OS Windows10 Pro
Java OpneJDK 12.0.2
Spring CLI v2.3.5.RELEASE

la mise en oeuvre

1. Supprimez la CLI Spring.

Document d'introduction officiel (japonais) Déposez le spring-boot-cli-2.3.5.RELEASE-bin.zip et décompressez-le. Passez le dossier spring-2.3.5.RELEASE \ bin sous le dossier décompressé vers le chemin.

Vous pouvez maintenant utiliser la commande spring. Exécutez la commande suivante à titre d'essai et si la version est renvoyée, l'installation est réussie.

Commande de confirmation de version


spring version

Résultat d'exécution


C:\>spring version
Spring CLI v2.3.5.RELEASE

2. Implémentation du code pour l'API REST

Écrivez du code pour l'API REST, car il peut être n'importe où sur votre PC. Le document d'introduction officiel est écrit en Groovy, mais Java est également acceptable.

Java:【Java】app.java:


@RestController
public class Test {

    @RequestMapping("/")
    public String home() {
    	return "Hello World!";
    }

    @RequestMapping("/sb")
    public String helloSb() {
        return "Hello SpringBoot!";
    }

}

groovy:【Groovy】app.groovy:


@RestController
class ThisWillActuallyRun {

    @RequestMapping("/")
    String home() {
        "Hello World!"
    }

    @RequestMapping("/sb")
    String helloSb() {
        "Hello SpringBoot!"
    }

}

À propos, s'il s'agit du niveau ci-dessus, l'instruction d'importation n'est pas nécessaire. (Si vous le faites dans l'IDE, vous obtiendrez une erreur de compilation)

3. Exécuter

Exécutez la commande suivante où se trouve le code source de l'API REST.

spring run app.java

Ensuite, le message suivant s'affiche et l'application API REST est démarrée. Il semble que les bibliothèques nécessaires soient automatiquement téléchargées.


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.3.5.RELEASE)

2020-11-15 12:31:05.416  INFO 9532 --- [       runner-0] o.s.boot.SpringApplication               : Starting application on XXXXXXXXXX(Nom de la machine) with PID 9532 (started by xxxx in M:\develop\works\Spring\20201115_springboot_start)
2020-11-15 12:31:05.421  INFO 9532 --- [       runner-0] o.s.boot.SpringApplication               : No active profile set, falling back to default profiles: default
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (jar:file:/M:/develop/tools/Spring/spring-boot-cli-2.3.5.RELEASE-bin/spring-2.3.5.RELEASE/lib/spring-boot-cli-2.3.5.RELEASE.jar!/BOOT-INF/lib/groovy-2.5.13.jar!/) to method java.lang.Object.finalize()
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2020-11-15 12:31:06.384  INFO 9532 --- [       runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2020-11-15 12:31:06.394  INFO 9532 --- [       runner-0] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-11-15 12:31:06.394  INFO 9532 --- [       runner-0] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.39]
2020-11-15 12:31:06.426  INFO 9532 --- [       runner-0] org.apache.catalina.loader.WebappLoader  : Unknown class loader [org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader@6adca536] of class [class org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader]
2020-11-15 12:31:06.458  INFO 9532 --- [       runner-0] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2020-11-15 12:31:06.458  INFO 9532 --- [       runner-0] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 889 ms
2020-11-15 12:31:06.601  INFO 9532 --- [       runner-0] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2020-11-15 12:31:06.879  INFO 9532 --- [       runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2020-11-15 12:31:06.887  INFO 9532 --- [       runner-0] o.s.boot.SpringApplication               : Started application in 1.795 seconds (JVM running for 3.034)

4. Contrôle de fonctionnement

Essayez d'accéder à ce qui suit.

http://localhost:8080/ image.png

http://localhost:8080/sb image.png

Oh ~ bien ~: souriant:

Sommaire

L'API REST a été créée à la hâte uniquement avec la CLI Spring. (Il renvoie juste une chaîne de caractères) À ce stade, vous n'avez même pas besoin d'un IDE. Cela peut convenir si vous souhaitez créer une maquette d'API incroyablement simple.

Spring Boot est-il approprié la prochaine fois? Je veux faire une demande.

référence

Document d'introduction officiel (japonais)

Recommended Posts

À partir de Spring Boot 0. Utilisez Spring CLI
Utiliser Spring JDBC avec Spring Boot
Utiliser l'authentification de base avec Spring Boot
Utiliser le cache avec EhCashe 2.x avec Spring Boot
Apprentissage de Spring Boot [Début]
Télécharger avec Spring Boot
Comment utiliser MyBatis2 (iBatis) avec Spring Boot 1.4 (Spring 4)
Comment utiliser h2db intégré avec Spring Boot
Générer un code à barres avec Spring Boot
Hello World avec Spring Boot
Implémenter GraphQL avec Spring Boot
Démarrez avec Spring Boot
Bonjour tout le monde avec Spring Boot!
Téléchargement de fichiers avec Spring Boot
Spring Boot commençant par copie
Spring Boot à partir de Docker
Hello World avec Spring Boot
Définir des cookies avec Spring Boot
Ajouter un module avec Spring Boot
Premiers pas avec Spring Boot
Créer un micro service avec Spring Boot
Envoyer du courrier avec Spring Boot
Téléchargement de fichiers avec Spring Boot (ne pas utiliser de fichier en plusieurs parties)
gRPC sur Spring Boot avec grpc-spring-boot-starter
Créez une application avec Spring Boot 2
Déploiement à chaud avec le développement Spring Boot
Liaison de base de données avec doma2 (Spring boot)
Programmation Spring Boot avec VS Code
Jusqu'à "Hello World" avec Spring Boot
Créer une application d'enquête avec Spring Boot
Obtenez des résultats de validation avec Spring Boot
(Intellij) Hello World avec Spring Boot
Créez une application avec Spring Boot
Google Cloud Platform avec Spring Boot 2.0.0
Utiliser DBUnit pour le test Spring Boot
Comment utiliser ModelMapper (Spring boot)
J'ai essayé GraphQL avec Spring Boot
[Java] Intégration LINE avec Spring Boot
Utilisez thymeleaf3 avec le parent sans spécifier spring-boot-starter-parent dans Spring Boot
J'ai essayé Flyway avec Spring Boot
La coopération des messages a commencé avec Spring Boot
Hello World avec Eclipse + Spring Boot + Maven
Envoyez des notifications régulières avec LineNotify + Spring Boot
HTTPS avec Spring Boot et Let's Encrypt
Essayez d'utiliser Spring Boot avec VS Code
Démarrez le développement d'applications Web avec Spring Boot
Lancez l'application Nginx + Spring Boot avec docker-compose
Utiliser la méthode de requête DynamoDB avec Spring Boot
J'ai essayé l'initialisation paresseuse avec Spring Boot 2.2.0
Implémenter CRUD avec Spring Boot + Thymeleaf + MySQL
Implémenter la fonction de pagination avec Spring Boot + Thymeleaf
(IntelliJ + gradle) Hello World avec Spring Boot
Test de validation de classe de formulaire avec Spring Boot
Exécutez l'application WEB avec Spring Boot + Thymeleaf
Obtenez une authentification BASIC avec Spring Boot + Spring Security
Défi Spring Boot
Forme de botte de printemps
Spring Boot Rappelez-vous
gae + botte à ressort