博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Spring Boot来加速Java web项目的开发
阅读量:5131 次
发布时间:2019-06-13

本文共 5330 字,大约阅读时间需要 17 分钟。

软件152 杨浩艺

 

我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的。

 

回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用gradle来构建的话基本也一样)然后新建Spring相关的xml文件,而且往往那些xml文件还不会少。然后继续使用tomcat或者jetty作为容器来运行这个工程。基本上每次创建一个新的项目都是这么一个流程,而我们有时候仅仅想快速的创建一个Spring web工程来测试一些东西,或者是希望能节省时间。

 

现在我们使用Spring Boot就可以快速的做到这些了。

 

我们先来看一个非常简单的使用Spring boot的例子吧:

 

1.  我们创建一个Maven工程,假定工程名字为spring-boot,然后我们在pom.xml文件中加入依赖:

1
2
3
4
5
<dependency>
    
<groupId>org.springframework.boot</groupId>
    
<artifactId>spring-boot-starter-web</artifactId>
    
<version>
1.0
.
2
.RELEASE</version>
</dependency>

2.  新建一个Controller来接受处理我们的请求:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import 
org.springframework.boot.SpringApplication;
import 
org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import 
org.springframework.stereotype.Controller;
import 
org.springframework.web.bind.annotation.RequestMapping;
import 
org.springframework.web.bind.annotation.RequestMethod;
import 
org.springframework.web.bind.annotation.ResponseBody;
 
/**
 
* Created by wenchao.ren on 2014/4/26.
 
*/
@Controller
@EnableAutoConfiguration
public 
class 
SimpleController {
 
    
@RequestMapping
(value =
"/hello"
, method = RequestMethod.GET)
    
@ResponseBody
    
public 
String hello(){
        
return 
"hello world"
;
    
}
 
    
public 
static 
void 
main(String[] args) {
        
SpringApplication.run(SimpleController.
class
, args);
    
}
}

相信大家已经看到了这个Controller有一个main方法,不要急,我们直接运行这个main方法:

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
  
.   ____          _            __ _ _
 
/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | 
'_ | '
_| | '_ \/ _` | \ \ \ \
 
\\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  
'  |____| .__|_| |_|_| |_\__, | / / / /
 
=========|_|==============|___/=/_/_/_/
 
:: Spring Boot ::        (v1.
0.2
.RELEASE)
 
2014
-
04
-
26 
22
:
54
:
40.985  
INFO 
7236 
--- [           main] c.r.spring.boot.SimpleController         : Starting SimpleController on rollen with PID 
7236 
(D:\workspace\GitHub\SpringDemo\spring-boot\target\classes started by wenchao.ren in D:\workspace\GitHub\SpringDemo\spring-boot)
2014
-
04
-
26 
22
:
54
:
41.008  
INFO 
7236 
--- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext
@50de0926
: startup date [Sat Apr 
26 
22
:
54
:
41 
CST 
2014
]; root of context hierarchy
2014
-
04
-
26 
22
:
54
:
41.583  
INFO 
7236 
--- [           main] .t.TomcatEmbeddedServletContainerFactory : Server initialized with port: 
8080
2014
-
04
-
26 
22
:
54
:
41.706  
INFO 
7236 
--- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2014
-
04
-
26 
22
:
54
:
41.706  
INFO 
7236 
--- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/
7.0
.
52
2014
-
04
-
26 
22
:
54
:
41.785  
INFO 
7236 
--- [ost-startStop-
1
] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2014
-
04
-
26 
22
:
54
:
41.785  
INFO 
7236 
--- [ost-startStop-
1
] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 
779 
ms
2014
-
04
-
26 
22
:
54
:
42.055  
INFO 
7236 
--- [ost-startStop-
1
] o.s.b.c.e.ServletRegistrationBean        : Mapping servlet: 
'dispatcherServlet' 
to [/]
2014
-
04
-
26 
22
:
54
:
42.057  
INFO 
7236 
--- [ost-startStop-
1
] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 
'hiddenHttpMethodFilter' 
to: [
/*]
2014-04-26 22:54:42.289  INFO 7236 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/
favicon.ico] onto handler of type [
class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2014
-
04
-
26 
22
:
54
:
42.368  
INFO 
7236 
--- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped 
"{[/hello],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}" 
onto 
public 
java.lang.String com.rollenholt.spring.boot.SimpleController.hello()
2014
-
04
-
26 
22
:
54
:
42.376  
INFO 
7236 
--- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [
class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2014
-
04
-
26 
22
:
54
:
42.377  
INFO 
7236 
--- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [
class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2014
-
04
-
26 
22
:
54
:
42.447  
INFO 
7236 
--- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans 
for 
JMX exposure on startup
2014
-
04
-
26 
22
:
54
:
42.459  
INFO 
7236 
--- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 
8080
/http
2014
-
04
-
26 
22
:
54
:
42.460  
INFO 
7236 
--- [           main] c.r.spring.boot.SimpleController         : Started SimpleController in 
1.675 
seconds (JVM running 
for 
1.944
)
2014
-
04
-
26 
22
:
54
:
54.963  
INFO 
7236 
--- [nio-
8080
-exec-
1
] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet 
'dispatcherServlet'
2014
-
04
-
26 
22
:
54
:
54.963  
INFO 
7236 
--- [nio-
8080
-exec-
1
] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 
'dispatcherServlet'
: initialization started
2014
-
04
-
26 
22
:
54
:
54.971  
INFO 
7236 
--- [nio-
8080
-exec-
1
] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 
'dispatcherServlet'
: initialization completed in 
8 
ms

会产生上面的输出,查看日志可以发现默认使用的是tomcat,端口绑定在8080,现在让我们来访问:http://localhost:8080/hello

就可以看到我们代码中输出的字样:hello world了。

回首这个过程,是不是相比于以前快速了许多呢

 

参考资料:

转载于:https://www.cnblogs.com/yhy-yhy/p/7093946.html

你可能感兴趣的文章
032. asp.netWeb用户控件之一初识用户控件并为其自定义属性
查看>>
移动开发平台-应用之星app制作教程
查看>>
leetcode 459. 重复的子字符串(Repeated Substring Pattern)
查看>>
springboot No Identifier specified for entity的解决办法
查看>>
浅谈 unix, linux, ios, android 区别和联系
查看>>
51nod 1428 活动安排问题 (贪心+优先队列)
查看>>
latex for wordpress(一)
查看>>
如何在maven工程中加载oracle驱动
查看>>
Flask 系列之 SQLAlchemy
查看>>
aboutMe
查看>>
【Debug】IAR在线调试时报错,Warning: Stack pointer is setup to incorrect alignmentStack,芯片使用STM32F103ZET6...
查看>>
一句话说清分布式锁,进程锁,线程锁
查看>>
FastDFS使用
查看>>
服务器解析请求的基本原理
查看>>
[HDU3683 Gomoku]
查看>>
下一代操作系统与软件
查看>>
[NOIP2013提高组] CODEVS 3287 火车运输(MST+LCA)
查看>>
Python IO模型
查看>>
DataGridView的行的字体颜色变化
查看>>
局域网内手机访问电脑网站注意几点
查看>>