REST APIs with Java, Spark Framework, MongoDB & GridFS

Learn to create Web Services & Upload and Stream Video through REST
2.0 (18 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
673 students enrolled
Instructed by FA S Development / Web Development
$19
$20
5% off
Take This Course
  • Lectures 14
  • Length 4.5 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 12/2015 English

Course Description

Learn to create a REST APIs by following along with me as we develop a Web Service where we secure it with Basic Authentication, Create Users, Posts, upload videos, upload and stream videos using GridFS, a technology that comes with MongoDB and allows for file to be greater than 16MB(Split into parts). Users will be able to stream videos and skip to parts of the videos as well. Anyone with basic java knowledge will benefit greatly from this course. If you always wanted to create a video streaming service like youtube, snapchat, or even Periscope or just create an app to share videos etc... this is the course for you. Come on in and join me. Find out how all these startups are streaming all those videos to consumers. This course will get you started and once finished, you can create nearly any kind of Web Service you can think of. Everything is explained and typed slowly. No surprises.

The tools we'll be using are up to par with current trends. We'll be using a forward thinking microframework called spark and combine that with MongoDB and GridFS to create Users and upload assets to our REST Service. You're going to learn how to Convert JSON to Java Objects using Google Gson as well as how to make your code more maintainable using Dependency Injection with Google Guice.

What are the requirements?

  • We will do a walk through on the tools needed.
  • The Tools used are: Java 8, MongoDB, Morphia, Spark, GridFS(part of Mongo), Google Guice, Google Gson, JBCrypt
  • Postman for testing our API

What am I going to get from this course?

  • Create Endpoints with Spark
  • Connect to MongoDB Using both, Morphia and Java Driver
  • Do CRUD operations in MongoDB
  • Create Entity Relationships
  • Accept file uploads to a REST API
  • Upload Video through REST
  • Stream video through REST using GridFS and Ranges
  • Create Projects with Intellij IDEA
  • Dependency Injection with Google Guice
  • Basic REST Authentication
  • Use Google Gson to convert JSON to Java Objects

What is the target audience?

  • This course is meant for beginners with some Java knowledge
  • If you know what an object is and how to create a class, you're good to go

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Environment
05:36

An overview of the tools we'll be using.

Installling the tools
09:00
Section 2: Creating Endpoints
Starting with Spark Framework
19:17
Parsing JSON with Google Gson
32:21
Section 3: MongoDB Intro
Introducing Morphia and Saving Records to the Database
35:26
Section 4: Security
Hashing Passwords
11:00
Route Filters
25:21
Section 5: Adding Posts to Users
Creating the Post Class
05:14
Saving and Retrieving Posts
18:55
Finding Posts by Id
14:44
Section 6: Uploading and Streaming Video
The Java MongoDB Driver
11:16
GridFS: Uploading Videos
22:44
Streaming Videos
43:10
Section 7: Dependency Injection
20:21

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

FA S, Software Engineer

Hi,

I work as a Software Engineer in LA, my primary language there is Java and I use it every day to create Web Services, Messaging Systems, MQTT Machine to Machine Communication like send messages to Mobile devices for Real-Time experiences. Before that I worked for many companies using different technologies such as Ruby on Rails, Python, and Objective-C/Swift for iOS.

Ready to start learning?
Take This Course