springboot入门Helloword 程序
1、SpringBoot简介
SpringBoot是:
-
简化Spring应用开发的一个工具,不是框架
-
Spring全家桶的大整合
优点:
- 快速创建独立运行的Spring项目以及与主流框架集成
- 使用嵌入式的Servlet容器,项目无需达成war包
- stater自动依赖与版本控制
- 大量的自动配置简化开发,也可以修改默认配置
- 无需配置xml文件,无代码生成(使用条件注解)
- 准生产环境的运行时应用监控
- 与云计算的天然集成
2、单体应用与微服务
2.1、单体应用(ALL IN ONE)
将所有业务场景的表示层,业务逻辑层和数据访问层放在一个工程中,最终经过编译,打包,部署在一台服务器上。扩展的时候需要复制整个单体程序到服务器上进行扩展,随着业务越来越复杂,应用需要增加的功能越来越多单体应用的代码量越来越大,代码可读性,可维护性,可扩展性会下降。由于系统的庞大与关联较多,应用中的任何一个BUG都有可能导致整个系统宕机。
2.2、微服务
一个应用应该是一组小型服务,可以通过HTTP的方式进行互通。微服务架构把每个功能元素放进一个独立的服务中,并且通过跨服务器分发这些服务进行扩展,只在需要的时候进行复制。
3、SpringBoot的Hello World程序
浏览器发送hello请求,服务器接收请求并处理,并响应hello!!字符串
3.1、方式一:先建maven工程
步骤:
- 创建一个maven项目
- 导入相关依赖,启动器
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
- 创建引导类,即SpringBoot的主配置类
被@SpringBootApplication标注的类即为引导类,也叫SpringBoot的启动类
@SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args){
SpringApplication.run(HelloWorldMainApplication.class,args);
}
}
编写相关的controller,service:
@Controller
@ResponseBody
public class HelloWorld {
@RequestMapping("/hello")
public String helloWorld(){
return "hello!!";
}
}
- 启动运行
3.2、使用Idea的Spring initializr快速构建
网络不好的情况下:
4、简化部署
打好jar包可以在终端直接使用java -jar命令运行项目
4.1、导入打包的插件依赖
<!-- 这个插件,可以将应用打包成一个可执行的jar包;-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
4.2、将项目打包
把打好的jar包放到桌面上