分別用scala和java執行Spring Boot專案,並輸出HelloWorld
這個必須Mark一下!
用scala寫spring boot的資源好少,找的好辛苦
以下都是我在網上找的前輩們寫的,有些地方只能理解一點,但是是可以成功執行的!
我是在IDEA中用Maven構建的spring boot專案
pom.xml
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.your.mwfe</groupId> <artifactId>dingtalk</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>dingtalk</name> <description>a websocket dingtalk client</description> <!-- <parent> <groupId>org.apache</groupId> <artifactId>apache</artifactId> <version>8</version> <relativePath></relativePath> </parent> --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.3.RELEASE</version> <relativePath/> </parent> <repositories> <repository> <id>scala-tools.org</id> <name>Scala-tools Maven2 Repository</name> <!--- <url>http://scala-tools.org/repo-releases</url> --> <url>http://oss.sonatype.org/content/groups/scala-tools/</url> </repository> <repository> <id>spring-snapshots</id> <url>http://repo.spring.io/snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>spring-milestones</id> <url>http://repo.spring.io/milestone</url> </repository> </repositories> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.7</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mustache</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-websocket</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <!-- Import dependency management from Spring Boot --> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>1.5.2.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>2.12.2</version> </dependency> </dependencies> <pluginRepositories> <pluginRepository> <id>scala-tools.org</id> <name>Scala-tools Maven2 Repository</name> <!-- <url>http://scala-tools.org/repo-releases</url> --> <url>http://oss.sonatype.org/content/groups/scala-tools/</url> </pluginRepository> <pluginRepository> <id>spring-snapshots</id> <url>http://repo.spring.io/snapshot</url> </pluginRepository> <pluginRepository> <id>spring-milestones</id> <url>http://repo.spring.io/milestone</url> </pluginRepository> </pluginRepositories> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.scala-tools</groupId> <artifactId>maven-scala-plugin</artifactId> <version>2.15.2</version> <executions> <execution> <goals> <goal>compile</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> </plugins> </build> </project>
目錄:
好,我們先來看scala如何寫
注:上圖中“scala”資料夾需要自己建立,並“Mark Directory as”->“source Root”
AppConf.scala
import org.springframework.boot.autoconfigure.SpringBootApplication import org.springframework.web.bind.annotation.{RequestMapping, RestController} import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter @SpringBootApplication(scanBasePackages = Array("main.scala")) @RestController @RequestMapping(Array("/hello")) class AppConf extends WebMvcConfigurerAdapter{ @RequestMapping(Array("","/")) def index():String = { return "Hello World scala Spring boot":String } }
Runner.scala
import org.springframework.boot.SpringApplication
object Runner {
def main(args: Array[String]): Unit = {
SpringApplication.run(classOf[AppConf])
}
}
執行結果:
控制檯執行結果:
"C:\Program Files\Java\jdk1.8.0_151\bin\java" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\lib\idea_rt.jar=61201:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_151\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\rt.jar;E:\MyCodes\dingtalk\target\classes;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-mustache\1.5.3.RELEASE\spring-boot-starter-mustache-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter\1.5.3.RELEASE\spring-boot-starter-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot\1.5.3.RELEASE\spring-boot-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\1.5.3.RELEASE\spring-boot-autoconfigure-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-logging\1.5.3.RELEASE\spring-boot-starter-logging-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\ch\qos\logback\logback-classic\1.1.11\logback-classic-1.1.11.jar;C:\Users\123\.m2\repository\ch\qos\logback\logback-core\1.1.11\logback-core-1.1.11.jar;C:\Users\123\.m2\repository\org\slf4j\jcl-over-slf4j\1.7.25\jcl-over-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\slf4j\jul-to-slf4j\1.7.25\jul-to-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\slf4j\log4j-over-slf4j\1.7.25\log4j-over-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\yaml\snakeyaml\1.17\snakeyaml-1.17.jar;C:\Users\123\.m2\repository\com\samskivert\jmustache\1.13\jmustache-1.13.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-web\1.5.3.RELEASE\spring-boot-starter-web-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\1.5.3.RELEASE\spring-boot-starter-tomcat-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\8.5.14\tomcat-embed-core-8.5.14.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\8.5.14\tomcat-embed-el-8.5.14.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\8.5.14\tomcat-embed-websocket-8.5.14.jar;C:\Users\123\.m2\repository\org\hibernate\hibernate-validator\5.3.5.Final\hibernate-validator-5.3.5.Final.jar;C:\Users\123\.m2\repository\javax\validation\validation-api\1.1.0.Final\validation-api-1.1.0.Final.jar;C:\Users\123\.m2\repository\org\jboss\logging\jboss-logging\3.3.1.Final\jboss-logging-3.3.1.Final.jar;C:\Users\123\.m2\repository\com\fasterxml\classmate\1.3.3\classmate-1.3.3.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.8.8\jackson-databind-2.8.8.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.8.0\jackson-annotations-2.8.0.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.8.8\jackson-core-2.8.8.jar;C:\Users\123\.m2\repository\org\springframework\spring-web\4.3.8.RELEASE\spring-web-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-aop\4.3.8.RELEASE\spring-aop-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-beans\4.3.8.RELEASE\spring-beans-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-context\4.3.8.RELEASE\spring-context-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-webmvc\4.3.8.RELEASE\spring-webmvc-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-expression\4.3.8.RELEASE\spring-expression-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-websocket\1.5.3.RELEASE\spring-boot-starter-websocket-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-messaging\4.3.8.RELEASE\spring-messaging-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-websocket\4.3.8.RELEASE\spring-websocket-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\slf4j\slf4j-api\1.7.25\slf4j-api-1.7.25.jar;C:\Users\123\.m2\repository\org\springframework\spring-core\4.3.8.RELEASE\spring-core-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\scala-lang\scala-library\2.12.2\scala-library-2.12.2.jar" Runner
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.3.RELEASE)
2018-04-25 14:08:19.934 INFO 10272 --- [ main] Runner$ : Starting Runner. on DESKTOP-Q0FU2DU with PID 10272 (E:\MyCodes\dingtalk\target\classes started by 123 in E:\MyCodes\dingtalk)
2018-04-25 14:08:19.973 INFO 10272 --- [ main] Runner$ : No active profile set, falling back to default profiles: default
2018-04-25 14:08:21.533 INFO 10272 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot [email protected]276438c9: startup date [Wed Apr 25 14:08:21 CST 2018]; root of context hierarchy
2018-04-25 14:08:48.002 INFO 10272 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2018-04-25 14:08:48.246 INFO 10272 --- [ main] o.apache.catalina.core.StandardService : Starting service Tomcat
2018-04-25 14:08:48.258 INFO 10272 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.14
2018-04-25 14:08:50.330 INFO 10272 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-04-25 14:08:50.337 INFO 10272 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 28846 ms
2018-04-25 14:08:53.033 INFO 10272 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2018-04-25 14:08:53.102 INFO 10272 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-04-25 14:08:53.110 INFO 10272 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-04-25 14:08:53.114 INFO 10272 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-04-25 14:08:53.116 INFO 10272 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2018-04-25 14:08:57.407 INFO 10272 --- [ main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot[email protected]276438c9: startup date [Wed Apr 25 14:08:21 CST 2018]; root of context hierarchy
2018-04-25 14:08:59.028 INFO 10272 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/hello || /hello/]}" onto public java.lang.String AppConf.index()
2018-04-25 14:08:59.062 INFO 10272 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2018-04-25 14:08:59.069 INFO 10272 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2018-04-25 14:08:59.463 INFO 10272 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:08:59.465 INFO 10272 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:09:00.136 INFO 10272 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:09:01.378 WARN 10272 --- [ main] o.s.b.a.m.MustacheAutoConfiguration : Cannot find template location: classpath:/templates/ (please add some templates, check your Mustache configuration, or set spring.mustache.check-template-location=false)
2018-04-25 14:09:05.332 INFO 10272 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2018-04-25 14:09:06.249 INFO 10272 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2018-04-25 14:09:06.294 INFO 10272 --- [ main] Runner$ : Started Runner. in 51.048 seconds (JVM running for 60.199)
2018-04-25 14:09:42.606 INFO 10272 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet 'dispatcherServlet'
2018-04-25 14:09:42.608 INFO 10272 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2018-04-25 14:09:42.888 INFO 10272 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 279 ms
補充:執行的方式有兩種
1、直接在main方法中執行
2、如下圖所示
接下來再看java如何寫(這個不是這篇部落格的重點,java的網上有很多資源,因為剛接觸scala,所以做個對比)
Aplication.java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(HelloWorldController.class);
}
}
HelloWorldController.java
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @RestController註解:這是一個 stereotype 註解。它提示閱讀程式碼的人以及Spring,
* 當前列類扮演了一個特殊的角色。在這個案例中我們的類是個 web @Controller
* 所以當處理進來的web請求時候Spring將考慮這個類。
* @author 123
*
*/
@SpringBootApplication(scanBasePackages = "main.java")
@RestController
public class HelloWorldController {
/**
* @RequestMapping註解:提供路由資訊。他告訴Spring任何含有路徑“/” 的HTTP 請求應該和 home
* 方法進行匹配。@RequestMapping註解告訴Spring
* 講返回的字串直接反饋給呼叫者。
* @return
*/
@RequestMapping("/hello")
public String index() {
return "Hello World java Spring Boot";
}
}
執行結果:
控制檯執行結果:
"C:\Program Files\Java\jdk1.8.0_151\bin\java" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\lib\idea_rt.jar=61439:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_151\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_151\jre\lib\rt.jar;E:\MyCodes\dingtalk\target\classes;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-mustache\1.5.3.RELEASE\spring-boot-starter-mustache-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter\1.5.3.RELEASE\spring-boot-starter-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot\1.5.3.RELEASE\spring-boot-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\1.5.3.RELEASE\spring-boot-autoconfigure-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-logging\1.5.3.RELEASE\spring-boot-starter-logging-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\ch\qos\logback\logback-classic\1.1.11\logback-classic-1.1.11.jar;C:\Users\123\.m2\repository\ch\qos\logback\logback-core\1.1.11\logback-core-1.1.11.jar;C:\Users\123\.m2\repository\org\slf4j\jcl-over-slf4j\1.7.25\jcl-over-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\slf4j\jul-to-slf4j\1.7.25\jul-to-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\slf4j\log4j-over-slf4j\1.7.25\log4j-over-slf4j-1.7.25.jar;C:\Users\123\.m2\repository\org\yaml\snakeyaml\1.17\snakeyaml-1.17.jar;C:\Users\123\.m2\repository\com\samskivert\jmustache\1.13\jmustache-1.13.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-web\1.5.3.RELEASE\spring-boot-starter-web-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\1.5.3.RELEASE\spring-boot-starter-tomcat-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\8.5.14\tomcat-embed-core-8.5.14.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\8.5.14\tomcat-embed-el-8.5.14.jar;C:\Users\123\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\8.5.14\tomcat-embed-websocket-8.5.14.jar;C:\Users\123\.m2\repository\org\hibernate\hibernate-validator\5.3.5.Final\hibernate-validator-5.3.5.Final.jar;C:\Users\123\.m2\repository\javax\validation\validation-api\1.1.0.Final\validation-api-1.1.0.Final.jar;C:\Users\123\.m2\repository\org\jboss\logging\jboss-logging\3.3.1.Final\jboss-logging-3.3.1.Final.jar;C:\Users\123\.m2\repository\com\fasterxml\classmate\1.3.3\classmate-1.3.3.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.8.8\jackson-databind-2.8.8.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.8.0\jackson-annotations-2.8.0.jar;C:\Users\123\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.8.8\jackson-core-2.8.8.jar;C:\Users\123\.m2\repository\org\springframework\spring-web\4.3.8.RELEASE\spring-web-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-aop\4.3.8.RELEASE\spring-aop-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-beans\4.3.8.RELEASE\spring-beans-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-context\4.3.8.RELEASE\spring-context-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-webmvc\4.3.8.RELEASE\spring-webmvc-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-expression\4.3.8.RELEASE\spring-expression-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\boot\spring-boot-starter-websocket\1.5.3.RELEASE\spring-boot-starter-websocket-1.5.3.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-messaging\4.3.8.RELEASE\spring-messaging-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\springframework\spring-websocket\4.3.8.RELEASE\spring-websocket-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\slf4j\slf4j-api\1.7.25\slf4j-api-1.7.25.jar;C:\Users\123\.m2\repository\org\springframework\spring-core\4.3.8.RELEASE\spring-core-4.3.8.RELEASE.jar;C:\Users\123\.m2\repository\org\scala-lang\scala-library\2.12.2\scala-library-2.12.2.jar" Application
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.3.RELEASE)
2018-04-25 14:16:57.219 INFO 2648 --- [ main] Application : Starting Application on DESKTOP-Q0FU2DU with PID 2648 (E:\MyCodes\dingtalk\target\classes started by 123 in E:\MyCodes\dingtalk)
2018-04-25 14:16:57.261 INFO 2648 --- [ main] Application : No active profile set, falling back to default profiles: default
2018-04-25 14:16:58.491 INFO 2648 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot[email protected]58a90037: startup date [Wed Apr 25 14:16:58 CST 2018]; root of context hierarchy
2018-04-25 14:17:22.962 INFO 2648 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2018-04-25 14:17:23.157 INFO 2648 --- [ main] o.apache.catalina.core.StandardService : Starting service Tomcat
2018-04-25 14:17:23.182 INFO 2648 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.14
2018-04-25 14:17:25.081 INFO 2648 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-04-25 14:17:25.086 INFO 2648 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 26610 ms
2018-04-25 14:17:26.960 INFO 2648 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2018-04-25 14:17:27.006 INFO 2648 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-04-25 14:17:27.010 INFO 2648 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-04-25 14:17:27.012 INFO 2648 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-04-25 14:17:27.014 INFO 2648 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2018-04-25 14:17:30.195 INFO 2648 --- [ main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot[email protected]58a90037: startup date [Wed Apr 25 14:16:58 CST 2018]; root of context hierarchy
2018-04-25 14:17:31.971 INFO 2648 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/hello]}" onto public java.lang.String HelloWorldController.index()
2018-04-25 14:17:32.013 INFO 2648 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2018-04-25 14:17:32.017 INFO 2648 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2018-04-25 14:17:32.381 INFO 2648 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:17:32.386 INFO 2648 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:17:32.880 INFO 2648 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-25 14:17:33.318 WARN 2648 --- [ main] o.s.b.a.m.MustacheAutoConfiguration : Cannot find template location: classpath:/templates/ (please add some templates, check your Mustache configuration, or set spring.mustache.check-template-location=false)
2018-04-25 14:17:36.107 INFO 2648 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2018-04-25 14:17:36.957 INFO 2648 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2018-04-25 14:17:36.997 INFO 2648 --- [ main] Application : Started Application in 44.362 seconds (JVM running for 50.717)
2018-04-25 14:17:43.594 INFO 2648 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet 'dispatcherServlet'
2018-04-25 14:17:43.596 INFO 2648 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2018-04-25 14:17:44.106 INFO 2648 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 508 ms
相關推薦
分別用scala和java執行Spring Boot專案,並輸出HelloWorld
這個必須Mark一下!用scala寫spring boot的資源好少,找的好辛苦以下都是我在網上找的前輩們寫的,有些地方只能理解一點,但是是可以成功執行的!我是在IDEA中用Maven構建的spring boot專案pom.xml<?xml version="1.0"
用java啟動spring boot專案,模版目錄無法正常訪問
背景描述 由於想快速在伺服器上部署一下spring boot的web應用,因此使用了java直接啟動spring boot內建tomcat的方式來構建服務,實際上這也是spring boot的一個很大的亮點。 但是接著就遇到了一個很有意思的問題,在專案中使用了Thyme
Spring Boot學習(1)—— mac上Intellij使用Gradle構建Spring Boot專案,並使用Groovy
首先,需要自己下載Intellij、Gradle、Groovy。 1,Intellij建立專案,選擇Spring Initializr,然後next 2,設定group、artifact,Type選擇Gradle Project,Language我選擇的是Gr
用Scala寫Java執行緒池
import java.util.concurrent.{Callable, Executors, Future} /** * Created by 57871 on 2018/10/31
Spark:用Scala和Java實現WordCount
1 Spark assembly has been built with Hive, including Datanucleus jars on classpath 2 Using Spark's default log4j profile: org/apache/spark/log4j-def
Docker 二:IDEA + Docker 外掛建立映象並執行 spring boot 專案
IDEA 上提供了 Docker integration 外掛,可以很方便的管理映象和容器,當然這些操作通過命令列也能完成,使用 IDEA 外掛方式的另一個便利在於 IDEA 提供了 Docker 配套的 Configuration,可以一次性定義好操作序列,修改程式碼或資源後只需 Ru
【bug記錄】Eclipse執行Spring Boot專案讀取不到配置檔案
專案是spring boot專案, 編寫好程式碼後,我以spring boot app的形式執行專案,結果控制檯報錯,大概是說mybatis的mapper注入失敗,原因是datasource沒找到。檢查配置檔案的資料庫配置以及mybaits的配置後,未發現錯誤。拿起八倍鏡再
求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。
解題思路: 一元二次方程 ax²+bx+c=0(a≠0) 其求根依據判定式△的取值為三種( △=b²-4ac ) 1. △>0,方程有兩個不相等的實數根; x1=[-b+√(△)]/2a; //(
eclipse中建立spring-boot專案,打成可執行war包
1、建立maven專案 2、編輯pom檔案 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns
(c++)寫兩個函式,分別求兩個整數的最大公約數和最小公倍數,用主函式呼叫這兩個函式,並輸出結果兩個整數由鍵盤輸入。
#include<iostream> using namespace std; int max(int a,int b) {if(a<b){int c=a;a=b;b=c;}int
用idea打包spring boot專案,然後部署到Linux伺服器上
一、IDEA 配置在 IDEA 上 File--->Setting--->Project Structure選擇 Artifacts ,右上角加號新增--->jar選擇專案主類,點選 ok二、在 IDEA 上打包專案開啟側邊欄的 Maven Project 雙擊 Package這時候控制檯開
1079: C語言程式設計教程(第三版)課後習題8.2---求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。【兩種方法】
題目描述 求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。 輸入 a b c 輸出 x1=? x2=? 樣例輸入 4
如何執行Spring Boot專案
### 背景 幫別人指導一個Spring Boot專案,它在本地把專案push到git伺服器上,然後在部署的伺服器上把程式碼pull下來(我猜應該是這個流程) 然後他問我這專案怎麼執行? 我當時就懵了,因為我平時都是用IDEA直接run的 ### 探索 於是查看了Spring Boot官網的文件,發現在
【spring cloud】匯入一個新的spring boot專案作為spring cloud的一個子模組微服務,怎麼做/或者 每次匯入一個新的spring boot專案,IDEA不識別子module,啟動類無法啟動/右下角沒有藍色圖示
如題:匯入一個新的spring boot專案作為spring cloud的一個子模組微服務,怎麼做 或者說每次匯入一個新的spring boot專案,IDEA不識別,啟動類無法啟動,怎麼解決 下面一起來走一遍這個流程: 1.將一個spring boot服務匯入spring cloud中作為一個子模組
spring boot 專案 ,spring data jpa 初使用
我使用的是 maven 構建工具,使用 spring data jpa 來實現簡單的使用者資料增刪改查功能。 專案使用: spring boot、spring data jpa、mysql。 專案使用 postman 工具來測試功能是否實現。 程式碼 pom.xml 如下:
教你搭建Spring Boot專案,包會!
目錄 前言 開始搭建最簡單的Spring Boot工程(下文會延伸) 第一步:開啟IDEA,新建專案 第二步:選擇Spring Initializr 第三步:設定專案基本資訊 第四步:為專案選擇依賴 第五步:建立專案資料夾 &
建立spring-boot專案,學習(一)
一、用IDEA建立spring-boot工程 IDEA版本:2018.1.5的Ultimate版本,非Ultimate版本可能缺少一些功能。 下面開始建立spring-boot專案 1,選擇Spring-Initializer,之後next 2,填寫專案名稱,專案
如何使用maven打包spring boot專案,打成jar包
如果你使用的是maven來管理專案,執行以下命令即可cd 專案跟目錄(和pom.xml同級) mvn clean package ## 或者執行下面的命令 ## 排除測試程式碼後進行打包 mvn clean package -Dmaven.test.skip=true也可以
spring boot 專案,使用 maven 構建工具打包的兩種方法
根據 pom.xml 檔案指定的打包格式,打包成對於格式的包 如下: <packaging>war</packaging> 使用 IDEA 的終端直接操作(或者 cmd)。 第一種方式 輸入 mvn package: 打包成功。 專案下的 t
Eclipse新建Spring-boot專案,打包部署並輸出HelloWord
Spring-boot因為其對jar包的高度整合以及簡化服務配置,快速部署等的優點,逐漸成為Java開發人員的熱衷的框架。下面演示一下怎麼在Eclipse中新建Spring-boot專案以及打包部署。 在Eclipse中建立Spring-boot有兩種方式