SpringBoot简介
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
一、构建springboot项目
Spring官方提供了一个在线生成springboot的项目
地址:http://start.spring.io/
1.打开地址,按图选择 Maven项目 -> Java语言 -> 1.5.9版本(目前1.5.9为最高的正式版本),点击 “Generate Project” 生成项目
2、下载压缩包,解压并通过Eclipse导入(File -> Import -> Maven -> Existing Maven Projects -> 选择springboot项目 -> Finish)
3.导入成功,添加Controller代码
代码语言:javascript复制 1 import java.math.BigDecimal;
2 import org.springframework.web.bind.annotation.RequestMapping;
3 import org.springframework.web.bind.annotation.RestController;
4
5 @RestController
6 public class CalculateController {
7
8 @RequestMapping(value = "/add")
9 public BigDecimal add(BigDecimal num1, BigDecimal num2){
10 if(num1==null||num2==null){
11 return BigDecimal.ZERO;
12 }
13
14 return num1.add(num2);
15 }
16
17 }
4.启动springboot服务
打开StartApplication类,并执行main方法(Run -> Run As -> Java Application)
代码语言:javascript复制 . ____ _ __ _ _
/\ / ___'_ __ _ _(_)_ __ __ _
( ( )___ | '_ | '_| | '_ / _` |
\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |___, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.9.RELEASE)
2018-01-05 14:53:33.286 INFO 22216 --- [ main] com.lianjinsoft.StartApplication : Starting StartApplication on LAPTOP-1DF7S904 with PID 22216 (E:gitspring-bootspring-boot-starttargetclasses started by lianjinsoft in E:gitspring-bootspring-boot-start)
2018-01-05 14:53:33.288 INFO 22216 --- [ main] com.lianjinsoft.StartApplication : No active profile set, falling back to default profiles: default
2018-01-05 14:53:33.338 INFO 22216 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@50de0926: startup date [Fri Jan 05 14:53:33 CST 2018]; root of context hierarchy
2018-01-05 14:53:35.401 INFO 22216 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2018-01-05 14:53:35.414 INFO 22216 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2018-01-05 14:53:35.415 INFO 22216 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.23
2018-01-05 14:53:35.544 INFO 22216 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-01-05 14:53:35.544 INFO 22216 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2209 ms
2018-01-05 14:53:35.785 INFO 22216 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2018-01-05 14:53:35.792 INFO 22216 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-01-05 14:53:35.793 INFO 22216 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-01-05 14:53:35.795 INFO 22216 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-01-05 14:53:35.795 INFO 22216 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2018-01-05 14:53:36.266 INFO 22216 --- [ main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@50de0926: startup date [Fri Jan 05 14:53:33 CST 2018]; root of context hierarchy
2018-01-05 14:53:36.324 INFO 22216 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/add]}" onto public java.math.BigDecimal com.lianjinsoft.controller.CalculateController.add(java.math.BigDecimal,java.math.BigDecimal)
2018-01-05 14:53:36.327 INFO 22216 --- [ 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-01-05 14:53:36.328 INFO 22216 --- [ 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-01-05 14:53:36.372 INFO 22216 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:53:36.372 INFO 22216 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:53:36.404 INFO 22216 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-01-05 14:53:36.574 INFO 22216 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2018-01-05 14:53:36.693 INFO 22216 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2018-01-05 14:53:36.704 INFO 22216 --- [ main] com.lianjinsoft.StartApplication : Started StartApplication in 3.68 seconds (JVM running for 4.012)
5.验证
打开浏览器,访问地址 http://localhost:8080/add?num1=3&num2=4
6.测试成功,so easy~
备注:
1)springboot默认集成tomcat容器,通过SpringApplication.run启动
2)springboot默认服务不带上下文路径(通过http://ip:port/访问)
3)springboot默认端口为:8080
源代码:https://gitee.com/skychenjiajun/spring-boot