ISQLXML Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Pemetaan dalam bahasa pemrograman JavaTM untuk jenis XML SQL.
[Android.Runtime.Register("java/sql/SQLXML", "", "Java.Sql.ISQLXMLInvoker")]
public interface ISQLXML : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/sql/SQLXML", "", "Java.Sql.ISQLXMLInvoker")>]
type ISQLXML = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Atribut
- Penerapan
Keterangan
Pemetaan dalam bahasa pemrograman JavaTM untuk jenis XML SQL. XML adalah jenis bawaan yang menyimpan nilai XML sebagai nilai kolom dalam baris tabel database. Secara default driver menerapkan objek SQLXML sebagai penunjuk logis ke data XML daripada data itu sendiri. Objek SQLXML valid selama durasi transaksi pembuatannya.
Antarmuka SQLXML menyediakan metode untuk mengakses nilai XML sebagai String, Pembaca atau Penulis, atau sebagai Aliran. Nilai XML juga dapat diakses melalui Sumber atau ditetapkan sebagai Hasil, yang digunakan dengan XML Parser API seperti DOM, SAX, dan StAX, serta dengan transformasi XSLT dan evaluasi XPath.
Metode dalam antarmuka ResultSet, CallableStatement, dan PreparedStatement, seperti getSQLXML memungkinkan programmer mengakses nilai XML. Selain itu, antarmuka ini memiliki metode untuk memperbarui nilai XML.
Nilai XML instans SQLXML dapat diperoleh sebagai BinaryStream menggunakan
SQLXML sqlxml = resultSet.getSQLXML(column);
InputStream binaryStream = sqlxml.getBinaryStream();
Misalnya, untuk mengurai nilai XML dengan pengurai DOM:
DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document result = parser.parse(binaryStream);
atau untuk mengurai nilai XML dengan pengurai SAX ke handler Anda:
SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
parser.parse(binaryStream, myHandler);
atau untuk mengurai nilai XML dengan pengurai StAX:
XMLInputFactory factory = XMLInputFactory.newInstance();
XMLStreamReader streamReader = factory.createXMLStreamReader(binaryStream);
Karena database dapat menggunakan representasi yang dioptimalkan untuk XML, mengakses nilai melalui getSource() dan setResult() dapat menyebabkan peningkatan performa pemrosesan tanpa membuat serialisasi ke representasi aliran dan mengurai XML.
Misalnya, untuk mendapatkan Node Dokumen DOM:
DOMSource domSource = sqlxml.getSource(DOMSource.class);
Document document = (Document) domSource.getNode();
atau untuk mengatur nilai ke Simpul Dokumen DOM ke myNode:
DOMResult domResult = sqlxml.setResult(DOMResult.class);
domResult.setNode(myNode);
atau, untuk mengirim peristiwa SAX ke handler Anda:
SAXSource saxSource = sqlxml.getSource(SAXSource.class);
XMLReader xmlReader = saxSource.getXMLReader();
xmlReader.setContentHandler(myHandler);
xmlReader.parse(saxSource.getInputSource());
atau, untuk mengatur nilai hasil dari peristiwa SAX:
SAXResult saxResult = sqlxml.setResult(SAXResult.class);
ContentHandler contentHandler = saxResult.getXMLReader().getContentHandler();
contentHandler.startDocument();
// set the XML elements and attributes into the result
contentHandler.endDocument();
atau, untuk mendapatkan peristiwa StAX:
StAXSource staxSource = sqlxml.getSource(StAXSource.class);
XMLStreamReader streamReader = staxSource.getXMLStreamReader();
atau, untuk mengatur nilai hasil dari peristiwa StAX:
StAXResult staxResult = sqlxml.setResult(StAXResult.class);
XMLStreamWriter streamWriter = staxResult.getXMLStreamWriter();
atau, untuk melakukan transformasi XSLT pada nilai XML menggunakan XSLT dalam output xsltFile ke file resultFile:
File xsltFile = new File("a.xslt");
File myFile = new File("result.xml");
Transformer xslt = TransformerFactory.newInstance().newTransformer(new StreamSource(xsltFile));
Source source = sqlxml.getSource(null);
Result result = new StreamResult(myFile);
xslt.transform(source, result);
atau, untuk mengevaluasi ekspresi XPath pada nilai XML:
XPath xpath = XPathFactory.newInstance().newXPath();
DOMSource domSource = sqlxml.getSource(DOMSource.class);
Document document = (Document) domSource.getNode();
String expression = "/foo/@bar";
String barValue = xpath.evaluate(expression, document);
Untuk mengatur nilai XML menjadi hasil transformasi XSLT:
File sourceFile = new File("source.xml");
Transformer xslt = TransformerFactory.newInstance().newTransformer(new StreamSource(xsltFile));
Source streamSource = new StreamSource(sourceFile);
Result result = sqlxml.setResult(null);
xslt.transform(streamSource, result);
Sumber apa pun dapat diubah menjadi Hasil menggunakan transformasi identitas yang ditentukan dengan memanggil newTransformer():
Transformer identity = TransformerFactory.newInstance().newTransformer();
Source source = sqlxml.getSource(null);
File myFile = new File("result.xml");
Result result = new StreamResult(myFile);
identity.transform(source, result);
Untuk menulis konten Sumber ke output standar:
Transformer identity = TransformerFactory.newInstance().newTransformer();
Source source = sqlxml.getSource(null);
Result result = new StreamResult(System.out);
identity.transform(source, result);
Untuk membuat DOMSource dari DOMResult:
DOMSource domSource = new DOMSource(domResult.getNode());
Nilai XML yang tidak lengkap atau tidak valid dapat menyebabkan SQLException saat diatur atau pengecualian dapat terjadi ketika execute() terjadi. Semua aliran harus ditutup sebelum execute() terjadi atau SQLException akan dilemparkan.
Membaca dan menulis nilai XML ke atau dari objek SQLXML dapat terjadi paling banyak sekali. Status konseptual yang dapat dibaca dan tidak dapat dibaca menentukan apakah salah satu API pembacaan akan mengembalikan nilai atau melemparkan pengecualian. Status konseptual yang dapat ditulis dan tidak dapat ditulis menentukan apakah salah satu API penulisan akan menetapkan nilai atau melemparkan pengecualian.
Status berpindah dari yang dapat dibaca ke tidak dapat dibaca sekali gratis() atau API baca apa pun yang disebut: getBinaryStream(), getCharacterStream(), getSource(), dan getString(). Implementasi juga dapat mengubah status menjadi tidak dapat ditulis ketika ini terjadi.
Status berpindah dari dapat ditulis ke tidak dapat ditulis sekali bebas() atau API penulisan apa pun yang disebut: setBinaryStream(), setCharacterStream(), setResult(), dan setString(). Implementasi juga dapat mengubah status menjadi tidak dapat dibaca ketika ini terjadi.
Semua metode pada SQLXML antarmuka harus sepenuhnya diimplementasikan jika driver JDBC mendukung jenis data.
Ditambahkan dalam 1.6.
Java dokumentasi untuk java.sql.SQLXML.
Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.
Properti
| Nama | Deskripsi |
|---|---|
| BinaryStream |
Mengembalikan aliran yang dapat digunakan untuk membaca data biner dari objek SQL |
| CharacterStream |
Mengembalikan pembaca yang dapat digunakan untuk membaca data karakter dari objek SQL |
| Handle |
Mendapatkan nilai JNI dari objek Android yang mendasar. (Diperoleh dari IJavaObject) |
| JniIdentityHashCode |
Mengembalikan nilai |
| JniManagedPeerState |
Status serekan terkelola. (Diperoleh dari IJavaPeerable) |
| JniPeerMembers |
Akses anggota dan dukungan pemanggilan. (Diperoleh dari IJavaPeerable) |
| PeerReference |
Mengembalikan instans objek Java yang dibungkusJniObjectReference. (Diperoleh dari IJavaPeerable) |
| String |
Mengembalikan data objek ini sebagai string XML. |
Metode
| Nama | Deskripsi |
|---|---|
| Disposed() |
Dipanggil ketika instans telah dibuang. (Diperoleh dari IJavaPeerable) |
| DisposeUnlessReferenced() |
Jika tidak ada referensi yang luar biasa untuk instans ini, maka panggilan |
| Finalized() |
Dipanggil ketika instans telah diselesaikan. (Diperoleh dari IJavaPeerable) |
| Free() |
Metode ini menutup objek ini dan melepaskan sumber daya yang dipegangnya. |
| GetSource(Class) |
Mengembalikan Sumber untuk membaca nilai XML yang ditunjuk oleh instans SQLXML ini. |
| SetBinaryStream() |
Mengambil aliran yang dapat digunakan untuk menulis nilai XML yang diwakili instans SQLXML ini. |
| SetCharacterStream() |
Mengambil aliran yang akan digunakan untuk menulis nilai XML yang diwakili instans SQLXML ini. |
| SetJniIdentityHashCode(Int32) |
Atur nilai yang dikembalikan oleh |
| SetJniManagedPeerState(JniManagedPeerStates) |
Pemetaan dalam bahasa pemrograman JavaTM untuk jenis XML SQL. (Diperoleh dari IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
Atur nilai yang dikembalikan oleh |
| SetResult(Class) |
Mengembalikan Hasil untuk mengatur nilai XML yang ditunjuk oleh instans SQLXML ini. |
| UnregisterFromRuntime() |
Batalkan pendaftaran instans ini sehingga runtime tidak akan mengembalikannya dari pemanggilan di masa mendatang Java.Interop.JniRuntime+JniValueManager.PeekValue . (Diperoleh dari IJavaPeerable) |
Metode Ekstensi
| Nama | Deskripsi |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Mendapatkan nama JNI dari jenis instans |
| JavaAs<TResult>(IJavaPeerable) |
Cobalah untuk memaksa |
| JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Pemetaan dalam bahasa pemrograman JavaTM untuk jenis XML SQL. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Cobalah untuk memaksa |