Web API’s and the common formats used to support them - REST/SOAP and JSON/XML Accessing Web API’s with the new HTTP 2.0 client Designing your own Web API Implementing your own Web API Tying an API in with a database to add authentication Encrypt passwords and store them in a MySQL database Build a fully functional HTTP REST API leveraging Hibernate and MySQL
A Web server is a program that uses HTTP to serve the files that form Web pages to users, in response to their requests, which are then forwarded by their computers' HTTP clients. Dedicated computers and appliances may also be referred to as Web servers. It's a software that can process a client request and send a response back to the client. Web servers and web clients are two separate applications, so there should be a common language for communication. HTML is the common language between server and client. A web server is also called a Hypertext Transfer Protocol (HTTP) server because it uses HTTP to communicate with its clients, which are usually web browsers. Basically a web server is used to host web sites but other web servers also exist, such as gaming, storage, FTP, email, and more. To start off the course, we will consume data from a public REST API using the new HTTP 2.0 client built into Java 9, providing both a synchronous and asynchronous example. Moving along, you will learn how to implement your own internet-facing REST API. We will do this by extending the previous example to publish data from a data file over the internet. We will then add a token-based authentication layer to our API, including examples of how to encrypt passwords and store them in a MySQL database. This course will teach you all you need to know to leverage the new HTTP 2.0 client bundled with Java 9 to build a fully functional HTTP REST API, complete with authentication, leveraging Hibernate and MySQL. All the code files for this course are available on GitHub at – https://github.com/PacktPublishing/Building-Web-Servers-in-Java- Style and Approach This video begins with the basics that all Java developers use every day and then delves into detailed concepts and tricks to speed up your development. You will learn the required concepts by performing practical tasks and implementing them in your daily activities, all at your own pace.