Fengyun changed JDO2.0

xiaoxiao2021-03-06  40

Fengyun changed JDO2.0

JDO2.0 is a three fold, especially this time, suffering from heavy. After jdo2.0, the road is not flat, and there is a need to write a little thing.

From the forced EJB merged from September, it can be described as a miserable EJB merged. The results of the voting have been the most "political" implications in JCP for many years, because there is no objection ticket based on technical reasons.

After a few days of mood, I can finally calm down and reflect. Why is this, what will happen later, what can I do now. . .

I am thinking about writing a little thing.

1 background

JDO, Java Data Objects, a small and exquisite lightweight object storage criteria, which is full of bumps from a birth. Single entries to the first edition specification announced, it took three years. At the beginning of the world, the function is still limited, the target positioning is also relatively narrow, is to provide a lightweight object packaging, not relying on any special middleware or J2EE container As long as there is JDK enough, when doing simple applications, the development process is very simple, developers don't have to care about the implementation details of the underlying database, just need to organize object-oriented concepts, build their own data object model, and then Manipulate this model. Under today's concept of "simple is beautiful", JDO has been recognized by many people, especially in the field of obstacles, and finally has a unified lightweight standard. It is not easy. Of course, the JDO at this time is also a conceptual level. Many people are only waiting to work, while providing limited support and promotion, like IBM, there are some propaganda JDO articles. Over time, JDO manufacturers are more and more, and more and more countries are more (more proud of Charles Huang leaders' own JDO products: liberator), slowly presenting internationalization Trend, due to the competition between JDO vendors, the quality of JDO products is gradually improved, and the functions provided by vendor-extension methods are increasingly practical, and JDO began to obtain developers' identity and implementation, especially used. EJB entity bean (including I person), after the cumbersome configuration, release, debugging process, and high-demand server environment maintenance, slowly turn the gaze to JDO, after some initial attempts, everyone tastes In the sweetness, coupled with a lot of JDO manufacturers, free to high-end products, will not become a situation in which several manufacturers dominate the market, JDO begins to enter practical stages.

Where is JDO development? Where is it? The two projects developed by the author's own supervisor can explain everything:

Pacific Computer Network Second-hand market: http://es.pconline.com.cn/ This is a five-person day, including design and code development, and modify or cancel the completed function in the middle of the road. The database structure is also Multiple changes. The bugs that appear in the test phase are more ease of use, more than a lot of data inconsistent or associated with the data used in the previous JDBC method, and the time is less than the previous use JDBC mode for 1 month, or 60% of time.

Pacific Website Group Review System: http://cmt.pconline.com.cn/ This is a system that is recently put into use to freely comment on the Pacific website article, although it is simple, but the amount of data is very large. On the basis of millions of comments, the average annual comment is now published, and it is still rising on day, which is completely object-oriented, better than direct JDBC than the actual performance and speed. Much more. This is enough to illustrate the scalability of JDO, and the development of a large number of databases is also overwhelming. Of course, high-performance underlying databases are also necessary. Ok, the book is positive, just talk about JDO to get a general agreement, and all JDO manufacturers have gone, and the storage of the horses, there is a lot of flowers. Not reaching, although many manufacturers expanded practically a matter, but various manufacturers have the characteristics and specific implementations, especially those O / R mapping mapping belong to the manufacturer's extension, so that developers are difficult to choose. In such a situation, the JDO2.0 specification also arrows on strings, and the goal is to unify the developers' commonly used, allowing developers to make the JDO apps that can be maximized between individual manufacturers, so that it can be flexible Choosing a more suitable product (considering factors mainly include regional, technical support, etc.), in 2003, the Javaone Conference in the JDO2.0 specification in August, you have set a 2.0-normative goal, started to make new API and semantic standards.

While this JDO develops, the Java world itself has a lot of changes. J2SE1.4 and J2EE 1.4 have been released, making developers' application development easier, JSP2.0 use, allowing web development tolerance, simple code. In particular, the EJB3.0 specification has also begun to enter the development process. The major EJB manufacturers will be determined to change, and EJB will continue to slim into a slim flexible component system, so that developers are no longer complex configuration and interface. Headache, even let EJBs no longer rely on J2EE servers, but directly provide POJO (simple Java object) support, but it is only a thought and has not become a truth). However, EJB3.0 is directly positioned on JDK5.0. Its mass production also depends on the extensive acceptance of JDK5, while the law of JDK5 is, it is estimated that it will become mainstream after 2006.

JDO2.0 has been working hard for more than a year (including me), and finally introduced a new norm, but the good scene is not long, the industry is changing, and now the situation is critical, especially in the traditional Chinese festival - Mid-Autumn Festival,漪 为 为 波, really, it is the past, the past is unbearable!

2 analysis

In this section, let's carefully ponder the process of pondering the wind wave, the people in the Java world.

Let's talk about the quality of the gathering, the complex EJB, and the chaos of O / R mapping gave birth to JDO, while JDO has been favored by simple and lightweight characteristics. What about big companies? Generally determined that the software technology route is also slowly absorbed by SMEs. In this way, JDO will gradually enter large software development. Its flexible and diverse configuration options can make complicated large applications are completely free. The architecture is above, this flexibility has excellent product proven products such as Linux, Apache, Ant in the industry. At this time, it is definitely a test for EJB. One as much as possible, let developers know that EJB can also be very simple, two highlight the weakness of JDO, such as young life, technical support is not perfected, etc., three directly JDO absorbs EJB. Results These aspects have been reflected in the actual change process. Let's talk about a small climate, which will involve a plurality of manufacturers or group attitudes.

The emergence of JDO is a great encouragement for open source groups. At the beginning of JDO1.0, JBoss is very supportive. It organizes special team to develop JBossdo, as an open source JDO product, because JBoss is provided as J2EE platform The company has not yet received SUN's formal acknowledgment, JBoss has been doing well, and if it is necessary to provide enterprise-level application development, the bottom of a database is necessary, JBoss has chosen JDO at this time, because JDO is simple, It is attractive to developers to comply with JBoss consistent features. However, in the late JBOSS attitude, JBoss finally got the official acknowledgment of Sun (through J2EE TCK test), then the JBoss high-level start to develop in the business direction, and acquired an open source O / R map with a certain user basis. O / R mapping Product Hibernate, and Hibernate's person in charge, GAVLIN KING started to incorporate Hibernate into EJB, becoming the bottom of its Pojo support, at this time, JBoss naturally needs to slopes EJB, so as a member of the JDO2.0 expert group, JBoss The start of the standard formulation gradually faded until it is now voted.

Some like, the Apache Group has experienced some changes to JDO, but it is only opposite to JBOSS. Initially, Apache's Jakarta development group has its own set of database bottoms, like Torque in Turbine, like Ojb (Object Java Bridge), etc., there must be historical. In the early days of JDO, Apache is only a wait-and-see, and it has not been given, and the OJB has added a point to the JDO API interface, but there is no development in this regard during the quite long. However, as a member of the JDO2.0 expert group, Apache's later contribution is very large, it uses its own open source advantages and strength, take the initiative to take the work of the REFERENCE IMPERNTATIONS, the goal is to provide a strong developer , Easy to use, free JDO bottom, allow yourself to attract more visits and status in the industry to join the JDO camp. This is also a relatively revered place.

Now this Hibernate is played, it is also an independent O / R product, free and continuous improvement is its biggest feature, it can be said that it is the most striking in the original O / R market, especially in the open source Community, it also won the title of one of the best Java products in 2003. Many developers who are dissatisfied with EJBs have tried and used it to become a member of its broadcasters. Initially Hibernate is also a leader who wants to be JDO, but Hibernate unique syntax and completely targeted the relationship database, it is not suitable for JDO's unified specification and face-oriented, it is still a long target of relational database, so Hibernate is still walking . Galvin King's contribution to the industry and his own perseverance and perseverance are really convincing. However, after JDO gradually matures, Hibernate is the biggest impact, and many online debates are in order to get a clear choice between JDO and Hibernate. At this moment, EJB3.0 just wants to learn the flexibility of JDO does not depend on J2EE container. It needs a Pojo supported underlying. Hibernate seems to be in the phase, then Hibernate is acquired by JBoss, and only JBoss horse is looking forward, and jboss In the JDO2.0 specification, the representatives in the Group of Experts have been replaced by Galvin King, that is, the later words. Oracle has always been good for JDO. It has acquired Toplink, which seems to be the best in the original O / R mapping market, but the price is also the highest, the API is also the most special product. Oracle hopes to make up for the shortcomings of EJB through Toplink, and win the opportunity in non-EJB database development market to achieve comprehensive admission purposes. So Oracle has always been not supported by JDO. Despite this, Oracle has added a lot of elements similar to JDO in the top of Toplink last year. In other words, some of the characteristics of JDO is integrated into Toplink.

IBM initially supported JDO, some technical experts from IBM also wrote the article introduction JDO. However, in these two years, IBM gradually replaced BEA became the boss of J2EE market, and the database development of large enterprises was not in a small number of EJBs of the BEA. Therefore, it is not difficult to understand that IBM's later-term concerns of JDO.

HP is compared to the wall, in the final voting of this JDO2.0 specification, in May, the JDO2.0 early specification last year (JCP has a comparative process of Java specification), HP is unswervingly In the voting of the ticket, the JDO2.0 public review version (JCP developed the Java specification) voting, HP seems to be in favor, but I have seen other giants. After voting and comment, it also changed against the vote, it is really a sigh!

Japan Fujitsu is a cold eye, only briefly saying that it is hoping to explain the relationship between clear and EJB, and vote against the vote. Here, I want to sigh, I didn't see how the Fujitsu contributed to the Java industry, but it was a member of the JCP Executive Committee, which is very puzzled. If it is replaced with Lenovo or Foundation, perhaps the voting will be justified.

Borland has always been a representative of developers, although it is also an EJB manufacturer, but hundred flowers, encouraging competition, the principle of Borland, just like it launches Java and .NET IDE.

Ok, I don't say much, through some simple analysis, we can see that this regrettable JDO2.0 voting result is the Java industry 's big climate and the O / R mapping hierarchy. It is not transferred without people's will. However, in the process of changing, I personally think is still not good. For example, after jdo1.0 introduced, David Jordan wrote articles "CMP or JDO? ", Describe the difference between CMP and JDO and how to choose. Perhaps that article is easy to mislead readers, connect JDO and EJB, which causing unnecessary disputes. 3 processes and prospects

JDO2.0 specification started from August 2003, it was decided by a debate, and the JCP standard specification formulation process was officially started in April 2004, that is, the March of JSR243.4 months does not need to open JDO2.0 norms. In voting, IBM, Oracle, BEA's three giants opposed, buried in JDO2.0. However, it is not based on the formulation of the expert group, but concentrates on work, and gradually sorted out the results of the previous discussion, and the early draft will be announced in late June. After that, it is continually discussed how to make developers use JDO, how to add more practical features to standard, completely not ignite the outside of the outside world.

As one of the JDO users, I can see the more practical changes: formal support for the complete MAP and Collection framework, JDOQL enhancements (automatic identification parameters, variables, etc.), the more perfect relational database Support (statistical functions, maintenance-free manufacturers), control, data access details, second-level buffer fine-grained control API, etc., is very conducive to application system extension.

Until September Mid-Autumn Festival, I also invited Jiuzhaigou a few days to play, but it was really happy, but I came back to the Internet to discover that the big things is not good, EJB is to swallow and JDO, the merged norm is still called EJB3.0, And the leader is no longer a JDO's head Craig Russell, but the head of EJB (the towel is not allowed to make the eyebrow!). In those days, everyone in the expert group was very unachable, especially most members of the JDO manufacturer, and their markets clearly affected. This time, I really appreciate the truth of "the moon is cloudy"!

Everyone urgently discusses the countermeasures, but Craig Russell has clearly received pressure from all parties, including his boss, SUN senior manager. In the end, an open letter showed the YDO's yield to the public: "JDO2.0 will be just a fine change version of JDO1.01, with the main purpose of the old version." Originally, our purpose is to soften contradiction, slow conflict, and then complete the function of the function in the JDO2.0 norms, take the Yue Wang's pegs, and the stretch, the thickness is thin, and the market will dominate the market. However, this move seems to have failed, because we only think of users will accept and promote JDO2.0, but not to think about the ultimate vote is mainly the EJB giants of the world today. JDO2.0 is already full of 1.0 functionality in September, joining too many practical functions, it is not a simple JDO1.0 perfect version. It is this sentence in the open letter, becoming a target today.

After that, 6 members in the JDO2.0 expert group were selected from the EJB3.0 expert group, and the Craig was involved in the EJB3.0, and Craig took home pressure and continued to improve JDO2.0. There is an old saying in China: It is not a disaster, it is a disaster. The contradiction is now excited, and JDO is only continuing to succumb to the current situation.

However, in TD, JDO and EJB3.0 are simple Pojo support, how to choose, many users are so weak. This voting just puts this problem directly to the table, no matter who is not, for users, the standard is not uniform, will eventually cause trouble. From now on the content of the current specification, the features provided by JDO2.0 do have more range of EJB3.0, and existing manufacturers support is enough to start JDO2.0 immediately. And EJB3.0's standardized finalization to the final manufacturer product has appeared, and there is no more realistic time without 1 year. Change an angle, from the user's point of view, EJB has a long history, at least knows that the NP in EJB is more than knowing JDO, maybe EJB3.0 is more vividly accepted by corporate users. The best way is to launch JDO2.0 in the name of EJB3.0, but this is of course an idiotic dream, a wish. This is ancient disaster, but also a good party.

Now that both parties will probably EJB3.0 will provide a new API, EntityManager, which will support J2EE environments and non-J2EE environments, more directly, JDO2.0 will be supported by this API. Existing JDO vendors can support EJB3.0 Pojo through less complex transformation. From this point of view, it is likely that the non-container version of EJB3.0 will be more early.

For JDO itself, this vote does not mean JDO's demise, the next step in the expert group is to EJB3.0, and the details such as API, mapping methods are unified to EJB3.0, maybe there will be some proxy. The API came to bridge the JDO's API and EJB3.0's API, so that there was a product developed by JDO2.0, which would be convenient to other products of EJB3.0.

Night is long, the road is growing, we will continue to go. . .

4 action

What can we do now for JDO?

In fact, the answer is not complicated, let more people agree with JDO, let JCP Executive Committee know that JDO is important, is our top joy. At least we can do the following:

1. In the websites and forums, publish your own point of view, especially those who are familiar with English can go to THESERVERSIDE.COM, ONJAVA.com, Oreilly.com and other well-known industry media websites to express their opinions.

2. Personnel who persuaded those companies that invest against objects. Of course, this is not a thing, and we have friends around us in IBM, Oracle, HP, Fujitsu and other companies and Java development, can introduce the role and importance of JDO, they can send mail to the company's voting representative Conveyor

3. The most important, is the developer's opinion, if it has been put in jdo and has a certain accumulated user, you can send a mail question directly to the JCP Executive Committee, describe your own situation, and strive to protect your own investment.

4. JDO vendors can sum up their customers, indicate their position to JCP

As far as I know, some foreign companies use JDO companies, issued a question, I hope JCP respects their own investment, don't cause JDO's end because of some meaningless strategies. Among them, there was also the email to the JDO specification group. Why did a member of the painful regulatory group vote against JDO, of course, he is a wrong object, regard the victim as a murderer. But more less, let everyone get a hint of comfort: there are many users' support behind the JDO! 5 reference

Said so much, you can't bring how much transfer, more efforts, you will rely on everyone to pay together.

Finally, give some links to readers:

1. JDO2.0 specification home page, there are two voting links, and the latest version of the specification download http://jcp.org/en/jsr/detail?id=243

2. JDO main discussion area http://jdocentral.com/forums/index.php

3. Introduction to JDOQL in JDO2.0 http://www.9cbs.net/develop/read_article.asp?id=26400

4. JDO Specifications Expert Group Length Craig Russell's Introduction Http://www.oreillynet.com/cs/catalog/view/au/1118?x-t=book.view&cmp=il7015

转载请注明原文地址:https://www.9cbs.com/read-65902.html

New Post(0)