J2se:java 2 Standard Edition is the Java Standard Edition, SE is the standard version platform
J2ee:java 2 Enterprise Edition is a Java Enterprise Edition that includes additional libraries in addition to any components in the Standard Edition (SE).
J2ee
Java EE technology and its component based model simplifies enterprise development and deployment. The Java EE platform manages the infrastructure and supports WEB services to enable development of secure, robust and interoperable business applications.
Java-EE is an enterprise version of Java-based, which is an extension above the standard version. A three-tier architecture, including an application server, is used. Mainly used in E-commerce and Enterprise and Enterprise E-commerce interconnection. have JSP,SERVLET,EJB and other specifications
J2SE is the basic class library, Java EE is the framework, enterprises do Web applications usually take into account a number of issues, such as the effectiveness of the application (pool), scalability, distributed related transactions, reuse, transactions, etc., in order to make the enterprise's architecture more perfect, more stable, more efficient, Many large development teams will find a way to solve these problems, and sun and other distributed leaders realize that in the near future each development team will create their own dedicated solutions, so the Java EE architecture is derived, in order to enable these development teams to quickly implement the above solutions, And the main focus on business processes, should almost understand it.
Simply put, the JDK is a developer-oriented SDK that provides a Java development environment and a running environment. SDK is software Development kit generally refers to software development package, can include function library, compiler and so on.
The JDK is Java Development Kit
The JRE is Java Runtime enviroment is the Java operating environment, and is intended for use by Java program users, not developers.
If you have the JDK installed, you will have two sets of JRE on your computer, one in the/jre and one in the C:/Program files/java/j2re1.4.1_01 directory, which has a less server-side Java virtual machine than the previous set. But just copy the previous set of server-side Java virtual machines. And in the installation JDK, you can choose whether to install the JRE located in the C:/Program files/jav a directory. If you install only the JRE, not the JDK, only a single set of JRE will be installed in the C:/Program Files/java directory.
The JRE status is like a PC, our WIN32 application requires the operating system to help us run, and the Java program we write must also have the JRE to run. So when you install the JDK, if you have two sets of JRE installed in two different places on your hard disk, you can imagine that your computer has two virtual Java PCs and has the ability to run Java programs. So we can say that as long as your computer has the JRE installed, you can run the JAV a application correctly.
1. Why Sun wants the JDK to install two sets of the same JRE. This is because there are a lot of Java-written development tools (such as Javac.exe, Jar.exe, etc.) that are in the JDK and are placed in/lib/tools.jar. As you can see from the example below, first rename Tools.jar to Tools1.jar, and then run Javac.exe, showing the following results: Exception in thread "main" Java.lang.NoClassDefFoundError: Com/sun/tools/javac/main This means that the javac.exe you enter is the same as the input JAVA-CP C:/jdk/lib/tools.jar com.sun.tools.javac.Main, and you get the same result. From here we can prove that Javac.exe is just a wrapper (wrapper), and the purpose of the production is to keep developers from entering too long a finger. And can be found in the/lib directory of the program is very small, not more than 2 9K, from here we can draw a conclusion. Is that the tools in the JDK are written almost in Java, so it is also a Java application, so you have to use the tools attached to the JDK to develop Java programs, and you have to attach a set of JRE yourself, so it's located in C:/Program files/ The set of JRE under the Java directory is used to run general Java programs.
2, if a computer installed more than two sets of JRE, who will decide it. This important task falls on Java.exe. Java.exe's job is to find the right JRE to run the Java program. Java.exe to find JRE in the following order: There is no JRE under its own directory; the parent directory has no JRE; query registry: [Hkey_local_machine/software/javasoft/java Runtime Environment] So Java.exe's running results have a lot to do with which JRE is being executed on your computer.
3, introduces the JVM JRE directory under the bin directory has two directories: server and client. That's where the real Jvm.dll lies. Jvm.dll cannot work alone, and when Jvm.dll starts, it uses the explicit method (that is, LoadLibrary () and GetProcAddress () in the Win32 API are used to load the auxiliary dynamic-link library). These auxiliary dynamic link libraries (. dll) must be in the parent directory of the directory where Jvm.dll resides. So what JVM would you like to use, just set path, point to the Jvm.dll under the directory where the JRE is located.