SpringBoot 시작하기 0. SpringCLI에서 Hello World
7226 단어 SpringBoot자바
소개
직장에서 Spring(Framework)을 사용하게 되었기 때문에
이전부터 흥미가 있던 SpringBoot를 만져보기로 했다.
덧붙여서 SpringBoot≠SpringFramework이지만 프라이빗에서는 굳이 SpringBoot를 선택.
이번에는 SpringBoot 전에 SpringCLI를 사용해보십시오.
환경
소프트웨어
버전
OS
Windows10 Pro
자바
OpneJDK 12.0.2
Spring CLI
v2.3.5.RELEASE
구현
1. SpringCLI를 떨어뜨린다.
공식 입문 문서(일본어) 에 기재되어 있다 spring-boot-cli-2.3.5.RELEASE-bin.zip
를 떨어뜨려 해동.
압축을 푼 후 폴더 아래의 spring-2.3.5.RELEASE\bin
폴더를 경로에 통과시킵니다.
이제 spring 명령을 사용할 수 있습니다.
시도에 다음 명령을 실행하여 버전이 반환되면 설치 성공.
버전 확인 명령spring version
실행 결과C:\>spring version
Spring CLI v2.3.5.RELEASE
2. REST API용 코드 구현
PC 상의 어느 곳이라도 좋기 때문에 REST API용의 코드를 쓴다.
공식 입문 문서에서는 Groovy로 쓰고 있지만, Java라도 좋다.
【Java】app.java@RestController
public class Test {
@RequestMapping("/")
public String home() {
return "Hello World!";
}
@RequestMapping("/sb")
public String helloSb() {
return "Hello SpringBoot!";
}
}
【Groovy】app.groovy@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
"Hello World!"
}
@RequestMapping("/sb")
String helloSb() {
"Hello SpringBoot!"
}
}
덧붙여서 상기 정도라면 import문은 불필요. (IDE로 하면 컴파일 에러 표시 나오는데)
3. 실행
REST API용 소스 코드가 있는 곳에서 다음 명령을 실행합니다.
spring run app.java
그러면 다음 메시지가 표시되고 REST API 응용 프로그램이 시작됩니다.
필요한 라이브러리는 자동으로 DL되어있는 모양.
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: 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(マシン名) 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. 가동 확인
다음에 액세스해 봅니다.
http://localhost:8080/
http://localhost:8080/sb
오~ 좋아요~
요약
SpringCLI만으로 속공으로 REST API가 생겼다. (문자열 반환하지만)
이 시점이라면 IDE조차 불필요.
굉장히 간단한 API 모의 만든다면 이것이라도 좋을지도 모른다.
다음 번은 SpringBoot의 제대로 했습니까? 응용 프로그램을 만들고 싶습니다.
참고
공식 입문 문서(일본어)
Reference
이 문제에 관하여(SpringBoot 시작하기 0. SpringCLI에서 Hello World), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/suganury/items/c9284a13b96f0a626d4d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
소프트웨어
버전
OS
Windows10 Pro
자바
OpneJDK 12.0.2
Spring CLI
v2.3.5.RELEASE
구현
1. SpringCLI를 떨어뜨린다.
공식 입문 문서(일본어) 에 기재되어 있다 spring-boot-cli-2.3.5.RELEASE-bin.zip
를 떨어뜨려 해동.
압축을 푼 후 폴더 아래의 spring-2.3.5.RELEASE\bin
폴더를 경로에 통과시킵니다.
이제 spring 명령을 사용할 수 있습니다.
시도에 다음 명령을 실행하여 버전이 반환되면 설치 성공.
버전 확인 명령spring version
실행 결과C:\>spring version
Spring CLI v2.3.5.RELEASE
2. REST API용 코드 구현
PC 상의 어느 곳이라도 좋기 때문에 REST API용의 코드를 쓴다.
공식 입문 문서에서는 Groovy로 쓰고 있지만, Java라도 좋다.
【Java】app.java@RestController
public class Test {
@RequestMapping("/")
public String home() {
return "Hello World!";
}
@RequestMapping("/sb")
public String helloSb() {
return "Hello SpringBoot!";
}
}
【Groovy】app.groovy@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
"Hello World!"
}
@RequestMapping("/sb")
String helloSb() {
"Hello SpringBoot!"
}
}
덧붙여서 상기 정도라면 import문은 불필요. (IDE로 하면 컴파일 에러 표시 나오는데)
3. 실행
REST API용 소스 코드가 있는 곳에서 다음 명령을 실행합니다.
spring run app.java
그러면 다음 메시지가 표시되고 REST API 응용 프로그램이 시작됩니다.
필요한 라이브러리는 자동으로 DL되어있는 모양.
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: 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(マシン名) 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. 가동 확인
다음에 액세스해 봅니다.
http://localhost:8080/
http://localhost:8080/sb
오~ 좋아요~
요약
SpringCLI만으로 속공으로 REST API가 생겼다. (문자열 반환하지만)
이 시점이라면 IDE조차 불필요.
굉장히 간단한 API 모의 만든다면 이것이라도 좋을지도 모른다.
다음 번은 SpringBoot의 제대로 했습니까? 응용 프로그램을 만들고 싶습니다.
참고
공식 입문 문서(일본어)
Reference
이 문제에 관하여(SpringBoot 시작하기 0. SpringCLI에서 Hello World), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/suganury/items/c9284a13b96f0a626d4d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
spring version
C:\>spring version
Spring CLI v2.3.5.RELEASE
@RestController
public class Test {
@RequestMapping("/")
public String home() {
return "Hello World!";
}
@RequestMapping("/sb")
public String helloSb() {
return "Hello SpringBoot!";
}
}
@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
"Hello World!"
}
@RequestMapping("/sb")
String helloSb() {
"Hello SpringBoot!"
}
}
spring run app.java
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: 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(マシン名) 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)
SpringCLI만으로 속공으로 REST API가 생겼다. (문자열 반환하지만)
이 시점이라면 IDE조차 불필요.
굉장히 간단한 API 모의 만든다면 이것이라도 좋을지도 모른다.
다음 번은 SpringBoot의 제대로 했습니까? 응용 프로그램을 만들고 싶습니다.
참고
공식 입문 문서(일본어)
Reference
이 문제에 관하여(SpringBoot 시작하기 0. SpringCLI에서 Hello World), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/suganury/items/c9284a13b96f0a626d4d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(SpringBoot 시작하기 0. SpringCLI에서 Hello World), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/suganury/items/c9284a13b96f0a626d4d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)