Java framework learning Summary

Source: Internet
Author: User

I have been learning various Java framework technologies for the last two months, and the gains are still quite large. Different frameworks have their own highlights. At this stage, we mainly look at their design concepts and related concepts. Therefore, we mainly look at them and there are not many coding ideas.

Main frameworks: struts, webwork2, tapestry3, and spring.
Database Object relationship ing framework: hibernate, Caster, ibatis
Concepts involved: MVC, IOC, Di, and AOP
There are other well-known frameworks

1. Struts, originally learned something about Java last year, but I did not study it more deeply for work reasons. I just did a few simple form data verification and submission programs. At the beginning, I thought he was very efficient. Now he is not very good at his rating on the internet. "advantages: low learning curve, easy to use, suitable for beginners. Because it has been around for a long time, he is a mature product and has learned a lot. Disadvantages: Modification and debugging of JSP + taglib pages is quite troublesome, and the system configuration is also cumbersome ". Struts is currently the most widely used, and is also the basic requirement for most companies to recruit programmers. Last month, I simply looked at him again, but it was not too deep.

2. webwork2: I saw it at the beginning of the year. At that time, the company was working on a project using an "open-source system". The system used webwork, webwork, and webwork2. Due to the great difference, they did not study in depth, besides, I modified the code of the controler layer of the system, which does not involve webwork. At the end of last month, I learned it again. I made a few simple examples and roughly read its official documents. Development efficiency should be similar to struts, but the configuration of webwork2 should be relatively simple. The biggest advantage of webwork2 is its good view layer design. It supports JSP, taglib, velocity, freemark, etc. The learning curve of webwork2 is slightly higher than that of struts, and there are relatively few materials. However, he and Struts feel a little like close relatives. As long as he learns one of them, it is much easier to learn the other.

3. tapestry3: It took me nearly a month to work on this item. He and Struts and webwork2 are completely different from each other. The learning curve is very high and there are very few learning materials. He advocates the concept of a group key, and the development process is a bit like winform. The PDF document of "tapestry in action" that I read in the first week is very painful. In the second week, I started to use it as a daily travel management system for the company. After three weeks, all the basic functions were completed, and the rest of the changes were handed over to other colleagues, it's okay. When I first started using it for development, I felt awkward. I felt that it was inefficient because it was not suitable for many places. After a while, I gradually got used to it and found that it was quite convenient to use it. Because it has too little information, it is depressing to have a deeper understanding of its source code. Tapestry4 is already in the testing stage. tapestry4 has a great improvement over tapestry3. It integrates hivemind. After the integration, tapestry becomes an additional package of hivemind, in this case, tapestry4 will become a close friend of sping, because their design goals are the same.

Struts, webwork2, and tapestry3 mainly focus on form processing. After the form data is transferred to the controler layer, the controler layer does not care about how to process the data. Different from them, spring uses the IOC design and di design to work at the controler layer and model layer.

4. Spring provides a wide range of functions, but it is difficult to use and configure. Therefore, when selecting a framework, more companies will choose struts and webwork. The biggest highlight of spring is its bean management capabilities, which can provide a great deal of Transaction Management for database operations. This function is not available in other frameworks, therefore, it is usually used in combination with other frameworks.
Struts + spring + others
Webwork + spring + others
Tapestry + spring + others
The daily travel management of the company I mentioned above is done using "tapestry + spring + hibernate ".

5. hibernate. This is a big metric. I don't need to know much about it.
Better support for caster and XML and poor paging Functions
Ibatis is easy to use. You can write SQL statements in the configuration file.

6. For IOC design and di design, you can refer to the documents of spring and hivemind1.1. Spring and hivemind1.1 both implement bean management. However, hivemind1.1 is rarely used. The document organization on his official website is messy and it is difficult to learn through its official documents.

Related Article

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.