使用Maven搭建Spring Boot及入门

搭建Spring Boot项目,有两种方式:

 

一、通过eclipse新建maven项目,配置完成

1、新建Maven项目,选择webapp,如下图,点击next,输入GroupId和ArtifactId(即项目名称)后点击Finish。

GroupID是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。
ArtifactID就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。


 

2、解决项目的报错(这步可以跳过,直接编制pom.xml)

右键项目至Java Build Path, 更给JRE System Library为安装的JRE,同时更改Java Compile,还需要更改Project Facets中的java版本。如果需要也可以更改Dynamic Web Module的版本,不过这个需要到项目所在的路径下的.settings文件夹中的org.eclipse.wst.common.project.facet.core.xml中进行修改,修改后重启eclipse即可。

最后,导入tomcat的lib目录下servlet-api.jar。



 

3、编制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.example</groupId>
	<artifactId>mySpringboot</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>mySpringBoot</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.3.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

父级依赖

spring-boot-starter-parent是spring boot 的父级依赖,它是一个特殊的starter,用以提供相关的maven默认依赖。关于spring boot 提供了哪些jar包的依赖,可以查看.m2目录下的\repository\org\springframework\boot\spring-boot-dependencies\1.5.3.RELEASE\spring-boot-dependencies-1.5.3.RELEASE.pom

 

如果你不想使用某个依赖默认的版本,可以通过覆盖自己的项目中的属性来覆盖各个依赖项,例如,要升级到另一个Spring Data版本系列,您可以将以下内容添加到pom.xml中:

<properties>
    <spring-data-releasetrain.version>Fowler-SR2</spring-data-releasetrain.version>
</properties>

 

并不是每个人都喜欢继承自spring-boot-starter-parent POM。可能你需要使用的自己的公司标准parent,或者可能更喜欢显式声明所有的Maven配置。
如果你不想使用spring-boot-starter-parent,你仍然可以通过使用scope = import依赖关系来保持依赖关系管理:

<dependencyManagement>
     <dependencies>
        <dependency>
            <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.5.3.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
该设置不允许你使用如上所述的属性(properties)覆盖各个依赖项,要实现相同的结果,需要在spring-boot-dependencies项之前的项目的dependencyManagement中添加一个配置,例如,要升级到另一个Spring Data版本系列,可以将以下内容添加到pom.xml中。

 

<dependencyManagement>
    <dependencies>
        <!-- Override Spring Data release train provided by Spring Boot -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-releasetrain</artifactId>
            <version>Fowler-SR2</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.5.3.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
 

 

起步依赖 spring-boot-starter-xx

Spring Boot提供了很多”开箱即用“的依赖模块,都是以spring-boot-starter-xx作为命名的。起步依赖就是自动给你封装好了你想要实现的功能的依赖。比如我们之前要实现web功能,就需要引入spring-boot-starter-web这个起步依赖。

Spring Boot通过提供众多起步依赖降低项目依赖的复杂度。起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。很多起步依赖的命名都暗示了它们提供的某种或者某类功能。

 

Spring Boot Maven插件

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
上面的配置就是Spring Boot Maven插件,Spring Boot Maven插件提供了许多方便的功能:

 

  • 把项目打包成一个可执行的超级JAR(uber-JAR),包括把应用程序的所有依赖打入JAR文件内,并为JAR添加一个描述文件,其中的内容能让你用java -jar来运行应用程序。
  • 搜索public static void main()方法来标记为可运行类。

 

4、编制应用入口类MySpringBootApplication

@RestController
@SpringBootApplication
public class MySpringBootApplication {

	@RequestMapping("/")
	public String index(){
	    return "Hello Spring Boot";
	}
	
	public static void main(String[] args) {
	    SpringApplication.run(MySpringBootApplication.class, args);
	}
}
  • @SpringBootApplication是Sprnig Boot项目的核心注解,主要目的是开启自动配置。
  • main方法这是一个标准的Java应用的main的方法,主要作用是作为项目启动的入口。
  • @RestController注解等价于@Controller+@ResponseBody的结合,使用这个注解的类里面的方法都以json格式输出。

 

5、三种项目启动方式

  1. MySpringBootApplication的main方法
  2. 使用命令:mvn spring-boot:run 启动
  3. 使用命令:mvn package 进行打包,将生成的JAR文件,使用 java -jar 命令来运行

 

6、在浏览器栏输入:http://localhost:8080,就能看到页面显示Hello Spring Boot效果了

 

 

二、通过Spring Initializr,生成Spring Boot项目结构(简单粗暴)

1、通过Web浏览器访问:http://start.spring.io/

 

2、选择构建工具Maven Project、Spring Boot版本1.5.3以及一些工程基本信息,可参考下图所示:

 

3、点击Generate Project下载项目压缩包

 

4、导入工程。


5、工程导入成功之后,后面的步骤如第一种方式。

 

http://tengj.top/2017/02/26/springboot1/
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值