Advantages and disadvantages of struts, hibernate, and spring

Source: Internet
Author: User

1. Struts

Advantages: struts is an open-source software. In addition, the advantages of struts are mainly reflected in two aspects: taglib and page navigation. Taglib is the struts tag library, which can be used flexibly to greatly improve development efficiency. The page navigation makes the system context clearer. With a configuration file, you can grasp the relationship between all parts of the system.

Disadvantages:

1. Struts action must be thread-safe. It only allows one instance to process all requests. Therefore, all resources used by action must be synchronized in a unified manner, which causes thread security issues. 2. The test is inconvenient. Every action of Struts is coupled with the web layer, so that its test depends on the Web container, and unit test is difficult to implement. 3. the dependency on servlet is too strong. Struts must depend on servletrequest and servletresponse when processing the action. 4. Slow grasp of taglib

2. hibernate

Hibernate is an open-source object relationship ing framework that encapsulates JDBC objects in a lightweight manner, so that Java programmers can use the object programming thinking to manipulate the database as they wish.

Advantages: 1. hibernate uses the Java reflection mechanism instead of the bytecode enhancement program to achieve transparency. 2. hibernate has excellent performance because it is a lightweight framework. The flexibility of ing is excellent. 3. It supports various relational databases, from one-to-one to many-to-many complex relationships.

Disadvantages: 1. The key to the ing between objects and databases lies in the ing of object relations, but it is not ideal. Too many configurations, complicated control, and errors may occur. In fact, the essence is that the object is not free enough. 2. transaction processing. This is more prone to problems. Compatibility with various transaction managers is a big problem. There are always many problems on various application servers. In essence, it creates a small environment for self-data access and is bound to face various compatibility problems. 3. hql language. Creating an object query language is similar to SQL, but unlike any SQL, the debugging environment is complex. The essence is to create a language that increases learning costs.

3. Spring

Advantage A. Spring can effectively organize your intermediate layer objects. B. by reducing the cost of interface programming rather than class programming to almost none, spring can promote good programming habits. C. Spring is designed to minimize the reliance on its APIs for Applications created using it. Most business objects in spring applications do not depend on spring. D. Spring helps you solve many problems without using EJB. Spring can provide an EJB replacement, which is suitable for many web applications. For example, spring can use AOP to provide declarative transaction management instead of using EJB containers. If you only need to deal with a single database, you do not even need a JTA implementation. E. Spring provides a consistent framework for data access, whether using JDBC or O/R mapping products (such as Hibernate ).

Disadvantages: the number of users is small, the JSP needs to write a lot of code, the controller is too flexible, the lack of a public Controller

 

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.