Spring boot设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置

用spring的方法来构建RESTful Web服务,HTTP请求是由controller处理,这些组件可以由@ restcontroller注解

@RestControllerpublicclassGreetingController{privatestaticfinalStringtemplate="Hello, %s!";privatefinalAtomicLongcounter=newAtomicLong();@RequestMapping("/greeting")publicGreetinggreeting(@RequestParam(value="name",defaultValue="World")Stringname){returnnewGreeting(counter.incrementAndGet(),String.format(template,name));}}

注解@requestMapping 默认支持post,get,put,可以使用@RequestMapping(method=GET)

@ RequestParam值在greeting()方法名称参数,这个查询字符串参数不是必需的;如果它在请求缺席,默认值会被使用。这个RESTful Web服务          controller简单地返回一个请求的对象,然后对象被直接写入HTTP响应JSON格式中。此代码使用spring4的新”restcontroller注释,这注解标志作为一    个控制器,每一个方法返回一个对象而不是一个view,这个注解包括了@ responsebody,@controller。请求的对象必须被转换成JSON,感谢spring    的HTTP消息转换器支持,你不需要手动做这种转换。因为Jakeson 2在classp中,spring的mappingjackson2httpmessageconverter自动选择转换到     JSON实例。

传统上市打包成war部署到服务器中,下面演示创建一个独立的application。把一切打包到一个可执行jar文件中,由一个Java main()方法驱动。并 且,也可以使用spring支持的embedding the Tomcat servlet container运行。

@SpringBootApplicationpublicclassApplication{publicstaticvoidmain(String[]args){SpringApplication.run(Application.class,args);}}

@SpringBootApplication 注解包括

@Configuration  the application context 定义beans

@EnableAutoConfiguration 告诉spring启动开始添加基于路径的配置的beans,其他beans,及各种设置。

你通常会为Spring MVC应用添加@EnableWebMvc,但spring boot自动添加,当它看到Springwebmvc在classpath。这个标志中的应用作为一个Web应用程序,并激活如设置DispatcherServlet。

@ComponentScan告诉spring寻找其他组件,配置,和services(在hello包中),让它找到hellocontroller

main()使用spring boot的springapplication run()方法来启动应用程序。你有没有注意到没有一条XML?没有web.xml文件。这个web应用程序是100%纯的java。

http://localhost:8080/greeting

{"id":1,"content":"Hello, World!"}
http://localhost:8080/greeting?name=User

{"id":2,"content":"Hello, User!"}

<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>org.springframework</groupId>
<artifactId>gs-rest-service</artifactId>
<version>0.1.0</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.5.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<properties>
<java.version>1.7</java.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</pluginRepository>
</pluginRepositories>
</project>

sping boot demo解释相关推荐

  1. 在Sping Boot logback的使用

    在Sping Boot logback的使用: 只需要4步即可完成配置: 1 在application.properties中配置logback.xml # log logging.config=cl ...

  2. ascs demo解释(四):pingpong_client + pingpong_server, socket_management

    QQ交流群:198941541 这一组合用于乒乓测试,其实concurrent_client + concurrent_server也是乒乓测试,只是测试方向不一样而已,如果你放开宏ASCS_WANT ...

  3. Sping boot】 错误: 程序包不存在

    [Sping boot] 错误: 程序包xxx 不存在 这个问题,网上有好多解决方案,对应不同情况,我记录一下新的情况! 这个问题,网上有好多解决方案,对应不同情况,我记录一下新的情况! 在试了好多方 ...

  4. spring boot demo( 获取一个RESTful web service)

    Consuming a RESTful Web Service spring demo中给的接口是  http://gturnquist-quoters.cfapps.io/api/random. 返 ...

  5. Java接入PayPal教程,Spring boot Demo源码,企业账号注册,支付,回调,退款全流程,最新PayPal SDK

    一.环境准备 1. 注册 2. 创建沙箱测试账号 3. Client ID及Secret 二.核心代码 1. 官方github sdk 2. pom引用 3. 代码讲解 4. 支付代码demo流程 5 ...

  6. Bootstrap+Thymeleaf+Sping boot+Mybatis整合

    前言:项目是做一个进销存管理中的供应商管理和联系人管理 供应商和联系人是一对多表的关系,需求就是可以对供应商和联系人做增删改查,可以通过供应商的编号名称检索出联系人的信息 一.环境配置 IDE:Int ...

  7. spring boot demo(spring jdbc访问数据)

    Accessing Relational Data using JDBC with Spring 您将使用Spring JdbcTemplate 构建应用,访问数据库中数据. 下面的简单数据访问逻辑, ...

  8. 【sping boot】run as maven install 和buid fat jar打包不一样 后者运行不起来

    打包后线上运行报错 11:53:10.088 [main] ERROR org.springframework.boot.SpringApplication - Application run fai ...

  9. sping boot 配置多数据源

    spring boot 本身自带对数据源的支持. 但在项目开发过程中,存在这种情况需要用到多数据源,用spring boot 自带的数据源就不是那么方便了.这里有个实例实现spring boot 完成 ...

最新文章

  1. JS正则表达式使用方法及示例
  2. 如何系统的自学python 知乎-如何系统地自学 Python?
  3. mac远程连接centos安装mysql_centos安装Mysql并远程连接
  4. 转载:百度地图api 常用 例子
  5. 常见网站CSS样式重置
  6. bzoj4546-codechef XRQRS(可持久化Trie)
  7. turbo c 2.0 官方下载_随剪app下载-随剪2.0安卓官方版下载v2.0
  8. window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
  9. 精美高清壁纸:2014年1月桌面日历壁纸免费下载
  10. js能调用c语言吗,HTML页面,测试JS对C函数的调用
  11. 《概率论与数理统计》之常见概率分布
  12. 面试:第十四章:大厂中高级java程序员面试题
  13. TI单芯片毫米波雷达代码走读(二十五)—— 角度维(3D)处理流程
  14. 【问题描述】编写一个程序计算出球、圆柱和圆锥的表面积和体积。
  15. 到底什么是BI?BI能为企业带来什么?
  16. 新网域名添加AAAA记录
  17. 2021-2027全球及中国翻译软件行业研究及十四五规划分析报告
  18. 鸿蒙系统会用于所有华为手机吗,第二款鸿蒙终端发布!搭载鸿蒙系统的华为手机还会远吗?...
  19. OpenNI开源框架
  20. 《自己动手写Docker》学习笔记2

热门文章

  1. FreeMarker 基础语法教程
  2. C语言的关键字 详解
  3. C++ 引用的几个用法
  4. 机器学习-数据科学库-day6
  5. K8S学习笔记之使用Fluent-bit将容器标准输入和输出的日志发送到Kafka
  6. 网络篇-NSURLSession介绍
  7. Phaser开源2d引擎 html5游戏框架中文简介
  8. spark streaming限制吞吐
  9. javascript中的内存泄漏
  10. selenium(待补充)