Lesson 1 Flashcards
Spring
- It is a framework
- Used for building Java applications and services
- Hosts java libraries
- Has very useful and essential web development “components”, i.e. DB access, security, cloud deployment, web services
- Streamlines the experience of writing code in Java
- It’s fast
Web development basics (3 parts)
1) Data storage
2) Services (application logic)
3) Client
Spring beams/services
Spring beams/services are used to write application logic. They are basically Java classes that Spring knows about
H2
H2 is an in-memory SQL database that Spring Boot will run alongside our business logic.
Controller beam
The client interacts with the controller beam, which will then send an HTML request and usually expects HTML in return
Spring Boot
- Spring boot is part of the Spring framework. Internally, spring boot is built on top of the Spring framework.
- Helps in rapid application development
- Helps to develop stand alone and enterprise web applications
- Used by all SDLC stakeholders
- Powerful tool for building servers (to connect simultaneous users on different clients)
Thymeleaf
Thymeleaf is an HTML template engine, which gets populated using Spring Boot. Thymeleaf allows you to show web pages to a client and populate data on the page using server code.
When should you use Java versus another coding language?
Java should be used to build any web application, but should not be used to build anything high-performance (such as a graphics processing application)
Maven
Maven is a java dependency manager
HTTP
HTTP is a binary format of data. It’s used for communication between programmes over the web. It can be broken down into requests and responses.
What is the role of a web server?
A web server’s primary role is to listen for an HTTP request, then sending a response to the client.
Java Application server
An application server is used to process concurrent requests and send response messages out to many clients.
Examples of application servers are: Apache Tomcat, Glassfish, Netty, Wildfly. Spring boot has an embedded application server which includes Apache Tomcat by default.
Java Application Server is a pluggable architecture that can host many deployed applications at once.
Multi-threading, request filtering, resource sharing to each application are all things done by the Java application server. What are multi-threading and threading?
Threading is basically one track of computation.
Multi-threading is running multiple threads in parallel.
Application server
A programme that hosts other (and multiple) applications. It forwards requests to the correct application according to a filter.
Pluggable architecture
A pluggable architecture refers to any piece of software that can be added, replaced or removed.
More often than not, every pluggable component has a common interface.