Java 2 Platform, Enterprise Edition ( J2EE ) , refer to a group of engineering, model, specification, etc. which are usage for edifice distributed system and it do non mention to any specific linguistic communication. The Java platform can be classified into the undermentioned construction
The Java 2 Platform, Micro Edition ( J2ME ) which is use largely in concurrence with lower-end device such as nomadic device.
The Java 2 Platform, Standard Edition ( J2SE ) which is chiefly usage on desktop machine or laptop ( Netbook, Notebook )
The Java 2 Platform, Enterprise Edition ( J2EE ) which is usage on workstation or waiter.
J2EE comprise a figure of programming and scripting linguistic communication including Java, XML, JSP, HTML, and SQL amongst other. The advantages of Java include cross-platform portability, handiness of open-source libraries, a immense server-side deployment, and coverage for most W3C criterion.
J2EE is a scheduling platform which is platform-independent. It is chiefly usage for developing, edifice, deploying and running the distributed multi-tier architecture web-based endeavor application.
This engineering allows the developer to make an endeavor application that is portable between platforms and scalable, while incorporating with bequest engineering.
J2EE consist of a set of service, protocol and several API such as JDBC, RPC, client-side applets for developing multi-tiered.
For client side, J2EE support HTML, every bit good as Java applet or application. Servlet codification to make HTML or other formatted day of the month to the client.
The Java servlet API enhances consistence for developer without require a graphical user interface.
JavaServer Pages ( JSPs ) : JavaServer Pages are used to bring forth dynamic content for web browsers similar to HTML.
Servlet: Servlet are usage in concurrence with JSPaa‚¬a„?s in order to construct control and pilotage logic into J2EE application, while following a Model-View-Controller design form.
Enterprise JavaBeans ( EJBs ) : These organize the pillar of the J2EE platform and are chiefly of two types aa‚¬ ” the session beans which are used to pattern concern logic and the entity beans that theoretical account relentless informations. EJBs provide transparent grading, a security model, a dealing theoretical account, and a container-managed life rhythm. It provides another bed where the platform logic is store. An EJB waiter provides map such as threading, concurrence, security and memory direction. These services are crystalline to the user.
Java Connectivity Architecture ( JCA ) : This allows Java endeavor applications to interface with bing non-Java endeavor applications such as SAP.
Java Message Service ( JMS ) : It is use to supply asynchronous messaging capablenesss to the J2EE platform.
Java Management Extensions ( JMX ) : It is used in the direction of J2EE waiter and application.
Java Naming and Directory Interface ( JNDI ) : An built-in portion of the J2EE platform, this provide criterion entree to a directory service resource such as LDAP or Novell Directory Service and component location transparence in a clustered J2EE environment.
Although the undermentioned constituents are technically portion of J2SE, they prove of import for J2EE application every bit good:
Java Database Connectivity ( JDBC ) : The Java database connectivity API provide connectivity to relational database system tantamount to ODBC, the standard interface for Java database. It is use to manage all database input/output through SQL.
The Virtual Machine: It can be run in waiter manner to better profile long-running application with rigorous demand for yarn and memory direction. The VM has addressed most of the initial concerns about J2EE ‘s public presentation.
RMI aa‚¬ ” The Remote Method Invocation allows methods to be called on remote, distributed Java objects as if they were local. It is the primary mechanism used by the Enterprise JavaBeans model for inter-process method supplication.
Normally, thin-client multi-tiered application are difficult to compose because they involve many line of codification to manage dealing and province direction, resource pooling, and multithreading. The platform-independent and component-based J2EE architecture make J2EE application easy to compose because concern logic is organize into reclaimable constituent. Furthermore, the J2EE waiter provides implicit in service in the signifier of a container, which is an interface between a constituent and the low-level platform-specific functionality that support the constituent for every constituent type.
The presentation bed can be built utilizing servlet and JSPs which incorporate codifications along with HTML. The concern logic is implemented by session beans which can either be stateless or stateful. The entity beans are so use to pass on with a relational database.
HTML for J2EE application is generated by servlet and JSPs whose container include such characteristics as session province, a security model, and constellation. Tag libraries allow the developer to cleanly separate presentation codification from control and concern logic and besides make the JSPs clear to HTML programmers. The used of JavaServer Face purpose to widen JSPs to let developer to stipulate user interface constituent, event managing for HTML doodad, informations proof, and pilotage, which are presently handle by presentation model such as Struts.
Transaction is a mean for developer to supply system with atomicity, consistence, isolation, and lastingness, which guarantee that the system informations is consistent in instance of mistake.
There is a pick for developer to either explicitly code dealing direction that is user define or manual, else stipulate the require behaviour and manus off the direction to the container.
Naming remote object
Location transparence is a nucleus J2EE characteristic. JNDI find server-side constituent such as EJBs or JMS Queue, which, if running in a clustered environment, may or may non shack in the same VM. In practical term, most application waiter effort to maintain pass oning EJBs in the same VM to minimise web traffic and the associate marshaling operating expense. The developer can implement in VM executing with local interface.
All concern logic application revolve around their informations, frequently shop in multiple, heterogenous informations shop. Both engineerings provide informations entree and continuity schemes:
Two chief type of entity beans are usage to pattern persistent informations which are container-manage and bean-manage. Both allow developer to utilize container-provide service such as dealing direction, a continuity model with intelligent database update and caching, and a security model, every bit good as scalability and mistake tolerance.
Java beginning codification compiles into machine-independent byte codification, which the JVM interpret at runtime. As a consequence, the peculiar install JVM proves important to public presentation and scalability. As it name suggest, HotSpot expression for repeatedly execute codification subdivision, so intensively optimise them. In add-on to great scalability and public presentation ; it besides supplies the standard configurable security theoretical account for codification burden and executing. Besides, Java JVM made usage of their host machines strength. For illustration, JVM optimize for Solaris will take advantage of that operating system particular characteristic, such as thread direction.
J2EE offer complete cross-platform portability. If a JDK exist for your mark platform, so J2EE can run on it. The ability to back up Window and mainframe and everything in between represent a large J2EE attractive force.
The J2EE security architecture is define as portion of the platform specification papers. It detail security direction function, and specifies end of the security architecture, but do non stipulate security policy or execution item ( such as the usage of a peculiar security engineering to run into the described end )
This is in direct contrast to the old standards. Presently, merely Java is support. In order to utilize another linguistic communication, an interface engineering like the Java Native Interface ( JNI ) or web service demand to be usage.
Java characteristic a overplus of tool, which is both good and bad: the developer has a great trade of pick, but might hold trouble taking the right tool for a given occupation, such as taking the best working IDE from legion options. Support for debugging is good via the Java Platform Debugging Architecture ( JPDA ) , and the reaching of Ant and JUnit has given the Java community a standard physique tool and unit proving model, severally.
Vendor support represents one of the major fastnesss of J2EE. A broad assortment of seller offer legion J2EE merchandise.