O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

RESTful Web APIs with Spring

Video Description

4 Hours of Video Instruction

Overview

RESTful Web APIs with Spring LiveLessons demonstrates how to write REST services, and manage, secure and consume them using Spring Boot.

Description

REST has enabled people to build mobile applications that capture our imagination, entertain us, and help us. REST has ushered in a generation of incredibly sophisticated, HTML5-powered browser applications. REST has also made it easier for organizations to adopt a service-oriented architecture with less friction.

REST’s flexibility, however, can also be its greatest weakness: as often as not there is no clear guidance on where to go and how to get there. What does it mean to deploy a REST service? How do you handle errors in a REST service? What's the easiest way to write a REST service?

Spring Developer Advocate Josh Long discusses and demonstrates strategies for securing REST API access along with handling errors and versioning. These LiveLessons also cover how hypermedia and HATEOAS help you to deliver developer and consume friendly web services.

About the Instructor

Josh Long is an open-source developer and the Spring developer Advocate at Pivotal.

He is the author of four books and is the author of Spring Framework LiveLessons. Josh has spoken at many different industry conferences internationally including TheServerSide Java Symposium, SpringOne, OSCON, JavaZone, Devoxx, Java2Days and many others. When he’s not hacking on code for SpringSource, he can be found at the local Java User Group or at the local coffee shop. Josh likes solutions that push the boundaries of the technologies that enable them. His interests include scalability, BPM, grid.processing, mobile computing and so-called "smart" systems. He blogs at spring.io/blog or joshlong.com.

You can follow Josh on Twitter: @starbuxman

Josh Long’s Spring Framework LiveLessons provides a walking tour of all of the Spring projects, including: Spring, Spring MVC, Spring Data, Spring Batch, Spring Integration, Spring Security, Spring Social, and more.

Skill Level

  • Intermediate

What You Will Learn

  • Spring and Spring Boot
  • How to build a REST service using Spring
  • How to embrace hypermedia with Spring HATEOAS
  • How to secure a REST API
  • What's involved in deploying a micro service

Who Should Take This Course

  • Developers who want to jump on board the REST bandwagon.
  • REST is the key to enabling mobile and HTML5 applications.
  • REST is the technology that lets you play in a distributed, multi client world.

Course Requirements

  • Some familiarity with basic Java is assumed.

Table of Contents

INTRODUCTION

Lesson 1: Starting with Spring

Topics

1.1 Spring IO

1.2 Spring.io Website and Resources

1.3 Spring 4

1.4 Spring Boot

Lesson 2: Testing

Topics

2.1 Testing with Spring Boot

Lesson 3: Spring MVC

Topics

3.1 Model-View-Controller

3.2 Installing Spring MVC

3.3 A Rich Servlet Toolkit

Lesson 4: REST Essentials

Topics

4.1 What is REST?

4.2 HTTP Verbs

4.3 Status Codes

4.4 Content Negotiation

4.5 Some REST Power Tools

Lesson 5: Towards Hpyermedia

Topics

5.1 The Maturity Model—Basic REST

5.2 Building a Basic RESTful Service

5.3 HATEOAS

5.4 Spring Data REST

Lesson 6: Testing Web Services with Spring MVC Test Framework

Topics

6.1 Testing

Lesson 7: Error Handling

Topics

7.1 Handling Errors in a REST API

7.2 Status Codes

7.3 Descriptive Errors

7.4 Using @ControllerAdvice

Lesson 8: API Versioning

Topics

8.1 Versioning Your API

Lesson 9: Security

Topics

9.1 Spring Security

9.2 Securing REST Services

9.3 SSL and TLS

9.4 The Trouble with Passwords

9.5 X-Auth

9.6 OAuth

Lesson 10: The Connected Web of APIs

Topics

10.1 A Connected World in 60 Seconds

10.2 Spring Social

10.3 Spring Social Bindings — Demo 1

10.4 Spring Social Bindings — Demo 2

Lesson 11: Deployment

Topics

11.1 Micro Service Architecture

11.2 Embedded Web Servers

11.3 Traditional / Classic Servers

11.4 Cloud

11.5 Production Ready REST

About LiveLessons Video Training

The LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at: http://www.informit.com/livelessons

Table of Contents

  1. RESTful Web APIs with Spring LiveLessons: Introduction
    1. RESTful Web APIs with Spring LiveLessons: Introduction 00:02:16
  2. Lesson 1: Starting with Spring
    1. Topics 00:00:56
    2. 1.1 Spring IO 00:03:14
    3. 1.2 Spring.io Website and Resources 00:01:38
    4. 1.3 Spring 4 00:02:38
    5. 1.4 Spring Boot 00:23:25
  3. Lesson 2: Testing
    1. Topics 00:00:23
    2. 2.1 Testing with Spring Boot 00:08:32
  4. Lesson 3: Spring MVC
    1. Topics 00:00:16
    2. 3.1 Model View Controller 00:02:10
    3. 3.2 Installing Spring MVC 00:12:03
    4. 3.3 A Rich Servlet Toolkit 00:03:12
  5. Lesson 4: REST Essentials
    1. Topics 00:00:24
    2. 4.1 What is REST? 00:03:54
    3. 4.2 HTTP Verbs 00:03:52
    4. 4.3 Status Codes 00:04:12
    5. 4.4 Content Negotiation 00:04:19
    6. 4.5 REST Power Tools 00:02:23
  6. Lesson 5: Towards Hypermedia
    1. Topics 00:00:24
    2. 5.1 The Maturity Model—Basic REST 00:05:10
    3. 5.2 Building a Basic RESTful Service 00:20:16
    4. 5.3 HATEOAS 00:13:22
    5. 5.4 Spring Data REST 00:02:02
  7. Lesson 6: Testing REST
    1. Topics 00:00:16
    2. 6.1 Testing Web Services with Spring MVC Test Framework 00:09:34
  8. Lesson 7: Error Handling
    1. Topics 00:00:17
    2. 7.1 Handling Errors in a REST API 00:01:18
    3. 7.2 Status Codes 00:01:08
    4. 7.3 Descriptive Errors 00:06:34
    5. 7.4 Using @ControllerAdvice 00:10:04
  9. Lesson 8: API Versioning
    1. Topics 00:00:13
    2. 8.1 Versioning Your API 00:02:50
  10. Lesson 9: Security
    1. Topics 00:00:20
    2. 9.1 Spring Security 00:04:58
    3. 9.2 Securing REST Services 00:01:23
    4. 9.3 SSL and TLS 00:06:17
    5. 9.4 The Trouble with Passwords 00:02:19
    6. 9.5 X-Auth 00:05:49
    7. 9.6 OAuth 00:17:10
  11. Lesson 10: The Connected Web of APIs
    1. Topics 00:00:23
    2. 10.1 A Connected World in 60 Seconds 00:02:10
    3. 10.2 Spring Social 00:00:55
    4. 10.3 Spring Social Bindings - Demo 1 00:04:33
    5. 10.4 Spring Social Bindings - Demo 2 00:12:39
  12. Lesson 11: Deployment
    1. Topics 00:00:21
    2. 11.1 Micro Service Architecture 00:03:38
    3. 11.2 Embedded Web Servers 00:05:19
    4. 11.3 Traditional / Classic Servers 00:05:54
    5. 11.4 Cloud 00:01:25
    6. 11.5 Production Ready REST 00:08:55
  13. Summary
    1. Summary of RESTful Web APIs with Spring LiveLessons 00:00:31