2013-08-13 29 views
12

Jaka jest różnica między javax.sql i java.sql Rozumiem, że javax.sql jest dla JavaEE. czy jestem w błędzie.Różnica między javax.sql i java.sql?

Walczę ze zrozumieniem tej różnicy. I ich scenariusze użycia.

+0

Czy przeczytałeś dokumentację pakietu? Czego nie rozumiesz? (http://docs.oracle.com/javase/7/docs/api/java/sql/package-summary.html i http://docs.oracle.com/javase/7/docs/api/javax/sql /package-summary.html) –

+1

Zamiast myśleć "javax.sql vs java.sql", po prostu użyj potrzebnych obiektów i zapomnij o tym, z którego pakietu pochodzą. Martwisz się o niewłaściwą rzecz. :) –

+2

Zagłosowano na ponowne otwarcie. To godne pytania, a odpowiedź nie jest banalna. (IMO) –

Odpowiedz

15

Jaka jest różnica między javax.sql i java.sql rozumiem że javax.sql jest JavaEE.

Kiedyś było tak, że javax.sql był dla rozszerzeń, które były w JDBC Java EE i Java SE nie, ale to się zmieniło, jak z JDBC 3.

Teraz oba pakiety są częścią JDBC w Java SE i fakt, że istnieją dwa pakiety, jest obecnie tylko historyczną anomalią. (I tak jak wszystkie takie anomalie, oba pakiety nadal istnieją, ponieważ usunięcie jednego spowodowałoby problemy ze zgodnością wsteczną.)

2

Java.sql

Zapewnia API dla dostępu i danych przechowywanych w źródle danych (zazwyczaj relacyjne bazy danych) przy użyciu języka programowania JavaTM przetwarzanie.

. Ten interfejs API zawiera strukturę, w której różne sterowniki mogą być dynamicznie instalowane w celu uzyskania dostępu do różnych źródeł danych. Chociaż interfejs API JDBCTM służy głównie przekazywaniu instrukcji SQL do bazy danych, umożliwia on odczytywanie i zapisywanie danych z dowolnego źródła danych w formacie tabelarycznym. Funkcja czytnika/programu piszącego, dostępna za pośrednictwem grupy interfejsów javax.sql.RowSet, może być dostosowana do używania i aktualizowania danych z arkusza kalkulacyjnego, płaskiego pliku lub dowolnego innego tabelarycznego źródła danych.

Javax.sql

Zapewnia API po stronie serwera dostępu do źródła danych i przetwarzania z języka programowania JavaTM. Ten pakiet stanowi uzupełnienie pakietu java.sql, a od wydania wersji 1.4 jest dołączony do platformy Java, Standard Edition (Java SETM). Pozostaje istotną częścią platformy Java, Enterprise Edition (Java EETM).

+2

Historycznie, klasy w 'javax.sql' zostały zdefiniowane w opcjonalnym rozszerzeniu do JDBC 2, ale w JDBC 3 stały się częścią normalnego standardu JDBC. –

+5

Te dwa wydają się podobne. Jaka jest różnica? Pierwszy dotyczy dostępu do danych w źródle danych, a drugi dotyczy ... dostępu do danych w źródle danych? WTF? –

+0

Proszę przejść, Dodano podstawowe informacje z dokumentacji :) –