SpringBoot入门与RESTful API的实现

简介:
一,Hello World
IDE:Intellij IDEA 2016.2.4
JDK:1.8

1,创建项目:
创建Spring Boot项目


设置项目基础信息


选择需要使用的第三方依赖




启动

至此,就创建了一个简单的Spring jar程序。

2,目录与文件说明

src/main/java下的程序入口:SpringBootHelloworldApplication
src/main/resources下的配置文件:application.properties
src/test/下的测试入口:SpringBootHelloworldApplicationTests

pom.xml

1:spring项目的基础信息,一个jar包项目。
2:每个spring boot项目必有 parent。
3:公共的属性设置,字符集,java版本等。
4:基础依赖。spring-boot-starter:核心模块,包括自动配置支持、日志和YAML
5:单元测试的依赖。spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito
6:打包插件。


每个spring boot项目都有一个application。@SpringBootApplication 是 spring boot 的核心全局注解。

3,工程项目升级
当前只是一个最简单的 jar 包项目,运行一下就结束了。接着实现一个简单的web服务。
a,pom.xml 追加如下依赖:
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

spring-boot-starter依赖即可注释掉。

b,创建 ApiTestController 服务类:


ApiTestController2V 服务类使用复合注解:

@Controller:修饰class,用来处理http请求的对象
@RestController:Spring4之后新加入,原来在@Controller中返回json需要@ResponseBody来配合,现在用@RestController替代即可,默认返回json格式,是 @Controller 与 @ResponseBody 的复合注解。
@RequestMapping:配置url映射
注:1,如果项目前后台分离,纯接口的,使用 @RestController 即可;
        2,如果项目前后台混合,使用 @Controller ,接口的方法,加 @ResponseBody。
        3,@RequestMapping 后面指定请求方法时,默认是支持所有请求方法的(get,put,delete,post等)。

c,配置启动
当前程序启动后,默认8080端口,可修改 application.properties 文件。


注:也可以将项目打包,用 java 命令运行。
#打包
mvn clean install
#运行
java -jar springboot_helloworld-0.0.1-SNAPSHOT.jar

4,编写单元测试
在 src/test/ 下,创建 ApiTestController 的测试类 ApiTestControllerTests,来模拟http请求测试。

右击运行该单元测试case。

注:因为有中文,所以,MediaType 设置为 APPLICATION_JSON_UTF8,否则会报错。

三,RESTful API的实现
1,创建 ApiRestFullTestController 服务类:

2,编写单元测试
在 src/test/ 下,创建 ApiRestFullTestController 的测试类 ApiRestFullTestControllerTests。

右击运行该单元测试case。
注:切记,因为有中文,所以,MediaType 设置为 APPLICATION_JSON_UTF8,否则会报错。

补充:1,spring 启动时,控制台界面:

通过,在 resources 目录下创建 banner.txt 文件,输入:

重新启动后:


例:springBoot_Helloworld
相关文章
|
11天前
|
安全 Java API
RESTful API设计与实现:Java后台开发指南
【4月更文挑战第15天】本文介绍了如何使用Java开发RESTful API,重点是Spring Boot框架和Spring MVC。遵循无状态、统一接口、资源标识和JSON数据格式的设计原则,通过创建控制器处理HTTP请求,如示例中的用户管理操作。此外,文章还提及数据绑定、验证、异常处理和跨域支持。最后,提出了版本控制、安全性、文档测试以及限流和缓存的最佳实践,以确保API的稳定、安全和高效。
|
14天前
|
小程序 前端开发 API
小程序全栈开发中的RESTful API设计
【4月更文挑战第12天】本文探讨了小程序全栈开发中的RESTful API设计,旨在帮助开发者理解和掌握相关技术。RESTful API基于REST架构风格,利用HTTP协议进行数据交互,遵循URI、客户端-服务器架构、无状态通信、标准HTTP方法和资源表述等原则。在小程序开发中,通过资源建模、设计API接口、定义资源表述及实现接口,实现前后端高效分离,提升开发效率和代码质量。小程序前端利用微信API与后端交互,确保数据流通。掌握这些实践将优化小程序全栈开发。
|
24天前
|
前端开发 Java API
构建RESTful API:Java中的RESTful服务开发
【4月更文挑战第3天】本文介绍了在Java环境中构建RESTful API的重要性及方法。遵循REST原则,利用HTTP方法处理资源,实现CRUD操作。在Java中,常用框架如Spring MVC简化了RESTful服务开发,包括定义资源、设计表示层、实现CRUD、考虑安全性、文档和测试。通过Spring MVC示例展示了创建RESTful服务的步骤,强调了其在现代Web服务开发中的关键角色,有助于提升互操作性和用户体验。
构建RESTful API:Java中的RESTful服务开发
|
27天前
|
XML JSON 安全
谈谈你对RESTful API设计的理解和实践。
RESTful API是基于HTTP协议的接口设计,通过URI标识资源,利用GET、POST、PUT、DELETE等方法操作资源。设计注重无状态、一致性、分层、错误处理、版本控制、文档、安全和测试,确保易用、可扩展和安全。例如,`/users/{id}`用于用户管理,使用JSON或XML交换数据,提升系统互操作性和可维护性。
18 4
|
29天前
|
安全 API 开发者
构建高效可扩展的RESTful API服务
在数字化转型的浪潮中,构建一个高效、可扩展且易于维护的后端API服务是企业竞争力的关键。本文将深入探讨如何利用现代后端技术栈实现RESTful API服务的优化,包括代码结构设计、性能调优、安全性强化以及微服务架构的应用。我们将通过实践案例分析,揭示后端开发的最佳实践,帮助开发者提升系统的响应速度和处理能力,同时确保服务的高可用性和安全。
30 3
|
1月前
|
缓存 前端开发 API
构建高效可扩展的RESTful API:后端开发的最佳实践
【2月更文挑战第30天】 在现代Web应用和服务端架构中,RESTful API已成为连接前端与后端、实现服务间通信的重要接口。本文将探讨构建一个高效且可扩展的RESTful API的关键步骤和最佳实践,包括设计原则、性能优化、安全性考虑以及错误处理机制。通过这些实践,开发者可以确保API的健壮性、易用性和未来的可维护性。
|
1月前
|
API 开发者 UED
深入探讨RESTful API设计原则及最佳实践
在当今互联网时代,RESTful API已成为各种软件系统之间进行通信的重要方式。本文将从资源定义、URI设计、HTTP方法选择、状态码规范等方面深入探讨RESTful API设计的原则与最佳实践,帮助开发者更好地构建高效、健壮的API。
|
JSON 缓存 JavaScript
SpringBoot学习笔记(五、Restful与json)
SpringBoot学习笔记(五、Restful与json)
166 0
SpringBoot学习笔记(五、Restful与json)
|
1月前
|
JSON API 数据库
解释如何在 Python 中实现 Web 服务(RESTful API)。
解释如何在 Python 中实现 Web 服务(RESTful API)。
26 0
|
1月前
|
缓存 安全 测试技术
构建高效的RESTful API:后端开发的实践指南
【2月更文挑战第17天】在数字化转型的浪潮中,RESTful API已成为连接不同软件组件、实现数据交互的核心桥梁。本文将深入探讨如何构建一个高效、可扩展且安全的RESTful API,涉及设计原则、开发流程以及性能优化等关键方面。我们将透过实际案例,展示如何在保证简洁性和灵活性的同时,满足日益增长的业务需求和技术挑战。