您的位置:首页 > 编程语言 > Java开发

SpringBoot入门

2016-11-26 21:16 211 查看

1、Background

最初没有大量的配置,各自为战的”小作坊“式的开发。慢慢的,我们意识到这种方式的弊端。”小作坊“彼此不交流,难以使得资源合理利用,而且水平也不高。

之后,随着ioc、aop的引入,开发的流程变得标准化、规范化,资源的利用率提升很多。但它也有不足之处,为了规范和整理彼此之间的关系,我们也付出了不小的代价,那就是需要做大量的配置工作。

这时候,人们开始追求更方便、更灵活的开发模式。

2、What

Spring Boot是Spring社区发布的一款开源项目,使用它,你可以更加轻松、快捷的构建项目。

2.1 与Jfinal

单从这一点来看,小编最初了解到的是Jfinal。它的核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级。因此,二者的设计理念还是蛮像的。但其中的原理就差很多了,而且jfinal的java config也不必配置文件方便很多。

2.2 约定大于配置

Convention Over Configuration 也叫按约定设计,这个宗旨使得软件设计、开发更加的方便。在ORM框架、Maven等中都有很好的体现。


当然,在SpringBoot中,更是利用了这一点。既然大家都不想写这么繁杂的配置信息,那么我就提供一些默认的约定,如果你想遵循其他的约定,就再重新配置。

2.3 特性

创建独立的Spring应用程序

嵌入Web容器(Tomcat、Jetty等)

简化Maven配置(starter pom)

自动配置Spring

不需要xml配置

3、How

这个例子很简单,主要是熟悉一下,后面就介绍注解背后做的工作。

Step 1:

pom文件配置

<!-- 继承Springboot默认配置 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.2.RELEASE</version>
</parent>

<dependencies>
<!-- 添加Web应用的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

<!-- 构建打包 -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>


代码实现

1、启动类

运行项目时,执行运行该类中的main方法即可。

package com.test.web;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Configration {

public static void main(String[] args) {
SpringApplication.run(Configration.class, args);
}
}


2、Controller类

这里给了两种方式,一种是简单字符串返回的测试,另一种是注入service。

package com.test.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@EnableAutoConfiguration
public class BaseController {

//注入service
@Autowired
BaseService baseService;

@RequestMapping("/hello")
String home(){
//return "hello world!";
return baseService.hello();
}

}


运行启动类,我们可以看到控制台的输出信息。



在浏览器中输入 http://localhost:8080/hello

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  springboot spring