Home  >  Article  >  Backend Development  >  [Miscellaneous Talk] Comparison between PHP and J2EE (translated)

[Miscellaneous Talk] Comparison between PHP and J2EE (translated)

WBOY
WBOYOriginal
2016-08-08 09:30:091160browse

How should we choose? java or php? "Comparison of Java and PHP web development technologies"
Comparing the two web development technologies of PHP and JSP, in the current situation is actually comparing the web development of PHP and Java. The following is a comparison I made in several main aspects:
 1. Language comparison
 Php is a server script language that interprets and executes. First of all, php is simple and easy to use. The syntax is similar to that of C language, so programmers who have learned C language can quickly become familiar with PHP development. In Java, you need to first learn the syntax of Java, be familiar with some core class libraries, and understand object-oriented programming methods. Therefore, Java is not as easy to learn as PHP.
 Java must first be compiled into a bytecode .class file, and then interpreted and executed on the java virtual machine. The first and easiest thing to think of when developing Java web is JSP (now it has reached JSP2.0). The original Java web development was implemented with servlet. Using servlet to develop requires programmers to embed a lot of code in the Java source file. html code. So JSP appeared later. JSP can be easily embedded into HTML files. In fact, when the jsp file is executed on the server, it will first be converted into a servlet by the application server, and then compiled and executed. Jsp can produce powerful functions through the support of servlets and JavaBeans. JavaBeans It is a reusable, cross-platform software component. Using javabeans can easily separate java code and html, which can enhance system functions and software reusability.
 Java web development belongs to the J2EE specifications defined by SUN. And J2EE includes all aspects of java web development, such as: JSP, Servlet, JDBC, JNDI, JAVABEAN, EJB, etc. J2EE is particularly suitable for large-scale enterprise-level applications.
 2. Database access comparison
 Java accesses the database through JDBC, and can easily access the database through database drivers provided by different database vendors. The interface for accessing the database is relatively unified.
 PHP uses different database access interfaces for different databases, so the database access code is not very versatile. For example: a web application developed in Java only needs very few modifications to be transferred from a MySQL database to an Oracle database. PHP requires a lot of modification work.
  3. Comparison of system design architecture
  Using Java web development technology requires the use of object-oriented system design methods, while PHP still adopts process-oriented development methods. Therefore, a lot of system analysis and design work needs to be done in the early stage of development using Java.
 4. Cross-platform
 Both Java and PHP have good cross-platform features. Almost all of them can run on different operating systems such as Linux or Windows without any modifications.
 5. Development cost comparison
 The most classic combination of PHP is: PHP + MySQL + Apache. It is very suitable for developing small and medium-sized web applications, and the development speed is relatively fast. And all software is open source and free, which can reduce investment.
 Java web application servers include free Tomcat, JBoss, etc. If you need better commercial services: Web Sphere and Web logic.
 6. Comparison of distributed multi-layer architecture
 PHP can only implement a simple distributed two-layer or three-layer architecture, while JAVA is relatively powerful in this regard and can implement a multi-layer network architecture. The database layer (persistence layer), application (business) logic layer, and presentation logic layer are separated from each other, and now different layers are supported by some mature development frameworks. For example, Struts uses Java web development technology to implement the MVC design pattern. There is also the Spring framework in the business logic layer, and Hibernate and other frameworks in the database persistence layer. These frameworks can facilitate developers to construct multi-layered commercial applications efficiently, reasonably and scientifically.
 Let’s briefly talk about Struts. It is essentially an MVC (Model, View, Controller) framework implemented on the basis of JSP Model2. JSP Model2 architecture is a method of using JSP and Servlets together to provide dynamic content. In the Struts framework, the model is composed of JavaBean or EJB components that implement business logic, the controller is implemented by Servlet, and the view is composed of a set of JSP files. Using Struts can clarify the definition of roles and the division of labor between developers and web designers. And the more complex the project, the more obvious the advantages.
 7. Source code security
 The source code of programs developed by PHP is public, and others can modify it after getting the program developed by PHP.
 For programs developed in Java, what the user finally gets is just some compiled classes, and the complete source code cannot be seen, so the security is high.
 8. Performance comparison
 Some people have done experiments to conduct loop performance tests and Oracle database access tests for these two languages.
In the loop performance test, JSP only took an astonishing four seconds to end the 20000*20000 loop. The PHP test was 2000*2000 cycles (an order of magnitude less), but it took 63 seconds each.
 In the database test, the two performed 1000 Insert, Update, Select and Delete on Oracle 8 respectively: JSP took 13 seconds and PHP took 69 seconds.​
  Table 1 Comparison of PHP and Java
  PHP JAVA
Reusability low and high
Development speed fast and slow
Ease of maintenance poor and excellent
Portability excellent - Linux, Windows, Unix, etc.
Security low and high
Development costs low and high
Multi-layer architecture is bad
. Database access interface is not unified. Interface is not unified
. Scalability is bad
. Object-oriented is bad
. In summary, I personally think that PHP is suitable for rapid development, small and medium-sized application systems, low development cost, and the ability to Respond quickly to changing needs. Java is suitable for developing large-scale application systems. The application prospects are relatively broad, the system is easy to maintain and has good reusability. Also, the price of a system developed with Java is higher than a system developed with PHP for the same functions.

The above has introduced [Miscellaneous Talk] Comparison between PHP and J2EE (translated), including various aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

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