What can jdo bring to us - cost, management, rapid development, response to strain ...
(The copyright of this article is author himself, welcome to reprint, but must indicate the introduction of the source and the original, giving traditional database applications, especially the web-style database applied a new opportunity, which is to use transparent middleware. Storage technology, reducing the cumbersome work of traditional development, increasing the efficiency of development and maintenance, so that we can respond to the increasingly rapid demand of the new Internet era. From the perspective of development, when we conduct a J2EE standard web application development, if it involves the database, the development team that is generally has a certain experience will not use the JSP JDBC's way to perform database operations, so on the one hand, the project is huge, The code is lengthy and on the other hand, it is not easy to maintain, and the danger is more dangerous. A simple similarity below: ResultSet = preparedStatement.execute (); ... preparedStatement = connection.preparestatement (...); it seems that there is no problem, but the running process will gradually lead to the server crash, because the second statement There is a few more prepaaredStatement.Close (), which results in some non-JVM allocation memory never recycled (because not returning to Java garbage collection mechanism). This problem is very easy to confirm, the most important thing is that after this problem occurs, you have to find out the problem, you It will be found that this is much more complicated than the United Nations's verification work in Iraq. Therefore, experienced development team will use some JavaBean to pack data objects, which is also the need for object-oriented development. However, even if this is the way in which ValueObject is wrapped in database data, there is still the above risks. This is only the aspect of the problem, and in the case where the application development needs are increasing, the efficiency and maintainability of traditional development methods have not been needed. Many companies have only two solutions: First, it is expanded, but this involves cost problems in development levels and training; the second is to postpone or cancel some relative development tasks, but this will only drag down the company. development of. That is in this case, in the internationally experienced enterprises (such as Sun, IBM, etc.) in this regard to jointly develop JDO specifications, and ask developers to get rid of this risk, from complex and cumbersome The emphasizable work is freed out to guide the development of the concept and business awareness of the new full face. The JDO specification is relatively EJB, and the performance is simple and outstanding. It can greatly save the company's development cost, so we have been supported by many companies. Although the JDO1.0 specification is announced less than one year, the JDO standardized product is like the spring bamboo shoots. Out, such as the United States (Kodo, Frontiersuite, FastObjects, ETC.), France (JDogen), Germany (JRELAY) and other manufacturers have more good products (from which we can see Java is a relatively open , More international things), in addition to these commercial products, there are some teams that consist of a "Implementation", such as TJDO, XORM, OJB, and more. Let's take a look at what JDO can bring us. 1. Save development costs and time.
Using JDO, according to some companies currently adopt JDO, it is about 30% code quantity in the development, which is about 60% of work in maintenance. Although these data come from the JDO product provider, but from the perspective of the user, I think this number is not too much. Because traditional development methods are large, leading to many developers, long development time, more people, mutual coordination and difficulty in development, long development time, limited memory, and coherence of the front and rear code It will be affected. After using JDO, the developer needs to write, mainly for the packaging portion of the data layer, which will greatly reduce, the code in the application will focus on the processing of business logic. As the saying goes, do more, misunderstood, do less, and less. Although it is a bit negative, this fact also illustrates this fact. When our manual code is rare, the error rate will be a lot, even if an error is wrong, it is easy to find. When these goals reaches, the one-time investment of JDO (such as buying JDO products and related training), it will appear negligible than traditional development overhead. Human costs are even more than three people's work, now you can do it (because the workload is reduced), this saves a manual cost. 2. Improve application performance, especially web applications. JDO vendors have been using a lot of optimization of underlying database operations with many years of experience, and these optimizations are more difficult to do due to experience and complexity, such as distributed buffering, JDBC2.0 and JDBC3. Some of the performance optimized advanced processing, etc. Therefore, we can use these manufacturers to improve the performance of the server by using JDO products. General vendors provide many performance adjustment parameters to target different specific situations. 3, more flexible business logic. Since JDO liberates developers in the underlying work, they can concentrate on business logic, and more easily communicate with the demand side. They will not be like the original, and if you hear a new demand or change, you will first think of it. What is the how much data table, how the foreign key is associated, the more complex, the more complex, and finally refused. After using JDO, developers can realize business logic faster, even if they are experimenting, more convenient and fast, such as the need to propose two different implementation programs for the demand, to make a demonstration program to complete, And the traditional way can be completed in the same time is very good. When developers can better communicate with the demand side, they can more accurately understand demand, and often make more professional opinions to improve business logic, so that they can have better exercise for both parties. 4, which is conducive to the stability of the development team. The stability mentioned here is not that the person is fixed, but the role in the development is relatively fixed, and the working positioning is relatively fixed. For example, people who care about performance are responsible for mapping layers. He needs to understand the specific implementation of the JDO products used, and how to effectively mapped the business model to the database, and people who care about the code do not need to consider these details, only need to object-oriented data The model (generally one or a complex or simple physical class map) is implemented on the implementation of business logic. Each has its own responsibilities, more divided into labor, and the overall work efficiency is greatly improved. That is, after JDO technology, the project development is easier to achieve the longitudinal division of the task, and different types of tasks are made by different people.