springboot系列(二) 创建springboot工程
本文转载自:https://www.cnblogs.com/magicalSam/p/7171716.html
简介
- Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者的。
- 在以前的spring项目中,都会面对大量繁琐的配置,使用的时候基本上都是大量的复制黏贴。而Spring Boot 则能让我们在不需要过多的配置下,轻松快速地搭建Spring Web应用,开箱即用,没有代码生成,也无需XML配置,从而快速使用spring框架。
开始
版本:java 1.8.0_51 & spring boot 1.5.4
一、构建简单spring boot 项目
这里官网提供的生成器SPRING INITIALIZR 来创建简单的spring boot 项目。
1. 访问 http://start.spring.io
选项: 工程(maven) 语言(java) SpringBoot版本(1.5.4)
Group填组名,Artifact填模块名,右侧Dependencies 可以选择相应的依赖,因为我们要构建web项目,所以可以添加web的依赖。
点击 Generate Project 生成下载项目。
2. 把下载的maven项目导入IDE并运行
把下载的项目解压并导入到IDE中(这里使用IntelliJ IDEA)
如下:
直接运行 DemoApplication.java 的main方法。
运行成功的截图:
其中可以看到,项目的进程ID为:25642,可以通过java的jconsole工具查看详细信息。
其中可以看到项目的启动端口为8080 (spring boot 默认端口,可以在application.properties中修改)
3. 编写controller服务
新建controller包,包下新建IndexController
package com.sam.demo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author sam
* @since 2017/7/14
*/
@RestController
public class IndexController {
@RequestMapping("/index")
public String index() {
return "index";
}
}
注:@RestController 这个注解相当于同时添加@Controller和@ResponseBody注解。
运行DemoApplication.java 启动项目,启动日志可以看到端口为8080
打开浏览器访问:http://localhost:8080/index 可得结果。
说明'''项目运行方式:
- 在idea中,直接运行DemoApplication.java 文件。
- 把项目通过maven命令 mvn package 打成jar包,通过命令 java -jar demo-0.0.1-SNAPSHOT.jar 直接执行jar包
- 借助maven插件,执行mvn spring-boot:run 即可运行项目。
二、pom.xml 讲解
打开pom.xml文件,查看配置信息
继承 parent 父模块,spring-boot-starter-parent 模块中包含了自动配置、日志和YAML(参考:https://my.oschina.net/u/3235888/blog/887854) ,使构建spring项目变得简单。
<!-- 继承 spring boot 父包-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
pom.xml中依赖 spring-boot-starter-web 模块,包括了Tomcat和spring-webmvc(参考:https://my.oschina.net/u/3235888/blog/887854) ,不需要指定version 版本,因为父模块中已经有默认配置,如果需要指定版本可添加。
<!-- 构建web项目模块 包括了Tomcat和spring-webmvc -->
<!-- spring-boot-starter-web 默认依赖了tomcat的starter 所以使得项目可以直接运行而不需要部署到tomcat中-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
pom.xml中依赖 spring-boot-starter-test 测试模块,包括JUnit、Hamcrest、Mockito
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
在spring-boot中,模块的依赖都是以starter的方式进行,以 spring-boot-starter-方式命名,指明了具体的模块。spring-boot生态中提供了丰富的starter供开发者使用(参考:https://my.oschina.net/u/3235888/blog/887854)
这种模块化的依赖,简化了大量的依赖配置。使用starter的依赖方式,可以把相应需要依赖的包一起依赖到项目中,而不像传统的Spring 需要各自依赖包。
如在spring-boot中web模块,在传统的Spring配置中需要依赖 org.springframework spring-web 等web服务的包,在spring-boot中,只需要依赖spring-boot-starter-web 就能把相应的包一并依赖进来,极大的简化了配置。
补充
上面讲解了可以从 http://start.spring.io 中直接构建spring-boot项目
下面讲解直接在IntelliJ IDEA中构建spring-boot项目
1. 打开 IDEA ,新建项目
2. 选择Spring Initializr 并在 Choose Initializr Service URL 填入 https://start.spring.io ,点击Next
3. 填入Group Artifact 等相关信息,点击Next
4. 选择你需要依赖的模块,点击Next
5. 点击Finish即可
版权声明:本文为博主原创文章,转载请注明出处。
springboot系列(二) 创建springboot工程的更多相关文章
- springboot系列二、springboot项目搭建
一.官网快速构建 1.maven构建项目 1.访问http://start.spring.io/ 2.选择构建工具Maven Project.Spring Boot版本2.1.1以及一些工程基本信息, ...
- SpringBoot系列二:SpringBoot自动配置原理
主程序类的注解 @SpringBootApplication 注解,它其实是个组合注解,源码如下: @Target({ElementType.TYPE}) @Retention(RetentionPo ...
- SpringBoot系列三:SpringBoot自定义Starter
在前面两章 SpringBoot入门 .SpringBoot自动配置原理 的学习后,我们对如何创建一个 SpringBoot 项目.SpringBoot 的运行原理以及自动配置等都有了一定的了解.如果 ...
- eclipse下载SpringBoot插件及创建SpringBoot项目
一.eclipse在线下载SpringBoot插件 1.help->eclipse marketplace->popular-选择spring tool suite(STS)进行下载 ...
- 【SpringBoot】01.创建Springboot项目及启动器
创建Springboot项目及启动器 1.创建一个简单maven项目 SpringBoot2.0以下需要使用JDK1.7 ,2.0以上使用JDK1.8 如果需要修改JDK的版本需要打开pom文件: & ...
- SpringBoot系列二:搭建自己的第一个SpringBoot程序
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 一.根据官网手工搭建(http://projects.spring.io/spring-boot/#quick-start) 1 ...
- 【Eclipse】-NO.163.Eclipse.1 -【Eclipse springboot 1.x 创建maven工程初始化报错】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- springboot系列十、springboot整合redis、多redis数据源配置
一.简介 Redis 的数据库的整合在 java 里面提供的官方工具包:jedis,所以即便你现在使用的是 SpringBoot,那么也继续使用此开发包. 二.redidTemplate操作 在 Sp ...
- springboot系列五、springboot常用注解使用说明
一.controller相关注解 1.@Controller 控制器,处理http请求. 2.@RespController Spring4之后新加的注解,原来返回json需要@ResponseBod ...
- springboot系列三、springboot 单元测试、配置访问路径、多个配置文件和多环境配置,项目打包发布
一.单元测试 生成的demo里面包含spring-boot-starter-test :测试模块,包括JUnit.Hamcrest.Mockito,没有的手动加上. <dependency> ...
随机推荐
- hana客户端工具
SAP HANA可视化客户端工具是C/S模式的,远程访问使用,都不是太方便,目前有一款基于WEB的可视化工具TreeSoft,通过浏览器就可以访问使用了,并且可以同时管理.维护.监控SAP HANA等 ...
- Unity与Android刘海屏适配
本周学习Unity与Android刘海屏适配 关于刘海屏适配部分 网上有很多教程 这里只是做一下整理 https://blog.csdn.net/xj1009420846/article/detail ...
- 做了一个非竞价排名、有较详细信息的程序员职位 match 网站
作为一个程序员,每次看机会当我去 BOSS 直聘 或者拉勾网进行搜索时,返回的顺序并不是根据匹配程度,而是这些公司给 BOSS 直聘或者拉勾网付了多少钱.这种百度式的竞价排名机制并没有把我做为求职者的 ...
- VS2010开发.cpp与.c的注意事项
VS2010开发.cpp与.c的注意事项 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 强大的VS2010,正是由于vs2010的完全封装,让现在的wind ...
- 最新 好未来java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿. 好未来等10家互联网公司的校招Offer,因为某些自身原因最终选择了 好未来.6.7月主要是做系统复习.项目复盘.Leet ...
- IO-file-07 递归
package com.bwie.io; /** * 递归: * 方法自己调用自己 * 递归头:何时结束递归 * 递归体:重复调用 * @author Allen17805272076 * */ pu ...
- Git在新电脑拉github 上的项目
非小白教程.多少有点了解的才能看懂. 1,安装git 忽略,任意i找一个图文教程即可 2,在命令行模式 输入 cd ~/.ssh/ 进入c:administrator的文件下的.ssh文件夹: 或者 ...
- sqlite 版本更新维护, 表结构判断, 更新
sqlite会自动维护一个系统表sqlite_master,该表存储了我们所创建的各个table, view, trigger等等信息. sqlite_master表数据字段: type: 类型,取值 ...
- 小程序使用mpvue框架无缝接入Vant Weapp组件库
有美团开源出的mpvue以其vue的语法和良好的开发效率再搭配上用户体验良好的UI组件无疑是定制化微信小程序的开发方式,然而由于mpvue是对微信原生开发的再次封装,这也为我们引入UI组件添加了不少麻 ...
- Docker从国内代理下载镜像
docker从国内拉取镜像,或者通过加速器拉取 由于国内访问直接访问Docker hub网速比较慢,拉取镜像的时间就会比较长.一般我们会使用镜像加速或者直接从国内的一些平台 ...