一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java小知識之查詢數據庫數據的元信息

java小知識之查詢數據庫數據的元信息

2022-02-19 14:40程序那些事 Java教程

這篇文章主要給大家介紹了關于java小知識之查詢數據庫數據的元信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

簡介

java中數據庫的操作相信大家都不陌生,JDK提供了java.sql包來規范對數據庫的各種操作。我們最常用的操作就是從數據庫的ResultSet中獲取數據,其實這個包中還有一個非常有用的類叫做ResultSetMetaData,可以通過這個類來獲取查詢數據的元信息,一起來看看吧。

 

使用ResultSet

java.sql.ResultSet是一個通用的規范,用來表示從數據庫獲取到的數據。

通常來說,我們通過connection來創建Statement,然后通過執行查詢語句來得到:

Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                      ResultSet.CONCUR_UPDATABLE);
       ResultSet rs = stmt.executeQuery("SELECT a, b FROM TABLE2");

resultSet提供了各種getter方法,來獲取結果集中的各種數據??梢酝ㄟ^index,也可以通過column名稱來獲取。

當然,使用index它的效率會更高,index是從1開始的。如果是通過列名來獲取數據,傳入的列名是大小寫不敏感的,如果結果數據中有多個匹配的類,則會返回最先匹配的那一列。

在get的過程中,JDBC driver會嘗試將結果數據的數據庫類型轉換成為對應的java類型。

JDBC 2.0 API,ResultSet也可以進行更新和插入操作,可能我們很少這樣做,一般都是先構造好數據后直接插入。

先看下更新操作:

       rs.absolute(5); // 將游標移動到第5行
       rs.updateString("SITE", "www.flydean.com"); // 將SITE更新為www.flydean.com
       rs.updateRow(); // 更新到數據庫中

再看下插入操作:

       rs.moveToInsertRow(); // 將游標移動到插入行
       rs.updateString(1, "www.flydean.com"); // 將插入行的第一列更新為www.flydean.com
       rs.updateInt(2,35); // 更新第二列為35
       rs.updateBoolean(3, true); // 更新第三列為true
       rs.insertRow();
       rs.moveToCurrentRow();

 

使用ResultSetMetaData

有了ResultSet,我們可以通過它的getMetaData方法,來獲取結果集的元數據。

什么是元數據呢?元數據又叫做Metadata,是用來描述數據屬性的數據。

 ResultSetMetaData getMetaData() throws SQLException;

舉個具體的例子:

     ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
     ResultSetMetaData rsmd = rs.getMetaData();
     int numberOfColumns = rsmd.getColumnCount();
     boolean b = rsmd.isSearchable(1);

ResultSetMetaData提供了很多非常有用的元數據檢測方法:

java小知識之查詢數據庫數據的元信息

我們可以拿到列的名稱、類型、字段長度、是否為空等很多有意義的數據。

這個元數據有什么用呢?

通過元數據,我們可以拿到數據庫的描述文件,從而可以自動創建對應的數據庫表格的映射關系,從而減少手動代碼的輸入,非常的方便。

用過MybatisPlus的朋友可能知道,它提供了一個AutoGenerator,可以自動生成mapper對象和對應的xml文件,非常好用,大家可以試一試。

 

總結

以上就是ResultSet和ResultSetMetaData的介紹,大家學會了嗎?

到此這篇關于java小知識之查詢數據庫數據元信息的文章就介紹到這了,更多相關java查詢數據庫數據元信息內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://juejin.cn/post/7018370945693777951

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 70岁多老妇人特黄a级毛片 | 我的好妈妈7中字在线观看韩国 | 狠狠操社区 | 5555kkkk香蕉在线观看 | 午夜伦理:伦理片 | 久久高清一级毛片 | 男人午夜视频在线观看 | 高h短篇辣肉各种姿势bl | 国产亚洲福利精品一区二区 | 亚洲欧美日韩国产精品一区 | 欧美久久热 | 久久国产精品人妻中文 | 国产福利不卡视频在免费 | 欧美性野久久久久久久久 | 亚洲天天综合 | 欧美极品brazzers 高清 | 成人男女网免费 | 国产精品福利一区二区亚瑟 | 婷综合 | 久久噜国产精品拍拍拍拍 | m3u8久久国产精品影院 | 成人二区 | 四虎影视4hutv最新地址在线 | 扒开老女人 | 日本道在线播放 | 97精品国产自在现线免费 | 国产清纯91天堂在线观看 | 国产在线观看网站 | 久久免费观看视频 | 嫩草影院永久一二三入口 | 干操网 | 秋霞午夜伦午夜高清福利片 | 精品久久久久久久久免费影院 | 深夜免费在线视频 | 欧美高清在线精品一区 | 日韩去日本高清在线 | 日韩一二三 | 2020年国产精品午夜福利在线观看 | 跪趴好紧h | 国内精品一区二区三区东京 | 美女gif趴跪式抽搐动态图 |