最新国产好看的视频,伊人天堂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();
            }
        }  

相關文章

  • 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

最新評論

柳江县| 阳城县| 盱眙县| 大港区| 观塘区| 枞阳县| 鹿邑县| 华安县| 万宁市| 大新县| 扶沟县| 汝南县| 永嘉县| 汝州市| 舟山市| 广平县| 华宁县| 河曲县| 丹寨县| 华蓥市| 治县。| 丹东市| 合川市| 漳平市| 沁源县| 河西区| 疏勒县| 荥阳市| 商南县| 濉溪县| 历史| 天门市| 尚义县| 柳州市| 保德县| 高青县| 丰原市| 乐陵市| 清水县| 洛阳市| 宜都市|