Cum se creează cel mai simplu serviciu Spring Boot Rest care ascultă pe portul 8081?
Publicat: 2020-08-18În acest tutorial vom trece peste pașii despre cum să creați cea mai simplă aplicație web Spring Boot care ascultă pe portul 8081?
Acest tutorial se bazează pe prima aplicație Spring Boot HelloWorld de mai jos din articolul IntelliJ IDEA.
Cum se creează prima aplicație Spring Boot HelloWorld în IntelliJ IDEA cu câțiva pași simpli?
Asigurați-vă că urmați tutorialul de mai sus și modificați pașii 4 și 5.
Să începem:
Pasul 1, 2 și 3.
Vă rugăm să urmați pașii 1, 2 și 3 de mai sus, tutorialul aplicației Spring Boot.
Pasul-4
- Vă rugăm să adăugați dependențe Web Spring Boot.
- Spring Web
- Servicii web de primăvară
- Jersey
- Faceți clic pe Următorul
Pasul-5
- Deschideți fișierul: CrunchifywebappApplication.java și puneți codul de mai jos.
- Vă rugăm să vă asigurați că schimbați numele pachetului și fișierului dacă vedeți vreo eroare.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
package com . example . crunchify . crunchifywebapp ; import org . springframework . boot . SpringApplication ; import org . springframework . boot . autoconfigure . SpringBootApplication ; import org . springframework . web . bind . annotation . GetMapping ; import org . springframework . web . bind . annotation . RequestParam ; import org . springframework . web . bind . annotation . RestController ; /** * @author Crunchify.com * First Spring Hello World Web Application which listens on port 8081. * Version: 1.0 */ // SpringBootApplication: Indicates a configuration class that declares one or more @Bean methods and also triggers auto-configuration and component scanning. // This is a convenience annotation that is equivalent to declaring @Configuration, @EnableAutoConfiguration and @ComponentScan. // RestController: A convenience annotation that is itself annotated with @Controller and @ResponseBody. // Types that carry this annotation are treated as controllers where @RequestMapping methods assume @ResponseBody semantics by default. @ SpringBootApplication @ RestController public class CrunchifywebappApplication { public static void main ( String [ ] args ) { // setProperty: Sets the system property indicated by the specified key. First, if a security manager exists, its SecurityManager.checkPermission method is called with a PropertyPermission(key, "write") permission. This may result in a SecurityException being thrown. // If no exception is thrown, the specified property is set to the given value. System . setProperty ( "server.port" , "8081" ) ; System . setProperty ( "http.maxConnections" , "10" ) ; // run: Static helper that can be used to run a SpringApplication from the specified source using default settings SpringApplication . run ( CrunchifywebappApplication . class , args ) ; } @ GetMapping ( "/crunchify" ) public String heyCrunchify ( @ RequestParam ( value = "name" , defaultValue = "there" ) String crunchify ) { return String . format ( "Hey %s! Congratulations on creating your first Spring Boot Rest Service... by https://crunchify.com" , crunchify ) ; } } |
Pasul-6
- Construiți proiect
- Faceți clic dreapta pe fișierul java și rulați ca aplicație
Ar trebui să vedeți mai jos ieșirea consolei.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Java HotSpot ( TM ) 64 - Bit Server VM warning : Options - Xverify : none and - noverify were deprecated in JDK 13 and will likely be removed in a future release . . ____ _ __ _ _ / \ \ / ___ '_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | ' _ | '_| | ' _ \ / _ ` | \ \ \ \ \ \ / ___ ) | | _ ) | | | | | | | ( _ | | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.3.3.RELEASE) 2020-08-17 13:07:33.379 INFO 71788 --- [ main] c.e.c.c.CrunchifywebappApplication : Starting CrunchifywebappApplication on LM-AUN-11022307 with PID 71788 (/Users/appshah/crunchify/intellij/crunchifywebapp/target/classes started by arpshah in /Users/appshah/crunchify/intellij/crunchifywebapp) 2020-08-17 13:07:33.380 INFO 71788 --- [ main] c.e.c.c.CrunchifywebappApplication : No active profile set, falling back to default profiles: default 2020-08-17 13:07:33.771 INFO 71788 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean ' org . springframework . ws . config . annotation . DelegatingWsConfiguration ' of type [org.springframework.ws.config.annotation.DelegatingWsConfiguration$EnhancerBySpringCGLIB$a474bef9] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 2020-08-17 13:07:33.814 INFO 71788 --- [ main] .w.s.a.s.AnnotationActionEndpointMapping : Supporting [WS-Addressing August 2004, WS-Addressing 1.0] 2020-08-17 13:07:33.949 INFO 71788 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8081 (http) 2020-08-17 13:07:33.954 INFO 71788 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2020-08-17 13:07:33.954 INFO 71788 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.37] 2020-08-17 13:07:34.015 INFO 71788 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2020-08-17 13:07:34.016 INFO 71788 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 606 ms 2020-08-17 13:07:34.117 INFO 71788 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService ' applicationTaskExecutor ' 2020-08-17 13:07:34.202 INFO 71788 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http) with context path ' ' 2020 - 08 - 17 13 : 07 : 34.210 INFO 71788 --- [ main ] c . e . c . c . CrunchifywebappApplication : Started CrunchifywebappApplication in 1.018 seconds ( JVM running for 1.418 ) |

Iată fișierul meu pom.xml cu toate dependențele web:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
<? xml version = "1.0" encoding = "UTF-8" ?> < project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns : xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi : schemaLocation = "http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 < / modelVersion > < parent > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - parent < / artifactId > < version > 2.3.3.RELEASE < / version > < relativePath / > < ! -- lookup parent from repository -- > < / parent > < groupId > com . example . crunchify < / groupId > < artifactId > crunchifywebapp < / artifactId > < version > 0.0.1 - SNAPSHOT < / version > < name > crunchifywebapp < / name > < description > Crunchify ' s Hello World Web project for Spring Boot < / description > < properties > < java . version > 11 < / java . version > < / properties > < dependencies > < dependency > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - jersey < / artifactId > < / dependency > < dependency > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - web < / artifactId > < / dependency > < dependency > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - web - services < / artifactId > < / dependency > < dependency > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - test < / artifactId > < scope > test < / scope > < exclusions > < exclusion > < groupId > org . junit . vintage < / groupId > < artifactId > junit - vintage - engine < / artifactId > < / exclusion > < / exclusions > < / dependency > < / dependencies > < build > < plugins > < plugin > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - maven - plugin < / artifactId > < / plugin > < / plugins > < / build > < / project > |
Să începem testul nostru:
Testul-1
Accesați adresa URL: http://localhost:8081/crunchify
Testul-2
Accesați adresa URL: http://localhost:8081/crunchify?name=Crunchify
Felicitări. Ați creat cu succes aplicația web Spring Boot în cel mai scurt timp.