[转]通过Spring Boot三分钟创建Spring Web项目
2017-04-18 19:14
786 查看
来源:https://www.tianmaying.com/tutorial/project-based-on-spring-boot
Spring早期使用XML配置的方式来配置Spring Beans之间的关系,比如AOP和依赖注入的配置。随着功能以及业务逻辑的日益复杂,应用便会伴随大量的XML配置文件以及复杂的Bean依赖关系。随着Spring 3.0的发布,Spring团队逐渐开始摆脱XML配置文件,并且在开发过程中大量使用“约定优先配置”(convention over configuration)的思想来摆脱Spring框架中各类纷繁复杂的配置。Spring就是在这样一种背景下被抽象出来的一个在Spring之上的开发框架。
Spring Boot的设计目的是用来简化新Spring应用的创建以及开发过程。从它的名字可以看出,其作用在于创建和启动新的基于 Spring 框架的项目,它能够帮助开发人员很容易的创建出基于Spring的独立运行和产品级别的应用。它包含的特性如下:
应用独立运行,对于Web应用直接嵌入应用服务器(Tomcat or Jetty)
根据项目的依赖(Maven or Gradle中定义的依赖)自动配置Spring框架的特性
提供生产环境中的监控功能——性能、应用状态信息等
不会生成繁琐的Java代码以及XML配置文件
Spring Boot并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。Spring Boot应用通常只需要非常少量的配置代码,而且有内嵌的Web服务器,让开发者能够更加专注于业务逻辑。在后面的开发过程中,我们能够逐渐感受到Spring Boot这些优秀特性给我们带来的好处。
我们通过Maven来创建项目,【File】->【New】->【Others...】;
弹出的对话框中包含了一系列的项目类型,我们选择
一个技巧是可以在
选中后出现了新的对话框,勾选Create a simple project (skip archetype selection),点击
输入完成后点击
项目创建成功后,在Eclipse IDE左边的
编辑完成后保存(可以使用
在这里我们需要填写
在
右键弹出菜单
接下来就能看到在IDE下方的
接下来打开浏览器,在地址栏中输入
这个文件是Spring Boot提供给我们的,里面定义了一些属性,比如Java编译级别,UTF-8编码,以及测试框架和一些插件的配置。这里我们只管引入就好。注意这个Parent POM中定义的Java编译级别为1.6,如果需要改变为1.8,只需要重新定义
在Maven依赖中引入了
Java代码中没有任何配置,和传统的Spring应用相比,多了一个
不需要再专门配置Web服务器,Web服务器已经被内嵌在应用中了,应用开发环境的建立更加简单了,从现在开始让我们可以和之前安装和配置过的Tomcat说再见了。
Spring Boot提供的依赖,比如
我们已经了解了创建Spring Boot应用的基本步骤,接下来我们要做的第一步就是讲博客应用通过Spring Boot来重写。
参考
Eclipse IDE for JavaEE Developers
Eclipse Java 8 Support
Maven实战
Spring Boot
版权声明 本文由David创作,转载需署名作者且注明文章出处 参考代码 要获取本文的参考代码,请访问: https://www.tianmaying.com/tutorial/project-based-on-spring-boot/repo
Spring Boot简介
接下来我们所有的Spring代码实例将会基于Spring Boot,因此我们先来了解一下Spring Boot这个大杀器。Spring早期使用XML配置的方式来配置Spring Beans之间的关系,比如AOP和依赖注入的配置。随着功能以及业务逻辑的日益复杂,应用便会伴随大量的XML配置文件以及复杂的Bean依赖关系。随着Spring 3.0的发布,Spring团队逐渐开始摆脱XML配置文件,并且在开发过程中大量使用“约定优先配置”(convention over configuration)的思想来摆脱Spring框架中各类纷繁复杂的配置。Spring就是在这样一种背景下被抽象出来的一个在Spring之上的开发框架。
Spring Boot的设计目的是用来简化新Spring应用的创建以及开发过程。从它的名字可以看出,其作用在于创建和启动新的基于 Spring 框架的项目,它能够帮助开发人员很容易的创建出基于Spring的独立运行和产品级别的应用。它包含的特性如下:
应用独立运行,对于Web应用直接嵌入应用服务器(Tomcat or Jetty)
根据项目的依赖(Maven or Gradle中定义的依赖)自动配置Spring框架的特性
提供生产环境中的监控功能——性能、应用状态信息等
不会生成繁琐的Java代码以及XML配置文件
Spring Boot并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。Spring Boot应用通常只需要非常少量的配置代码,而且有内嵌的Web服务器,让开发者能够更加专注于业务逻辑。在后面的开发过程中,我们能够逐渐感受到Spring Boot这些优秀特性给我们带来的好处。
第一个Spring Boot项目
接下来我们通过创建一个简单的Spring Boot项目来建立对初步的印象。一开始可能会遇到一些不太理解的地方,没关系,我们会在学习过程中我们会逐一搞定。我们通过Maven来创建项目,【File】->【New】->【Others...】;
弹出的对话框中包含了一系列的项目类型,我们选择
Maven Project;
一个技巧是可以在
type filter text中输入
Maven进行搜索过滤,这样很快可以找到
Maven Project。
选中后出现了新的对话框,勾选Create a simple project (skip archetype selection),点击
Next >后,按照下图输入内容:
输入完成后点击
Finish,第一个项目就创建成功了。
项目创建成功后,在Eclipse IDE左边的
Project Explorer中会出现我们刚刚创建的项目,其中有一个
pom.xml文件,我们先对它进行修改,增加一个依赖,内容变为:
<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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.2.3.RELEASE</version> </parent> <groupId>com.tianmaying</groupId> <artifactId>website</artifactId> <version>0.0.1-SNAPSHOT</version> <name>tmy-website</name> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
编辑完成后保存(可以使用
Ctrl+S快捷键)。
编写Web应用程序
然后我们在src/main/java目录下新建一个Java文件:
在这里我们需要填写
Package,
Name两个字段就可以了,然后编辑这个java文件:
package com.tianmaying.webdev; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @SpringBootApplication @Controller public class Application { @RequestMapping("/") @ResponseBody public String index() { return "Hello World!"; } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
运行Web应用程序
经过以上步骤,一个简单的Web应用就已经开发完成了。接下来我们要将它运行起来:在
Project Explorer中找到
Application.java
右键弹出菜单
Run as...,选中
Java Application
接下来就能看到在IDE下方的
Console视图中出现运行信息,当你看到
Started Application in 2.214 seconds (JVM running for 2.466)信息后,说明应用服务器启动成功。
接下来打开浏览器,在地址栏中输入
[http://localhost:8080](http://localhost:8080),如果能够看到
Hello World!出现在浏览器中,那说明环境配置大功告成!
Spring Boot初探
Maven的POM文件之间可以有继承关系,下面这段代码就表示我们的POM文件继承自groupId为org.springframework.boot,artifactId为
spring-boot-starter-parent,version为
1.2.3.RELEASE的POM文件。
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.2.3.RELEASE</version> </parent>
这个文件是Spring Boot提供给我们的,里面定义了一些属性,比如Java编译级别,UTF-8编码,以及测试框架和一些插件的配置。这里我们只管引入就好。注意这个Parent POM中定义的Java编译级别为1.6,如果需要改变为1.8,只需要重新定义
<java.version>属性即可覆盖,类似于类的方法重载。
<properties> <java.version>1.8</java.version> </properties>
在Maven依赖中引入了
spring-boot-starter-web,它包含了Spring Boot预定义的一些Web开发的常用依赖:
spring-web,
spring-webmvc: Spring Web Mvc框架
tomcat-embed-*: 内嵌Tomcat容器
jackson:处理json数据
spring-*:Spring框架
spring-boot-autoconfigure: Spring Boot提供的自动配置功能
Java代码中没有任何配置,和传统的Spring应用相比,多了一个
@SpringBootApplication,这是是Spring Boot提供的注解,这个注解会告诉Spring去扫描类路径,初始化Spring Context以及启动内嵌Tomcat容器等一系列操作。我们没有看到一行配置代码,也没有
web.xml。基于Spring Boot的应用在大多数情况下都不需要我们去显式地声明各类配置,而是将最常用的默认配置作为约定,在不声明的情况下也能适应大多数的开发场景。
小节
即使我们还没有使用Spring的惊讶,从这个简单的Spring Boot项目我们也可以发现开发上相比传统的JSP和Servlet开发已经具有了一些特点,比如:不需要再专门配置Web服务器,Web服务器已经被内嵌在应用中了,应用开发环境的建立更加简单了,从现在开始让我们可以和之前安装和配置过的Tomcat说再见了。
Spring Boot提供的依赖,比如
spring-boot-starter-web,能够帮助我们引入大部分Web开发中需要用到的依赖,极大的简化了我们自己配置依赖的工作。
我们已经了解了创建Spring Boot应用的基本步骤,接下来我们要做的第一步就是讲博客应用通过Spring Boot来重写。
参考
Eclipse IDE for JavaEE Developers
Eclipse Java 8 Support
Maven实战
Spring Boot
版权声明 本文由David创作,转载需署名作者且注明文章出处 参考代码 要获取本文的参考代码,请访问: https://www.tianmaying.com/tutorial/project-based-on-spring-boot/repo
相关文章推荐
- 通过Spring Boot三分钟创建Spring Web项目
- 通过Spring Boot三分钟创建Spring Web项目
- 通过springboot+mybatis+mysql+freemarker创建一个java web项目
- Spring Boot + Thymeleaf 创建web项目
- java鬼混笔记:springboot 3、springboot创建web项目和打包
- 快速创建一个基于Gradle构建的SpringBoot Web项目(SpringBoot-01)
- 通过Spring Boot + Mybatis + Redis快速搭建现代化Web项目
- IDE 用Spring Boot零配置快速创建web项目(1)
- SpringBoot创建项目:极简web项目创建
- spring boot创建web项目:新建jsp文件而找不到jsp文件模版的新建选项
- 使用springboot创建web项目(一),登录页面
- 通过IntelliJ IDEA创建spring boot 项目的两种方式之方式二
- 详解用Spring Boot零配置快速创建web项目
- 一、SpringBoot,maven Web项目的创建
- 详解用Spring Boot零配置快速创建web项目
- Spring Boot: 开发web 应用 - 01 创建项目
- 手把手的SpringBoot教程,SpringBoot创建web项目(一)
- 通过IntelliJ IDEA创建spring boot 项目的两种方式之方式一
- 【spring boot】5.spring boot 创建web项目并使用jsp作前台页面
- SpringBoot + Thymeleaf + JPA创建一个web项目