1 Java and database applications, JDBC
Java invention, in a short span of a few years, quickly occupied from desktop applications (J2SE) to the server (Java), and then to the small device embedded system (J2ME) of the application development market, its language absorbs all the Smalltalk objects of the concept, free from the historical burden of C + +, concise, The style of freedom has won the favor of many developers. Starting with JDK1.1, Java became a practical language rather than a wait-and-see new show; and after a JDK1.2 of enhancements (especially the collection Framework), JDK1.3 Virtual machine Efficiency promotion (HotSpot), JDK1.4 the integration of hundreds of long (Logging, REGEXP, Newio, etc.), is now mature and stable, quite obvious everyone demeanor.
In the enterprise market, most of the applications based on the database, the data is the life of the enterprise, the traditional development of language, including the process-oriented C, object-oriented C + +, Variant Pascal Delphi (very good language, I used four years), data-oriented PowerBuilder, etc., has in the database development stage unfolds the graceful. Java of course will not let go of these, so, there is JDBC. With the help of JDBC, Java also quickly infiltrated the market of database development, especially for enterprise Server application development.
The JDO that we're going to talk about today has a very close relationship with JDBC, although JDO is not just a data object wrapper specification for JDBC. Here's a quick introduction to JDBC.
1.1 Relational databases of contention, ODBC
The history of the relational database untold, I can only describe it from my experience of contact and what I saw and heard. At the earliest time, computers had only appeared in large research institutions, and not the general public could have been involved. With the introduction of PCs to the private sector, and with the opening up of IBM's PC standards, the gradual popularity of PCs, combined with Microsoft's DOS operating system and Borland's turbo language development environment, people found that computers could do so much! Later, there was dBASE, a simple relational database system, and SQL language. Later, Borland saw the market prospects of the database, launched the Paradox (also today, Delphi and C++builder still use the paradox), occupied most of the civil database, after the Borland simply acquired dBASE, Later, the purchase of InterBase, the database market leading edge has been maintained to Windows3.0 appear. When Microsoft's tenacious launch of 3.0 and more stable 3.1 and Win32API after Windows1.0 and 2.0 were reviled, creating the dominance of the PC desktop operating system, buying Fox, which has the same kind of dBASE database technology in Borland's alarm, and quickly making it easy to use and form Became the Foxbase, later evolved into FoxPro, gradually surpassed the Borland, become a large computer database. Microsoft has developed access for Easy-to-use and low load database applications, and has won the hearts of the vast majority of developers. Of course, the same period of Oracle, Sybase, Informix and other commercial databases with focus on enterprise-level database technology to become high-end leaders. Microsoft, of course, wants to be one of the high-end database providers, so it developed a database for enterprise-class applications, but soon the project aborted, Microsoft is unwilling to buy Sybase's underlying TDS technology, packaged into SQL Server, with Microsoft's high ease of use, but also occupy a number of markets.
When a large number of database products appear on the market, Borland and Microsoft have found that they have a lot of database products, the market is not small, different products to the user to bring different configuration tasks, not conducive to the promotion of all products, so, both began to develop database access specifications, Microsoft launched the ODBC, Its affinity for developers, and gradually gained recognition, at the same time, Borland mustered IBM and Novell also launched the IDAPI Database interface specification, that is, the core of today's BDE, but then Novell and IBM successively withdrew, only the remaining Borland support. However, Borland is a strong technical strength of the company, its technology has always been ahead of Microsoft, BDE performance than the initial ODBC do not know how many times better, and then Microsoft stole the Apprentice, the connection pool technology added to the ODBC, In the Delphi3.0 and its BDE in the market scenery unlimited time, gradually driven up and there are more than. Until today, BDE is still the database access standard on Borland's product line, and if Microsoft is not embedding ODBC and most database clients in Windows, it is estimated that BDE is still the market winner. Microsoft, however, is a market-savvy veteran, with its database products and ODBC standards ultimately dominating most development markets through a monopoly on operating systems.
1.2 Standard APIs from optional pack to JDK
Java began to involve database applications, Sun is trying to develop Java database specifications, JDBC API is similar to ODBC, the database access to the underlying protocol to the most basic packaging, and then form a set of unified data access interface, database connection, SQL statement handle, result set, All with the shadow of ODBC. For easy configuration purposes, sun strongly recommends the Type 4 JDBC driver for fully thin clients, which is the most-used driver specification that does not require a database client to be installed. Of course, in order to maintain compatibility with the old database, the JDBC specification includes type 1 drivers that are designed to connect to ODBC and type 2 drivers that require the database client to be installed, and type 3 drivers that can be specifically provided by vendors for JDBC-oriented services on the database server.
When JDBC first appears, it is not part of the standard JDK, but is provided as an additional package to download. Later, with the increase in Java-written database applications and the gradual maturation of the JDBC specification itself, JDBC has finally become part of the JDK1.1.
JDBC is currently the latest version of 3.0, as well as the 4.0 version under discussion. In fact, the most used in development or 1.0 of api,2.0 in the main increase in the two-way scrolling result set, update batch processing, such as increased availability and performance api,3.0 mainly increased the connection pool, updatable result sets and other characteristics. 4.0 will be in the manageability, connection pool standardization and so on to make further improvements.
2 Object-oriented and database
Now the programmer, no don't know object oriented. As a development concept approaching the real world, object-oriented makes the program code easier to read and design more reasonable. In the ubiquitous field of database application, the developer's pursuit of object-oriented has never stopped. Since the 80 's, there have been many companies and research institutions in the research of object-oriented and database integration.
2.1 SmallTalk, C and C + +, Delphi-object Pascal, Java
Object-oriented language has several early prototypes, IBM's Smalltalk is one of the most popular, in Smalltalk, everything is object, everything is class, it will be object-oriented concept played to the extreme. Object-oriented programming is a big step in the traditional process-oriented approach, making people realize that the original software can be written like this. However, because the basic structure of the computer and the underlying hardware system and system software limitations, Smalltalk can not be extended to the ideal performance of the general application, which temporarily limited the development of Smalltalk, and then, C language object-oriented version of C + +, due to the use of C language people a lot of , C + + quickly becomes the mainstream language of object-oriented programming. However, to ensure compatibility with C, C + + retains a number of process-oriented traces, such as disgusting pointers, global variables, and so on. Pascal's improved version of Object Pascal is relatively safe, and later Borland simply replaced the object Pascal with a name called Delphi, which has since created a new world of object-oriented programming, Delphi rigorous grammar and rapid compilation has attracted a lot of application developers, coupled with the Borland of the perfect VCL component system, compared to MFC to facilitate and easy, in addition, Delphi complete database components, but also the database development becomes simple and easy, Delphi is once again a mature object-oriented development language. Microsoft of course will not let go of these, by the MFC built into the operating system, Microsoft's VC + + also snatched back some markets. This is why Delphi development of the application will be more than VC, VB Development Program big reason.
In 1995, a Sun development team originally developed the oak language for small embedded systems, resulting in the Java language, which was an object-oriented language completely free from the burdens of traditional languages, and, of course, Also retains some of the non object-oriented core (the original type) to ensure speed. Java is now one of the most popular object-oriented languages. Of course, Microsoft also will not let it, the imitation of Microsoft immediately out of a C # to compete with it, and in C # retained some variants of the pointer (refers to) to attract the traditional C developers. As for the respective characteristics of these languages, this is not the case.