Coder Social home page Coder Social logo

spring-web-services's Introduction

Spring Web Services

Learn how to create awesome SOAP and RESTful web services with Spring and Spring Boot.

Overview

Introduction

Developing SOAP and RESTful web services is fun. The combination of Spring Boot, Spring Web MVC, Spring Web Services and JPA makes it even more fun.

There are two parts to this course - RESTful web services and SOAP Web Services

Architectures are moving towards microservices. RESTful web services are the first step to developing great microservices. Spring Boot, in combination with Spring Web MVC (also called Spring REST) makes it easy to develop RESTful web services.

In this part of the course, you will learn the basics of RESTful web services developing resources for a social media application. You will learn to implement these resources with multiple features - versioning, exception handling, documentation (Swagger), basic authentication (Spring Security), filtering and HATEOAS. You will learn the best practices in designing RESTful web services.

In this part of the course, you will be using Spring (Dependency Management), Spring MVC (or Spring REST), Spring Boot, Spring Security (Authentication and Authorization), Spring Boot Actuator (Monitoring), Swagger (Documentation), Maven (dependencies management), Eclipse (IDE), Postman (REST Services Client) and Tomcat Embedded Web Server. We will help you set up each one of these.

While the use of SOAP Web Services is on the way down, there are still considerable number of web services using this approach.

In this part of the course, you will learn the basics of implementing SOAP Web Services developing a few web services for a course management application. You will learn to use a Contract first approach - defining XSD (XML Schema Definition) for your requests and responses. You will learn about WSDL (SOAP Header, SOAP Body and SOAP Fault), XSD (XML Schema Definition) and JAXB (Java API for XML Binding). You will implementing three SOAP web services with exception handling and basic security (with WS Security).

In this part of the course, you will be using Spring (Dependency Management), Spring Web Services , Spring Boot, Spring Security (Authentication and Authorization), Swagger (Documentation), Maven (dependencies management), Eclipse (IDE), Wizdler (SOAP Services Chrome Plugin) and Tomcat Embedded Web Server. We will help you set up each one of these.

You will learn

  • What is a Web Service?
  • What is a RESTful Web Service?
  • How to implement RESTful Web Services with Spring and Spring Boot?
  • What are the best practices in designing RESTful Web Services?
  • How to design Resources and GET, POST and DELETE operations?
  • How to implement Validation for RESTful Web Services?
  • How to implement Exception Handling for RESTful Web Services?
  • What is HATEOAS? How to implement HATEOAS for a Resource?
  • What are the different approach in versioning RESTful Services?
  • How to use Postman to execute RESTful Service Requests?
  • How to implement basic authentication with Spring Security?
  • How to implement filtering for RESTful Services?
  • How to monitor RESTful Services with Spring Boot Actuator?
  • How to document RESTful Web Services with Swagger?
  • How to connect RESTful Services to a backend with JPA?
  • What is a SOAP Web Service?
  • What is WSDL (Web Service Definition Language)?
  • What is SOAP Header, SOAP Body and SOAP Fault?
  • What is an XSD (XML Schema Definition)?
  • How to write an XSD for your requests and responses?
  • What is JAXB (Java API for XML Binding)?
  • What is an Endpoint?
  • What is a Contract First approach?
  • What are the different steps in building SOAP Web Services with Spring Web Services & Spring Boot?
  • How to build different SOAP Web services for GetCourseDetailsRequest, GetAllCourseDetailsRequest and DeleteCourseDetailsRequest?
  • How to use Wizdler to execute SOAP Requests?
  • How to implement exception handling for SOAP Web Services?
  • How to implement basic security with WS Security for SOAP Web Services?

Step Wise Details

Refer each steps

Expectations

  • You should know Java.
  • A basic understanding of developing web applications is a bonus but NOT mandatory.
  • A basic understanding of Spring and Spring Boot is a bonus but NOT mandatory. We have seperate sections to introduce Spring and Spring Boot.
  • You are NOT expected to have any experience with Eclipse, Maven or Tomcat.
  • We will help you install Eclipse and get up and running with Maven and Tomcat.

Installing Tools

Running Examples

  • Download the zip or clone the Git repository.
  • Unzip the zip file (if you downloaded one)
  • Open Command Prompt and Change directory (cd) to folder containing pom.xml
  • Open Eclipse
    • File -> Import -> Existing Maven Project -> Navigate to the folder where you unzipped the zip
    • Select the right project
  • Choose the Spring Boot Application file (search for @SpringBootApplication)
  • Right Click on the file and Run as Java Application
  • You are all Set
  • For help : use our installation guide - https://www.youtube.com/playlist?list=PLBBog2r6uMCSmMVTW_QmDLyASBvovyAO3

About in28Minutes

  • At in28Minutes, we ask ourselves one question everyday. How do we help you learn effectively - that is more quickly and retain more of what you have learnt?
  • We use Problem-Solution based Step-By-Step Hands-on Approach With Practical, Real World Application Examples.
  • Our success on Udemy and Youtube (2 Million Views & 12K Subscribers) speaks volumes about the success of our approach.
  • While our primary expertise is on Development, Design & Architecture Java & Related Frameworks (Spring, Struts, Hibernate) we are expanding into the front-end world (Bootstrap, JQuery, Angular JS).

Our Beliefs

  • Best Courses are interactive and fun.
  • Foundations for building high quality applications are best laid down while learning.

Our Approach

  • Problem Solution based Step by Step Hands-on Learning
  • Practical, Real World Application Examples.
  • We use 80-20 Rule. We discuss 20% things used 80% of time in depth. We touch upon other things briefly equipping you with enough knowledge to find out more on your own.
  • We will be developing a demo application in the course, which could be reused in your projects, saving hours of your effort.
  • We love open source and therefore, All our code is open source too and available on Github.

Other Courses

Useful Links

Todo

  • Recording
    • Spring Video - Editing and Re-recording DONE
    • RESTful Web Services Best Practices
    • Intro Video for the course
    • Intro Video for SOAP Section of the Course
    • Intro Video for RESTful Web Services Section of the Course
    • Conclusion Video for the course
    • Overview Videos for the different sections
    • How to make best use of the course
      • Course GIT Repository Overview
      • Recommended path through the course
    • Importing a Maven Project Example
  • Github Updates
    • Create/Update Readme.md for all the different parts
    • Include Step Wise Details
    • Commit code for Spring, Spring Boot and JPA
  • Editing & Cutting
    • Editing for RESTful Web Services
    • Cutting Videos for all parts
  • Writing
    • Description for the course on Udemy
  • Update the in28minutes course template repository with the needed stuff

Let's have some fun

  • What are we waiting for?
  • Let's have some fun with developing web services with spring in more than 75 Steps.
  • I had fun creating this course and hope you would too.
  • Thanks for your interest in Our Course
    • I hope you’re as excited as I am!
    • If you’re ready to learn more and sign up for the course,
    • go ahead and hit that Enroll button,
    • or take a test drive by using the Free Preview feature.
  • See you in the course!

Exercises

  • TODO

Future Things To Do

  • TODO

Conclusion

  • Thats a lot of ground you have covered over the last so and so..
  • To find out more about *** use these References
  • I had fun creating this course and I'm sure you had some fun too.
  • Good Luck and Bye from the team here at in28Minutes
  • Do not forget to leave us a review.

spring-web-services's People

Contributors

in28minutes avatar

Watchers

James Cloos avatar Nate Bauer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.