最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java導出csv方法實現(xiàn)講解

 更新時間:2013年12月02日 11:46:51   作者:  
這篇文章主要介紹了java導出csv的方法,客戶要求在項目中有導出CSV文件的功能,并且給出了如何在不知道如何在不知道對象類型(沒有應用泛型)的List中如何得到對象的屬性值,下面就詳細說下這個功能是如何實現(xiàn)的

首先,通過ibatis中的sql語句查詢出所要得到的記錄,并將其存放在List中:

復制代碼 代碼如下:

List<?> results = this.reportService.getArrayBeanReportDataSource(super.getQuery_sql_csv(), query_obj);

這樣的情況下,因為我們是要寫公共方法,所以使用?而沒有使用一個確定的類型來標注。

所以才需要使用反射從List里取出的對象的屬性值。

復制代碼 代碼如下:

String[] Column = super.getReport_data_column().split(",");

這句得到需要得到的屬性,通過spring的注入實現(xiàn)。

復制代碼 代碼如下:

StringBuffer sb = new StringBuffer();
Field[] fields = query_obj.getClass().getDeclaredFields();

通過getDeclaredFields();方法來獲取對象中聲明的屬性。

然后,首先將需要的屬性和所有的屬性進行比較,因為后面的操作是在需要的屬性下產(chǎn)生的,如果沒有比較的話,導出的CSV文件中出現(xiàn)很多的空列,這個道理很容易想明白。
另外,還要注意,聲明的屬性在聲明為private的時候,必須利用setAccessible()方法來設置其值可以取出。

最后,利用循環(huán)將各列的值用逗號分隔開寫入文件就OK了。

復制代碼 代碼如下:

for(Object object : results) {
    try{
        Field.setAccessible(fields, true);
        for(int i=0;i<Column.length;i++){
            for(int j=0;j<fields.length;j++){
                if(fields[j].getName().equals(Column[i])){
                    if(i!=(Column.length-1)){
                                sb.append((fields[j].get(object)==null?"":fields[j].get(object))+",");
                                break;
                    }else{
                                sb.append((fields[j].get(object)==null?"":fields[j].get(object))+"\r\n");
                                break;
                    }
                    }
                    }
                }
            }catch(Exception e){
                e.printStackTrace();
            }
        }  

相關(guān)文章

  • java?Date獲取本月的開始時間與結(jié)束時間

    java?Date獲取本月的開始時間與結(jié)束時間

    這篇文章主要為大家介紹了java?Date獲取本月的開始時間與結(jié)束時間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2023-05-05
  • java連接mysql數(shù)據(jù)庫的方法

    java連接mysql數(shù)據(jù)庫的方法

    這篇文章主要為大家詳細介紹了java連接mysql數(shù)據(jù)庫的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Scala數(shù)據(jù)庫連接池的簡單實現(xiàn)

    Scala數(shù)據(jù)庫連接池的簡單實現(xiàn)

    本文主要介紹了Scala數(shù)據(jù)庫連接池的簡單實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • javaweb 項目初始配置的方法步驟

    javaweb 項目初始配置的方法步驟

    本文主要介紹了javaweb 項目初始配置的方法步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java直接輸出對象變成@.....的問題及解決

    Java直接輸出對象變成@.....的問題及解決

    這篇文章主要介紹了Java直接輸出對象變成@.....的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • springboot自定義starter方法及注解實例

    springboot自定義starter方法及注解實例

    這篇文章主要為大家介紹了springboot自定義starter方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • java使用swt顯示圖片示例分享

    java使用swt顯示圖片示例分享

    這篇文章主要介紹了java使用swt顯示圖片示例,修改后就可變?yōu)閳D片瀏覽器,需要的朋友可以參考下
    2014-02-02
  • Java集合的Collection接口和List接口詳解

    Java集合的Collection接口和List接口詳解

    這篇文章主要為大家詳細介紹了Java集合的Collection接口和List接口,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • J2EE Servlet基礎在瀏覽器上運行HelloServlet的方法

    J2EE Servlet基礎在瀏覽器上運行HelloServlet的方法

    這篇文章主要介紹了J2EE Servlet基礎在瀏覽器上運行HelloServlet的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 一文探究ArrayBlockQueue函數(shù)及應用場景

    一文探究ArrayBlockQueue函數(shù)及應用場景

    這篇文章主要為大家介紹了一文探究ArrayBlockQueue函數(shù)及應用場景,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03

最新評論

满城县| 凌源市| 陵川县| 阿勒泰市| 深泽县| 周至县| 荃湾区| 确山县| 达拉特旗| 屏边| 英德市| 长宁区| 康定县| 白沙| 肥西县| 裕民县| 罗定市| 玉环县| 丰镇市| 静安区| 木兰县| 阳原县| 商水县| 龙江县| 天等县| 凤山县| 合水县| 蒲江县| 巴南区| 九寨沟县| 阳泉市| 徐州市| 江西省| 银川市| 黄大仙区| 红原县| 富锦市| 邵阳县| 哈巴河县| 江达县| 六安市|