`

使用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/
 

  • 大小: 53.6 KB
  • 大小: 88.3 KB
  • 大小: 59.2 KB
分享到:
评论

相关推荐

    spring-boot示例项目

    Spring Boot为Spring平台及第三方库提供开箱即用的设置,这样你就可以有条不紊地开始。多数Spring Boot应用只需要很少的Spring配置。 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Sprin

    JavaEE开发的颠覆者SpringBoot实战[完整版].part1

    而Spring Boot 是Spring 主推的基于“习惯优于配置”的原则,让你能够快速搭建应用的框架,从而使得Java EE 开发变得异常简单。 《JavaEE开发的颠覆者: Spring Boot实战》从Spring 基础、Spring MVC 基础讲起,从而...

    JavaEE开发的颠覆者SpringBoot实战[完整版].part3

    而Spring Boot 是Spring 主推的基于“习惯优于配置”的原则,让你能够快速搭建应用的框架,从而使得Java EE 开发变得异常简单。 《JavaEE开发的颠覆者: Spring Boot实战》从Spring 基础、Spring MVC 基础讲起,从而...

    JavaEE开发的颠覆者SpringBoot实战[完整版].part2

    而Spring Boot 是Spring 主推的基于“习惯优于配置”的原则,让你能够快速搭建应用的框架,从而使得Java EE 开发变得异常简单。 《JavaEE开发的颠覆者: Spring Boot实战》从Spring 基础、Spring MVC 基础讲起,从而...

    spring-boot-examples:Spring Boot 学习demo整合各种第三方组件和各种案例

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在...

    Java课设基于Spring Boot和Spring Cloud开发的加密货币爱好者流量的平台源码(含项目说明+数据库).zip

    * 核心框架:Spring Boot + Spring Cloud * 视图框架:Spring MVC * 页面引擎:Thymeleaf * ORM 框架:tk.mybatis 简化 MyBatis 开发 * 数据库连接池:Alibaba Druid * 数据库缓存:Redis Sentinel * 消息中间件:...

    springboot快速入门合集

    用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。将是未来最热门的框架之一!

    erp后台初版系统.zip

    用大佬的话来理解,就是 spring boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 maven 整合了所有的 jar 包,spring boot 整合了所有的框架,总结一下及几点: (1)为所有 Spring 开发提供一个...

    Java秒杀系统方案优化高性能高并发学习实战源代码以及笔记..zip

    使用spring boot 搭建项目基础框架 使用Thymeleaf做页面展示,封装Result统一结果 集成 mybatis + druid 做数据操作 继承redis, 使用Jedis操作redis数据, 封装了统一的缓存key. 第2章-实现用户登录以及分布式session...

    Java分布式Elastic-Job和Quartz定时任务课程(1.6G)

    1_什么事定时任务.mp4 2_为什么学习定时任务.mp4 3_定时任务技术发展趋势.mp4 4_主流定时任务框架优缺点和什么是分布式定时任务.mp4 5_环境搭建总体流程.mp4 6_前期准备-JDK.mp4 ...24_Spring_Boot整合Simp

    spting4mvc+mybatis整合实例(入门)

    小弟最近研究mybatis,写了个mybatis与spring4MVC结合使用的简单实例,仅供各位有兴趣的同行参考,DAO层的封装正在研究,不日上传

    单点登录源码

    单点登录, SSM框架公共模块 ├── zheng-admin -- 后台管理模板 ├── zheng-ui -- 前台thymeleaf模板[端口:1000] ...## 环境搭建(QQ群内有“zheng环境搭建和系统部署文档.doc”) #### 开发工具: ...

    ProjectWeekCloudBackend

    创建一个Spring Boot Web服务 搭建开发环境 查看以下快速入门指南: : 来安装Java SDK 安装Java依赖工具“ Maven” 创建一个Spring Boot项目: 检查指南: : 从Spring Initializr开始-https: 对于所有Spring...

    BackEndOrderes

    创建一个Spring Boot Web服务搭建开发环境查看以下快速入门指南: : 来安装Java SDK 安装Java依赖工具“ Maven” 创建一个Spring Boot项目: 检查指南: : 从Spring Initializr开始-https: 对于所有Spring应用程序,...

    快速学习springboot 高效率,低封装,面向学习型Java开发框架 简单入门springboot够用及面试

    使用Maven做项目管理,提高项目的易开发性、扩展性 四大模块,系统管理(SYS)模块、 内容管理(CMS)模块、在线办公(OA)模块、代码生成(GEN)模块。 系统管理模块 ,包括企业组织架构(用户管理、机构管理、...

    tom-brady-facts:发送Tom Brady事实的应用程序

    技术栈: Java 8 Sprint Boot2 MySQL的码头工人昂首阔步HibernateORM入门搭建环境设置Docker: : 设置Maven: : Java设置建立项目您必须使用可以在twillio上找到的值来配置此文件这是Spring Boot的标准应用程序文件...

    J2eeFAST企业级快速开发平台 v2.0.8

    是一个Java EE企业级快速开发平台,基于经典技术组合(Spring Boot、Spring MVC、Apache Shiro、MyBatis-Plus、Freemarker、Bootstrap、AdminLTE)采用经典开发模式,让初学者能够更快的入门并投入到团队开发中去。...

    J2eeFAST企业级快速开发平台-其他

    J2eeFAST是一个Java EE企业级快速开发平台,基于经典技术组合(Spring Boot、Spring MVC、Apache Shiro、MyBatis-Plus、Freemarker、Bootstrap、AdminLTE)采用经典开发模式,让初学者能够更快的入门并投入到团队...

Global site tag (gtag.js) - Google Analytics