One, Java EE
Java EE (Java platform,enterprise Edition) is a specification of the development of distributed enterprise-class applications defined by Sun. It provides a multi-level distributed application model and a series of development specifications. Multi-layered Distributed Application model refers to the application logic is divided into several levels according to the function, each level supports the corresponding server and component, the component runs in the component container of the distributed server (for example, the servlet component runs on the servlet container, the EJB component runs on the EJB container), The containers communicate with each other through the related protocols to realize the mutual invocation between the components. Developers who follow this specification will receive broad support from the industry to make the development of enterprise-wide applications simple and fast.
To achieve enterprise-wide distributed applications, Java EE defines a wide range of technical standards, and development tools and APIs that conform to these standards support the development of enterprise-class applications. These technologies cover database access, distributed communications, security, and so on. For distributed applications to provide a wide range of support.
1. Component Technology
The core idea of Java EE is based on the application of component/container. Each component provides an interface to methods, properties, and events. Components can be developed by multiple languages. Components can be reused, shared, and distributed.
2.Servlets and JSP
Servlets is used to generate a dynamic page or to receive a user request to produce a corresponding action (Invoke EJB). JSP is based on text. produce the corresponding servlets through the container, separating the content from the display. The servlet API is provided in Java EE to create a servlet.
3.EJB Technology
The EJB specification provides a way to develop and deploy server-side components. Each EJB is divided into functional logic, the development of the system do not have to pay attention to the details of the problem, only focus on specific transaction analysis. After the EJB is developed, it is deployed in the EJB container according to the specification and completes the corresponding transaction function. EJB supports distributed computing. Truly embodies the enterprise-class application.
4. Database access
Whether it is the traditional enterprise information system or the future enterprise Information system, the database occupies an important position. The development of distributed system requires that database access is flexible and scalable. JDBC (Javadatabase connectivity) is a development interface that is independent of a specific database management system. It provides a common mechanism for accessing SQL databases and storage structures and supports a common, low-level application programming interface for basic SQL functionality. It provides a unified user interface on a variety of database interfaces. Provides a variety of ways to connect to a database. The JDBC API is provided in Java EE to make a variety of database operations simple and feasible.
5. Distributed Communication Technology
Distributed communication technology is the core technology of distributed enterprise system. The Java EE Framework provides a variety of communication patterns for Web applications and EJB applications.
To enable objects running on one machine to invoke objects on another machine, Java EE implements the following modes of communication:
Java RMI Invoke: Remote method invocation. Java RMI implements remote communication between Java objects. The server uses the Registrar to bind a name to a remote object, and the client locates the remote object by name from the server registrar, finds the local agent that downloads the remote object, and invokes the method of the remote object.
Java IDL (Java Interface defilation Language): interface Definition language. A remote object communication that conforms to the CORBA specification of a Java object can be implemented.
JNDI (Java naming and directory Interface): Java naming and directory interfaces. Jndi provides a standard naming interface for distributed systems to access remote objects. EJB host interface objects, data sources, message servers, and so on can be registered with the name server in the form of a jdni tree, and the object that invokes them finds the remote object with the specified name in the Jndi name server through a Jdni program interface.
JMS (Java Message Service): Java messaging Services. Defines a set of specifications for developing messaging middleware applications. Java client and Java middle-tier access message systems can implement complex applications without paying attention to low-level technical details, as long as they implement a simple interface defined by JMS.