Introduce the difference between Java EE, J2SE and J2ME __java

Source: Internet
Author: User
Tags ldap jboss websphere application server


With the rapid development of Internet network, enterprise application based on Internet requires that the software platform has the features of openness, distribution and platform independence. Then there are rpc/com/corba and other technologies, but there are many deficiencies and limitations in the practical application of these technologies. Their specific protocols are difficult to pass through firewalls and are therefore not suitable for application development on the Web. To further develop web-based applications, Sun's Sun One (Open NET Environment Development network environment) and Microsoft's. NET Web Services technology system are emerging.

The Sun one architecture is centered on the Java language, including J2se/j2ee/j2me and a range of standards, technologies, and protocols. It includes the Sun's unique iplanet software series, which has popular LDAP directory server software in the marketplace, and Forte for java―― software tools for writing the Java language in any environment. It is easy to get and use products, including Java integrated development environment, Java Database and middleware (application server) servers, and their source code from the Internet free of charge. Sun one is closer to or satisfies the Internet's demand for distributed, developmental, and platform-independent aspects of intelligent Web services.
With the continuous development of Java technology, it is further subdivided according to the market: Java 2 Enterprise Edition for enterprise Network application, J2SE for common PC application (Java 2 Standard Edition) and three versions of J2ME (Java 2 Micro Edition) for embedded devices and consumer electronics. This article gives some introduction to Sun One's Java core application ――j2se/j2ee/j2me.
Application of Java EE Technology
Java EE is a new concept model introduced by Sun, which is more advantageous than the traditional Internet application model.
Java EE model
Java EE's application programming model (Java Blueprints) provides a system model for implementing document and instance suites based on Java EE multi-tier applications, simplifying this complex task. It is used by developers as a design and optimization component, so that developers can work on a strategic basis for a division of development effort.
The Java EE application programming model requires developers to divide their work into two categories: business logic and presentation logic, while the rest are automatically processed by system resources and do not have to encode middle-tier pipelines. This allows developers to spend more time on business logic and presentation logic. This shift is welcome for companies that focus on shortening the project cycle.

Java Platform

Java EE platform is to run the standard environment of Java application, by the Java-EE deployment specification (a set of all Java platform products must support the standard), IETF standard set and CORBA standards. The latest Java EE platform also adds the JavaBean component model. Developers can use the JavaBean component model to customize Java class instances and to access Java classes through defined events.

Java EE supports EJBS, so developers can perform multiple user trading functions. When running on the Java EE server, Enterprise JavaBeans the application logic into reusable and extensible code snippets. Enterprise JavaBeans is not a new feature, but it enhances its capabilities and portability by defining standard client and service API,J2EE.

The EJB runs within a container in the server, providing all typical middle-tier services, such as transaction management, security, remote client connectivity, lifecycle management, and database connection buffering. In order for the transaction system to run in the presence of an EJB container, the developer simply defines the beans transaction attributes in the deployment description file.

Java EE achieves its advantages by defining a set of standard structures, such as:

1.J2EE application programming model is one of the standard design models for developing multi-level and thin customer user programs.

2. Java EE Platform, is a standard platform, used to integrate Java EE application, and specify a series of interfaces and methods;

3. Java compatibility Test Suite, is a set of compatible test components to detect whether the product is compatible with the Java EE platform;

4.J2EE Reference implementation, used to demonstrate the ability of the Java EE.

Java Server

Sun's Java Java Server provides naming and directory services through the ability to name and directory interface (JNDI), authentication, HTTP, and Enterprise JavaBeans compatibility. Jndi is a standard extensible version of the Java platform that provides Java-enabled applications with a unified interface, including LDAP, to the naming and directory services within the enterprise.

The Java-EE server also leverages the java-based servlet technology. The Java servlet can be seen as a small program running on a server that provides developers with a component-based, platform-independent approach to creating a web-based application. It is not as performance-constrained as using CGI. The Java servlet is a simple technique for extending the functionality of a Web server. Because it is written in Java, it is able to access the entire Java API library, as well as the JDBC APIs used to access the enterprise database.

JSP is an extension of the Java servlet. The Java servlet provides an interactive Web page that is developed and displayed from the server. Now that the JSP has been further improved, it makes it easier to create and support HTML and XML pages that combine static templates with dynamic content.

Java application Deployment (i): Basic articles
Java application Deployment (ii): Practical article
Java application Deployment (III): Advanced article
Security

The Java EE platform defines a standard open access control rule that is defined and explained by the program when it is developed on an enterprise platform. Java EE also needs to provide a standard registration mechanism so that applications do not mix these registration mechanisms and logic so that the same work is performed in a large number of different environments without changing the source code. For example: Java EE application developers can specify several security levels, and when users access data, they can write code to check the level of current user rights. During the development phase, developers give multiple groups of users the appropriate level of security, making it easy to determine the limits of the application before it performs a restricted operation.

The Java EE platform is the best platform for enterprise-class applications of java-based technology, allowing programmers to quickly and efficiently develop and distribute enterprise-class application applications. The following are its related technologies:

1.Enterprise JavaBeans Architecture, Enterprise-class JavaBeans defines an application interface. It enables programmers to quickly develop, publish, and manage Cross-platform, component-based Enterprise-class applications.

The 2.JavaServer pages,jsp technology provides a simple, fast way to create dynamic Web pages. It allows you to quickly develop web-based applications that are platform-independent. Because JSP is very similar to ASP, it is easy for people who are familiar with ASP to learn it.

3.Java Servlet, which provides an application interface. It allows you to quickly and easily develop and extend server functionality. In terms of development trends, it may be possible to replace CGI in the future.

4.J2EE Connector provides a standard structure to connect different enterprise information platforms.

5.Java Naming and Directory Interface (JNDI), Jndi provides a unified, seamless, standardized connection between the Java platform and business information. By using Jndi, programmers can transfer Java applications between enterprise multiple naming and directory services.

6.Java Interface Definition Language (jidl), by using CORBA, can provide the ability to work together. Jidl includes a Idl-to-java compiler and an ORB that supports IIOP (Internet inter-orb Protocol).

7.JDBC provides a unified interface for virtually all databases while creating advanced tools and interfaces.

8.Java Message Service (JMS), which provides a standard interface for virtually all enterprise-class messaging services, such as reliable querying, publishing messages, subscribing to magazines, and various Puss/pull technologies.

The 9.Java Transaction API (JTA) provides a high-level management specification for applications that can be processed in distributed systems.

The 10.javamail,javamail application interface provides a complete set of abstract classes that simulate messaging systems. With JavaMail, you can create a mail or messaging application.

11.RMI-IIOP, you can use it to develop a remote interface between the client and the server using only Java technology and the Java RMI interface.

Java EE bundles A module with a fixed file format: Bundle the Java application with the. ear file; bundle the Enterprise Bean with the. jar. For example, an. ear file contains an. xml file as its distribution description and contains one or more. jar and. War files, and a. jar file contains the. class file as a enterprise bean, in addition to its distribution description.

Java EE application Development phase is divided into four steps: 1.Enterprise bean creation; 2. Web component creation; 3. Java EE application assembly; 4. Java EE application distribution. The following is a list of the EE compatible product sections:

BEA WebLogic Server 6.0, Borland App server, HP bluestone total-e-server, IBM WebSphere application Server, Iona Iportal appli cation server, iPlanet application Server, Macromedia JRun Server, Oracle 9i application Server, Silverstrean application Server, Sybase EAServer, TogetherSoft ControlCenter, Java 2 SDK Enterprise Edition.
Application of J2ME Technology
J2ME (Java 2 Platform Micro Edition) is designed for the wireless electronics market, including JVM specifications and API specifications. Its API specification is based on J2SE (Java 2 Standard editon). J2ME defines a set of appropriate class libraries and virtual machine technologies. These technologies enable users, service providers, and device manufacturers to use rich applications at any time as needed through physical (wired) or wireless connections.
J2ME, also known as the Java 2 Miniature edition, is used in a variety of consumer electronics products, such as smart cards, mobile phones, PDAs, TV set-top boxes and so on. Of course, J2ME also provides a consistent feature of the Java language, that is, cross-platform and secure network transport. It uses a series of smaller packages, and Javax.microedition.io is a subset of J2SE packages. J2ME can be upgraded to J2SE and Java EE.
Prior to the advent of J2ME, we were more exposed to Java cards (Java card), embedded Java (Embedded Java), and real-time Java (real time Java). The Java card is a minimal Java subset customized for devices such as SIM cards, smart cards, smaller than J2ME, and not very portable. Embedded Java configures Java class libraries and VMS (virtual Machine, VM) for special users. It has minimal resource requirements and can be run on devices without a graphical user interface and network and can add user-specific APIs, but it cannot be ported. Real-time Java is being implemented by the IBM-led real Time custom Java Expert Group, and is now being refined. However, in a strict sense, they are not real j2me.




////////////////////////////////////////////////////////////////////////////////////////

Analysis of the differences between Java EE, J2SE, J2ME, JDK

Analysis of the differences between Java EE, J2SE, J2ME, JDK

This article gives you a brief introduction of JDK, Java EE, J2SE, J2ME concepts and differences, J2EE,J2SE,J2ME is Java for different uses to provide different services, that is, to provide different types of class library.

JAVA2 platforms include: Standard Edition (J2SE), Enterprise (Java) and miniature (J2ME) three versions

J2SE is Java 2 Standard Edition is the standard version of JAVA2, mainly for desktop application software programming

Java EE is the JAVA2 Enterprise Edition is the JAVA2 Enterprise Edition, mainly for the development of distributed network programs, such as E-commerce Web site and ERP system

J2ME Java 2 Micro Edition is a miniature version of Java, mainly used in embedded system development, such as mobile phone and PDA programming

The JDK is the Java Development Toolkit, the equivalent of a Java library function, a toolkit for compiling and running Java programs.

Standard Edition (Standard Edition) J2SE contains classes that form the core of the Java language. For example: database connection, interface definition, input/output, network programming

The Enterprise Edition (Enterprise Edition) Java EE contains the classes in J2SE and also contains classes for developing enterprise-class applications. For example: EJB, servlet, JSP, XML, transaction control

Micro Edition (Miniature edition) J2ME contains one of the J2SE classifications for consumer electronics software development. For example: pager, smart card, cell phone, PDA, set-top box

Their scope is: J2SE included in the Java EE, J2ME contains j2se core classes, but some new proprietary classes added

For beginners, they start with J2SE.

The difference between 2.J2EE and J2SE:

Java EE adds a series of enterprise application programming interfaces on the basis of J2SE. Java EE contains a lot of technology. There are the JSP you are familiar with,

SERVLET,JDBC,JME, etc. 13 technology.

Java EE is mainly used to do b/s structure of the application. That is, it is based on browsers and servers.

J2se give me the feeling that only need one container is enough, Java EE support distributed components can exist multiple containers at the same time

1, what exactly is the Java EE.

Java EE, is a standard proposed by Sun, the product conforms to this standard is called "implementation"; One of the Sun's Java EE development packages you download is a

Such "Implementation", and Jboss,weblogic,websphere is an "implementation" of the Java EE standard. Because of Jboss,weblogic,

WebSphere itself has the Java EE API, so it can be implemented without Sun Java EE.

2, the difference between J2EESDK and J2sdkee

In fact, you can take j2eesdk and J2sdkee as one thing, officially called J2EESDK. But if you scrutinize it, you can use the following

method to understand: J2eesdk is the JDK, this is the development EJG must be installed, J2sdkee is the Java development environment, this is to install, in fact, if

You installed JBoss, you do not have to install all the J2sdkee, as long as one of the files named Java-ee copy the past can be, that is to say

JDK must be installed, and J2sdkee do not need to see what you use to make containers.

3, loaded J2EESDK still need to install J2SESDK?

When downloading j2ee1.4 on the Sun's web site, there are two download packages:

One is J2EE1.4SDK complete package (ALLinONE), containing j2eeserver,j2se,sample,apidoc; The Java EE seems to contain j2se almost

There's something. I think the Java EE also has a JDK, which is the same as the lib below the J2SE (same version). But the JRE is not as big as the Java EE than

J2SE a lot more, such as java.servlet.*,java.servlet.http.* and so on.

Java EE is what you use to develop j2eespecification. If it is for a Web server, do not install the Java EE also line, just install a JRE (even

J2SE, plus a servlet engine (such as Tomcat) is enough.

Look at the following, at a glance:

J2se==jdk==bin+demo+include+jre+lib+src.rar//sun, official JDK1.4.2.

j2ee==jdk+....//the JDK here is not as big as the JRE file above, as explained above.

The other is a separate j2eeserver, which needs to be installed before installation J2SESDK.

No matter which, after the installation completes, must set the JAVA_HOME,J2EE_HOME,CLASSPATH environment variable, then runs J2eeserver can.

For the convenience of developers, Sun distinguishes Java as J2SE (java2standardedition), EE (java2enterpriseedition), J2ME (java2microedition) and Javacard four kinds of platforms. J2SE is the foundation of all Java technologies, and no matter what platform Java Applications developers are developing, they must first learn from J2SE. Java EE technology is focused on the application of enterprise Server side. J2ME mainly for embedded systems, including mobile phones, PDAs and so on. Sun also offers free j2mewirelesstoolkit for the development of mobile apps. Javacard technology is used to develop applications that can be implanted into an IC smart card.

The Software Development Kit (SOFTWAREDEVELOPMENTKIT,SDK) for the above four platforms is free and can be downloaded from Sun's website. Of course, using only the SDK is too much of a stress, we need to develop tools to improve development efficiency. Such tools are called integrated development environments (Integrateddevelopmentenvironment,ide). In the past, the two Ides of Borlandjbuilder and Ibmeclipse were most favored by Java programmers, while Sun's own Ides were obscure. After 2004, Sun placed its IDE in an important position to push for the development of NetBeans and Javastudio. The former is an open source tool that is written entirely in Java, while the latter is a heavyweight official development tool. Sun's development tools are the root of the red, Java programmers can finally Bath Sun (Sun).

Another: API:

APIs (application Programming Interface, application programming interfaces) are predefined functions designed to provide applications and developers with a software or hardware based access to a

The ability to group routines without accessing the source code, or understanding the details of the internal working mechanism.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.