
Discover how web services, defined by W3C, enable interoperable, platform-independent communication between clients and servers, handle requests via automated interactions, and route input to business logic.
Explore the types of web services, including SOAP and REST, and how XML and JSON inputs, headers, envelopes, and WSDL shape requests and responses in Java web services.
Explore what Spring is, why we need it, and core concepts like dependency injection and inversion of control, including bean creation and a simple example for Spring web services.
Choose your IDE between Eclipse and IntelliJ, and follow along as the course uses IntelliJ for now and later covers Eclipse setup and spring project configuration.
Configure IntelliJ with spring support, create a spring starter project using Java 8 and Spring Web, run the app, and explore inversion of control and dependency injection for loose coupling.
Master the Spring auto wiring and component mechanism to auto wire beans and dependencies, replacing manual mapping with constructor and setter injection, as the application context wires components.
Start a spring app with auto wiring by reading the application context to load beans like Dr Anderson and the photographer, demonstrating automatic mapping and loose coupling.
Explore the different Spring project types, including Spring Framework, Spring Cloud, Spring Data, and Spring Security. Learn how these products integrate with web services to support databases and secure applications.
Create an endpoint class to handle a get employee request by mapping it to a get employee response, using a payload route with namespace and local part in Spring configuration.
Enable web services and configure a servlet-based message dispatcher to expose endpoints, register the dispatcher servlet, and define endpoint patterns and namespace details for request and response handling.
Create a wsdl definition using xsd by building beans, annotating metadata, and configuring the endpoint with a target namespace and the input schema loaded from resources.
Copy updated response structures into the original project, stop the server, and verify get employee records and get employee response reflect the changes with an offline repository for multiple employees.
Implement a service class with auto-wiring to fetch a single employee by id from an offline repository, map it to employee details, and return it through the endpoint.
Test a Java web service with Wizdler by implementing the employee service and exposing endpoints to get all employees, retrieve one, and delete on Tomcat.
Implement the get all employees method to return a list of employee details from a get all employee request. Map employees to details with a stream and collect for response.
Introduce Spring Security for web services using the extra security interceptor to validate username and password via a security policy, and integrate the interceptor into interceptors with a security adapter.
Initialize a spring boot web service by creating a hello world application, adding spring web dependency, and running the app to expose a simple restful api on port 8080.
Implement a get by id endpoint in a Spring Boot application, using GetMapping, Java 8 streams and lambda to return the specific employee from the list.
Implement a delete endpoint in a Spring Boot REST API to remove an employee from the collection, calling the service method and using a path variable with global exception handling.
Implement Spring Boot validation for employee services, using a global exception handler and response entity to return precise invalid input messages for name and email with detailed errors.
Learn to enable swagger UI in a Spring Boot app by adding the dependency, running the app, and viewing API documentation with endpoints, inputs, outputs, and employee definitions.
Explore how Swagger documentation in Spring Boot auto-generates API docs, including tags, paths, and definitions, and demonstrates input/output models like Employee with get, post, and delete operations.
Implement dynamic filtering for REST APIs using Jackson bean property filter and a global filter provider to return only user id and user name, replacing static filtering.
Learn how to shift from hardcoded data to database-backed storage by using the Java Persistence API to map Java objects to relational data in a Spring Boot REST API.
Create spring boot project to implement jpa by defining a student entity with id, name, and age, annotated as @Entity with @Id and generated value, using an in-memory h2 database.
Demonstrates posting student name and age via Postman, annotating the request body, and storing data with Spring Boot, an auto-creating H2 database, and a JPA repository.
Extend a JPA repository to store student data in a Spring Boot app, letting the repository manage transactions and entity manager interactions for persistence.
Convert dto's into database entities by annotating with @Entity, configuring identity generation, and mapping a one-to-many relationship between employee and department, then test the integration with a real-time MySQL database.
RESTful Web Services
===================
This Course is designed for Software Professionals who are willing to learn RESTful Web Services in simple and easy steps. This tutorial will give you great understanding on RESTful Web Services concepts and after completing this tutorial you will be at intermediate level of expertise from where you can take yourself at higher level of expertise.
RESTful Web Services are basically REST Architecture based Web Services. In REST Architecture everything is a resource. RESTful web services are light weight, highly scalable and maintainable and are very commonly used to create APIs for web-based applications. This tutorial will teach you the basics of RESTful Web Services and contains chapters discussing all the basic components of RESTful Web Services with suitable examples.
Advantages of RESTful Web Services:
Fast: RESTful Web Services are fast because there is no strict specification like SOAP. It consumes less bandwidth and resource.
Language and Platform independent: RESTful web services can be written in any programming language and executed in any platform.
Can use SOAP: RESTful web services can use SOAP web services as the implementation.
Permits different data format: RESTful web service permits different data format such as Plain Text, HTML, XML and JSON.
What will cover in this entire course :
What is a Web Service?
What is a RESTful Web Service?
How to implement RESTful Web Services with Spring and Spring Boot in simple steps
Learn through implementing a project
How to design Resources and GET, POST,PUT 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 using eclipse visual editor
What is JAXB and how to implement them
What is an WSDL Endpoint
How to implement basic level security with WS-Security for SOAP Web Services
What are the different steps in building SOAP Web Services with Spring Web Services & Spring Boot
How to execute SOAP Requests using Wizdler browser plugin
Learn the topics in Spring and Spring Boot:
Spring Boot
Spring Core - IoC
Spring Data JPA
Spring REST
Spring Security
MySql with Rest API