Springboot的第一个程序
一、什么是Springboot
随着动态语言的流行(Ruby、Groovy、Scala、Node.js),Java的开发显得格外的笨重:繁多的配置、低下的开发效率、复杂的部署流程以及第三方技术集成难度大。在上述环境下,Springboot应运而生。它使用"习惯优于配置"(项目中存在大量的配置,此外还内置一个习惯性的配置,让你无须手动进行配置)的理念让你的项目快速运行起来。使用springboot很容易创建一个独立运行(运行jar,内嵌servlet容器)、准生产级别的基于Spring框架的项目,使用springboot你可以不用或者只需要很少的Spring配置。
二、Springbot的优缺点
优点:
1.快速构建项目; 2.对主流开发框架的无配置集成; 3.项目可独立运行,无须外部依赖servlet容器; 4.提供运行时的应用监控; 5.极大地提高了开发、部署效率; 6.与云计算的天然集成。
缺点:
1.书籍文档较少且不够深入; 2.如果你不认同Spring框架,这也许是它的缺点,但建议你一定要使用Spring框架。
三、Springboot入门程序
(1)设置spring boot的parent
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version></parent>
说明:Spring boot的项目必须要将parent设置为spring boot的parent,该parent包含了大量默认的配置,大大简化了我们的开发。
(2)导入spring boot的web支持
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>
(3)添加Spring boot的插件
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId></plugin>
即pom.xml:
<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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version> </parent> <groupId>com.hcx.springboot</groupId> <artifactId>hcx-springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.7.RELEASE</version> </dependency> <!-- 连接池 --> <dependency> <groupId>com.jolbox</groupId> <artifactId>bonecp-spring</artifactId> <version>0.8.0.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <plugins> <!-- 资源文件拷贝插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> <!-- java编译插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> <pluginManagement> <plugins> <!-- 配置Tomcat插件 --> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </pluginManagement> </build></project>
(4)编写第一个Spring Boot的应用
package com.hcx.springboot.demo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.annotation.Configuration;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller@SpringBootApplication //声明这是一个springboot的应用@Configuration //声明该类为一个配置类public class HelloApplication { //springboot的项目命名中,一般都有一个xxxApplication类,该类作为springboot项目的入口类 @RequestMapping("hello") @ResponseBody public String hello(){ return "hello world"; } public static void main(String[] args) { /** * 第一个参数:要运行的应用(该应用一定要包含@SpringBootApplication注解) * 第二个参数:直接用args,也可以指定内置参数 */ SpringApplication.run(HelloApplication.class, args); } }
代码说明:
1、@SpringBootApplication:Spring Boot项目的核心注解,主要目的是开启自动配置;2、@Configuration:这是一个配置Spring的配置类;3、@Controller:标明这是一个SpringMVC的Controller控制器;4、main方法:在main方法中启动一个应用,即:这个应用的入口;
(5)启动应用
在Spring Boot项目中,启动的方式有两种,一种是直接run Java Application另外一种是通过Spring Boot的Maven插件运行。
第一种:
第一种启动方式.png
第二种:
第二种启动方式.png
启动效果:
启动效果.png
看到如下信息就说明启动成功了:
INFO 6188 --- [ main] c.i.springboot.demo.HelloApplication : Started HelloApplication in 3.281 seconds (JVM running for 3.601)
(6)测试
打开浏览器,输入地址:127.0.0.1:8080/hello
启动.png
作者:JS_HCX
链接:https://www.jianshu.com/p/446f19daf1ae