通过jxi将数据库里的表导出到Excel中

本文分享了一个使用Java导出Excel文件的简单示例代码,包括创建工作簿、工作表、填充数据并保存的过程。示例从数据库查询数据,将数据转换为Java对象,然后将这些对象的数据写入Excel的各个单元格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这只是个简单的Java类,就当是熟悉jxi了,大家了解了解就行,不多说了,直接上代码。

public void expRetail() throws Exception{
	String filepath = "D:/exportRetail.xls";
  	WritableWorkbook wwb =null;  
          wwb = Workbook.createWorkbook(new File(filepath));//创建工作薄
          WritableSheet sheet = wwb.createSheet("Client",0);//创建新的一页
          Transaction Sqlca = NameCache.getSqlca(); //获取数据库连接类
	 ASResultSet rs =  Sqlca.getASResultSet(new SqlObject("select * from RWA_EI_Client where ClientID='CASE21-C01'"));//sql数据结果集返回类
     	 List<Exposure> list = new ArrayList<Exposure>();//这里还有个对应的Exposure的Java类   我就不放了  大家自己按实际情况写
     	while(rs.next()){
	      	Exposure c = new Exposure();
	      	c.setExposureID(rs.getString("ExposureID"));
	      	c.setAssetSubType(rs.getString("AssetSubType"));
	      	c.setOrgID(rs.getString("OrgID"));
	      	c.setPD(rs.getString("PD"));
	      	c.setLGDLevel(rs.getString("LGDLevel"));
	          list.add(c);
	 }
	Sqlca.commit();
  	Sqlca.disConnect();
  
  	//创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
  	sheet.addCell(new Label(0,0,"ExposureID"));         
        	sheet.addCell(new Label(1,0,"AssetSubType"));  
        	sheet.addCell(new Label(2,0,"OrgID"));
        	sheet.addCell(new Label(3,0,"PD"));
        	sheet.addCell(new Label(4,0,"LGDLevel"));

	for(int i = 1;i<=list.size();i++){
		sheet.addCell(new Label(0,i,list.get(i-1).getExposureID()));         
            	sheet.addCell(new Label(1,i,list.get(i-1).getAssetSubType()));  
            	sheet.addCell(new Label(2,i,list.get(i-1).getOrgID()));
            	sheet.addCell(new Label(3,i,list.get(i-1).getPD()));
            	sheet.addCell(new Label(4,i,list.get(i-1).getLGDLevel()));
	}
	//把创建的内容写入到输出流中,并关闭输出流
	  wwb.write();
	  wwb.close();
}

这个是路径写死的,没有个浏览器的下载相关联,需要看和浏览器下载相关联并且可以选择路径的朋友可以去上篇看看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值