在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Spring Boot是每个Java的学习者和开发者所必须要熟练掌握的内容,为什么这么说呢?当然是由于它优雅而又清楚简单的优势决定的。本篇文章主要是面向新手小白的Spring Boot快速入门攻略,会带大家快速认识spring boot,然后介绍它的优势和快速入门的具体操作步骤,感兴趣的朋友赶紧一起来看看吧!

一、什么是Spring Boot?
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。简单来讲,Spring Boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,Spring Boot整合了所有的框架。
二、为什么要使用Spring Boot?
其实原因就只有一个,优雅、清楚、简单优于笨拙、含糊、复杂,这就是Spring Boot的核心竞争力!
三、快速入门攻略
(一)maven构建项目
1、访问http://start.spring.io/
2、选择构建工具Maven Project、Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch to the full version.”java版本选择1.7。
3、点击Generate Project下载项目压缩包
4、解压后,使用eclipse,Import -> Existing Maven Projects -> Next ->选择解压后的文件夹-> Finsh,OK done!
(二)项目结构介绍
一般来讲,Spring Boot的基础结构共三个文件:
src/main/java 程序开发以及主程序入口
src/main/resources 配置文件
src/test/java 测试程序
另外,spingboot建议的目录结果如下:
root package结构:com.example.myproject
com
+- example
+- myproject
+- Application.java
|
+- domain
| +- Customer.java
| +- CustomerRepository.java
|
+- service
| +- CustomerService.java
|
+- controller
| +- CustomerController.java
|
1、Application.java 建议放到跟目录下面,主要用于做一些框架配置
2、domain目录主要用于实体(Entity)与数据访问层(Repository)
3、service 层主要是业务类代码
4、controller 负责页面访问控制
采用默认配置可以省去很多配置,当然也可以根据自己的喜欢来进行更改
最后,启动Application main方法,至此一个java项目搭建好了!
(三)引入web模块
1、pom.xml中添加支持web的模块:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
pom.xml文件中默认有两个模块:
spring-boot-starter :核心模块,包括自动配置支持、日志和YAML;
spring-boot-starter-test :测试模块,包括JUnit、Hamcrest、Mockito。
2、编写controller内容:
@RestController
public class HelloWorldController {
@RequestMapping("/hello")
public String index() {
return "Hello World";
}
}
@RestController 的意思就是controller里面的方法都以json格式输出,不用再写什么jackjson配置的了!
3、启动主程序,打开浏览器访问http://localhost:8080/hello,就可以看到效果了,就是这么很简单!
(四)如何做单元测试
打开的src/test/下的测试入口,编写简单的http请求来测试;使用mockmvc进行,利用
MockMvcResultHandlers.print()打印出执行结果。
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = MockServletContext.class)
@WebAppConfiguration
public class HelloWorldControlerTests {
private MockMvc mvc;
@Before
public void setUp() throws Exception {
mvc = MockMvcBuilders.standaloneSetup(new HelloWorldController()).build();
}
@Test
public void getHello() throws Exception {
mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
.andExpect(MockMvcResultMatchers.status().isOk())
.andDo(MockMvcResultHandlers.print())
.andReturn();
}
}
(五)开发环境的调试
热启动在正常开发项目中已经很常见了吧,虽然平时开发web项目过程中,改动项目启重启总是报错;但springBoot对调试支持很好,修改之后可以实时生效,需要添加以下的配置:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
该模块在完整的打包环境下运行的时候会被禁用。如果你使用java -jar启动应用或者用一个特定的classloader启动,它会认为这是一个“生产环境”。
看完Spring Boot快速入门攻略,大家都学会使用Spring Boot快速搭建项目了吗?可能一些新手小白还是会遇到很多问题,不用担心,博学谷在线教育网站还有相关的视频资源,有学习需求的小伙伴可以在线观看。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java开发的就业方向有哪些?Java程序员市场已经饱和了吗?
Java开发的就业方向有哪些?Java程序员市场已经饱和了吗?Java开发应用比较广泛,很多公司需要java方面的程序员,随着用户体验需求要求越来越高,对于高级程序员的需求还是很大的,想要进入Java开发行业要制定好自己的职业规划。Java行业本身人才需求是供不应求。
12436
2019-08-08 09:43:59
好用的jQuery瀑布流插件有哪些?
目前有Jquery响应式瀑布流布局插件、23行Jquery代码实现定位瀑布流布局特效、Jquery实现超酷时间轴特效、Aui-core实现模拟MVC单列表绝对定位版瀑布流js特效、Timeline时间轴Jquery特效等。
6760
2019-12-30 16:19:13
Java性能调优要注意什么?又有哪些方式?
Java性能调优要注意什么?又有哪些方式?一般来说,Java性能调优有着以下几个原则,即充分而不过分使用硬件资源、合理调整JVM和合理使用JDK包。在Java性能调优的过程中,我们要注意调优步骤、性能瓶颈的表象、外部处理系统的性能不足、CPU消耗分析、上下文切换等等。而Java性能调优的方式主要有设计调优、代码调优、JVM调优、数据库调优和操作系统调优。
6002
2020-01-13 09:45:41
零基础入门Java从哪里开始?
Java在编程语言中老大哥的地位,一直以来都是无法撼动的!因此Java也往往是许多零基础编程初学者的首选语言,然而对于大多数小白来讲,最困惑的事情莫过于零基础入门Java应该从哪里开始。众所周知,学习最重要的就是要有一个系统的规划,这样才不至于在一开始就走错方向。因此本文为大家整理了一条初学者的入门路线,大家可以先参考以下的这份学习大纲开始学习~
5055
2020-04-27 10:10:46
从0开始学Java开发要做哪些准备?
很多从0开始学Java开发的初学者,常常在面对一大堆基础语法知识的时候,感到无从下手。其实这也是很正常的现象,毕竟编程的学习门槛虽然很低,但是学起来并不轻松,想要学好更是难上加难。那么,我们应该在学习之前做哪些准备呢?换句话说,作为零基础的初学者,我们应该如何开始Java开发的学习呢?
5858
2020-08-03 11:47:20
