使用Spring Boot来加速Java web项目的开发

简介:

我想,现在企业级的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了。

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

 

参考资料:

1.  Spring Boot Reference Guide

目录
相关文章
|
2月前
|
Java API Maven
如何使用Java开发抖音API接口?
在数字化时代,社交媒体平台如抖音成为生活的重要部分。本文详细介绍了如何用Java开发抖音API接口,从创建开发者账号、申请API权限、准备开发环境,到编写代码、测试运行及注意事项,全面覆盖了整个开发流程。
229 10
|
2月前
|
监控 Java API
如何使用Java语言快速开发一套智慧工地系统
使用Java开发智慧工地系统,采用Spring Cloud微服务架构和前后端分离设计,结合MySQL、MongoDB数据库及RESTful API,集成人脸识别、视频监控、设备与环境监测等功能模块,运用Spark/Flink处理大数据,ECharts/AntV G2实现数据可视化,确保系统安全与性能,采用敏捷开发模式,提供详尽文档与用户培训,支持云部署与容器化管理,快速构建高效、灵活的智慧工地解决方案。
|
11天前
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
1月前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
58 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
22天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
106 13
|
27天前
|
算法 Java API
如何使用Java开发获得淘宝商品描述API接口?
本文详细介绍如何使用Java开发调用淘宝商品描述API接口,涵盖从注册淘宝开放平台账号、阅读平台规则、创建应用并申请接口权限,到安装开发工具、配置开发环境、获取访问令牌,以及具体的Java代码实现和注意事项。通过遵循这些步骤,开发者可以高效地获取商品详情、描述及图片等信息,为项目和业务增添价值。
57 10
|
20天前
|
前端开发 Java 测试技术
java日常开发中如何写出优雅的好维护的代码
代码可读性太差,实际是给团队后续开发中埋坑,优化在平时,没有那个团队会说我专门给你一个月来优化之前的代码,所以在日常开发中就要多注意可读性问题,不要写出几天之后自己都看不懂的代码。
56 2
|
30天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
2月前
|
开发框架 Java 关系型数据库
Java哪个框架适合开发API接口?
在快速发展的软件开发领域,API接口连接了不同的系统和服务。Java作为成熟的编程语言,其生态系统中出现了许多API开发框架。Magic-API因其独特优势和强大功能,成为Java开发者优选的API开发框架。本文将从核心优势、实际应用价值及未来展望等方面,深入探讨Magic-API为何值得选择。
69 2
|
2月前
|
监控 前端开发 Java
【技术开发】接口管理平台要用什么技术栈?推荐:Java+Vue3+Docker+MySQL
该文档介绍了基于Java后端和Vue3前端构建的管理系统的技术栈及功能模块,涵盖管理后台的访问、登录、首页概览、API接口管理、接口权限设置、接口监控、计费管理、账号管理、应用管理、数据库配置、站点配置及管理员个人设置等内容,并提供了访问地址及操作指南。