Home >Java >javaTutorial >What does java framework do?

What does java framework do?

silencement
silencementOriginal
2019-05-29 17:25:075433browse

What does java framework do?

Three major frameworks: Struts Hibernate Spring

The three major Java frameworks are mainly used for WEN applications: Struts is mainly responsible for the display of the presentation layer; Spring uses its IOC and AOP to handle control business (responsible for database operations);

Hibernate mainly persists data to the database.

When using jsp servlet for web development, there is a web.xml mapping file. There is a mapping tag in it for file mapping. When you enter the URL in the browser, the file will be mapped to a JAVA file according to the name you wrote. According to the content written in the java file, it will be displayed on the browser, which is a web page.

1.Struts framework: struts is open source software. The purpose of using Struts is to help us reduce the time in developing Web applications using the MVC design model. If we want to mix the advantages of Servlets and JSP to build scalable applications, struts is a good choice.

1. Process: After the server is started, the ActionServlet is loaded according to web.xml and reads the contents of the struts-config.xml file into the memory.

2. Architecture: Struts provides corresponding components for Model, View and Controller. ActionServlet, this class is the core controller of Struts and is responsible for intercepting requests from users.

Model part: It is composed of JavaBean. ActionForm is used to encapsulate the user's request parameters into an ActionForm object. The object is forwarded to Action by ActionServlet. Action processes the user's request according to the request parameters in ActionFrom. JavaBean encapsulates the underlying business logic, including database access, etc.

View part: This part is implemented using JSP. Struts provides a rich tag library, which can reduce the use of scripts. Customized tag libraries can achieve effective interaction with the Model and add real-life functions. Corresponds to the JSP part of the picture above.

Controller component: The Controller component consists of two parts - the system core controller and the business logic controller. The core controller of the system corresponds to the ActionServlet in the picture above. This controller is provided by the Struts framework and inherits the HttpServlet class, so it can be configured as an annotated Servlet. This controller is responsible for intercepting all HTTP requests and then deciding whether to transfer them to the business logic controller based on the user's request. The business logic controller is responsible for processing user requests. It does not have the processing capabilities itself, but calls the Model to complete the processing. Corresponds to the Action part.

two. Spring Framework

Spring is a powerful framework that solves many common problems in J2EE development. Springle provides a consistent way of managing business objects and encourages the good habit of programming to interfaces rather than classes. The architectural foundation of Spring is based on the Inversion of Control container using JavaBean properties. However, Spring is unique in using IoC containers as a complete solution for building a solution that focuses on all architectural layers. Spring provides a unique data management abstraction including a simple and efficient JDBC framework, greatly improving efficiency and reducing possible errors. Spring's data access architecture also integrates Hibernate and other O/R mapping solutions.

three. Hibernate framework

Hibernate is an open source object-relational mapping framework. It provides lightweight object encapsulation for JDBC, allowing Java programmers to use objects as they wish. to operate the database. Hebernate can be used in any situation where JDBC is used, either in Java client programs or in Servlet/JSP Web applications. The most revolutionary thing is that Hibernate can replace CMP in the J2EE architecture that uses EJB. Complete the important task of data persistence

Hibernate has a total of 5 core interfaces, namely: Session, SessionFactory, Transaction, Query and Configuration. These 5 core interfaces will be used in any development. Through these interfaces, not only can persistent objects be accessed, but also transaction control can be performed. These five core interfaces are introduced below.

1. Session interface: Responsible for executing CRUD operations on persisted objects (CRUD's task is to complete communication with the database, including many common SQL statements.). But it should be noted that the Session object is not thread-safe. At the same time, Hibernate's session is different from HttpSession in JSP applications. When the term session is used here, it actually refers to the session in Hibernate, and the HttpSession object will be called the user session in the future.

2. SessionFactory interface: Responsible for initializing Hibernate. It acts as a proxy for the data storage source and is responsible for creating Session objects. The factory pattern is used here. It should be noted that SessionFactory is not lightweight, because generally, a project usually only needs one SessionFactory. When multiple databases need to be operated, a SessionFactory can be specified for each database.

3. Configuration interface: Responsible for configuring and starting Hibernate and creating SessionFactory objects. During the startup process of Hibernate, the instance of the Configuration class first locates the mapping document location, reads the configuration, and then creates the SessionFactory object.

4. Transaction interface: Responsible for transaction-related operations. It is optional, developers can also design and write their own low-level transaction processing code.

The above is the detailed content of What does java framework do?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn