Java把表导出成Excel的代码
如果通过JavaBean导出Excel文件?看了这个小例子,相信你一定就明白了,虽然这个小例子写的不是太好,但是我相信只要你认识思考着看,那你一定能收获到你想要的
导成Excel的类

Code
1
import java.io.OutputStream;
2
import java.util.List;
3
4
import com.hhwl.liubei.javabean.client_javabean;
5
import jxl.Workbook;
6
import jxl.format.UnderlineStyle;
7
import jxl.write.WritableFont;
8
9
public class Excel
{
10
public static void writeExcel(OutputStream os,List listExcel) throws Exception
{
11
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(os);
12
jxl.write.WritableSheet ws = wwb.createSheet("TestSheet1", 0);
13
jxl.write.Label labelC = new jxl.write.Label(0, 1, "客户分类");
14
ws.addCell(labelC);
15
labelC = new jxl.write.Label(1, 1, "是否重要");
16
ws.addCell(labelC);
17
labelC = new jxl.write.Label(2, 1, "客户类型");
18
ws.addCell(labelC);
19
labelC = new jxl.write.Label(3, 1, "客户名称");
20
ws.addCell(labelC);
21
labelC = new jxl.write.Label(4, 1, "联系日期");
22
ws.addCell(labelC);
23
labelC = new jxl.write.Label(5, 1, "联系人");
24
ws.addCell(labelC);
25
labelC = new jxl.write.Label(6, 1, "联系电话");
26
ws.addCell(labelC);
27
labelC = new jxl.write.Label(7, 1, "职务");
28
ws.addCell(labelC);
29
labelC = new jxl.write.Label(8, 1, "email");
30
ws.addCell(labelC);
31
labelC = new jxl.write.Label(9, 1, "添加人员");
32
ws.addCell(labelC);
33
for(int i=0;i<listExcel.size();i++)
{
34
client_javabean visiter=(client_javabean)listExcel.get(i);
35
labelC = new jxl.write.Label(0, i+2, String.valueOf(visiter.getCid()));
36
ws.addCell(labelC);
37
labelC = new jxl.write.Label(1, i+2, String.valueOf(visiter.getIsimportant()));
38
ws.addCell(labelC);
39
labelC = new jxl.write.Label(2, i+2,visiter.getCtype().toString() );
40
ws.addCell(labelC);
41
labelC = new jxl.write.Label(3, i+2, visiter.getCname());
42
ws.addCell(labelC);
43
labelC = new jxl.write.Label(4, i+2, visiter.getContact_date().toString());
44
ws.addCell(labelC);
45
labelC = new jxl.write.Label(5, i+2, visiter.getContact_people());
46
ws.addCell(labelC);
47
labelC = new jxl.write.Label(6, i+2, visiter.getContact_phone());
48
ws.addCell(labelC);
49
labelC = new jxl.write.Label(7, i+2, visiter.getCposition());
50
ws.addCell(labelC);
51
labelC = new jxl.write.Label(8, i+2, visiter.getCemail());
52
ws.addCell(labelC);
53
labelC = new jxl.write.Label(9, i+2, visiter.getInputpeople());
54
ws.addCell(labelC);
55
}
56
//
57
jxl.write.WritableFont wfc = new jxl.write.WritableFont(
58
WritableFont.ARIAL, 20, WritableFont.BOLD, false,
59
UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.GREEN);
60
jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(
61
wfc);
62
// wcfFC.setBackground(jxl.format.Colour.RED);
63
labelC = new jxl.write.Label(3, 0, "客户信息表", wcfFC);
64
ws.addCell(labelC);
65
//写入Exel工作表
66
wwb.write();
67
//关闭Excel工作薄对象
68
wwb.close();
69
}
70
}
调用上面类的Action方法

Code
// 导出Excel
public ActionForward getExcel(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
List clients=(List)request.getSession().getAttribute("clients");
Excel ex=new Excel();
File f = new File("d:\\clientManage.xls");
try {
f.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
if (clients == null) {
clients = new ArrayList();
} else {
client_javabean ab = new client_javabean();
try {
ex.writeExcel(new FileOutputStream(f), clients);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
return mapping.findForward("get");
}
1
import java.io.OutputStream;2
import java.util.List;3

4
import com.hhwl.liubei.javabean.client_javabean;5
import jxl.Workbook;6
import jxl.format.UnderlineStyle;7
import jxl.write.WritableFont;8

9

public class Excel
{10

public static void writeExcel(OutputStream os,List listExcel) throws Exception
{11
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(os);12
jxl.write.WritableSheet ws = wwb.createSheet("TestSheet1", 0);13
jxl.write.Label labelC = new jxl.write.Label(0, 1, "客户分类");14
ws.addCell(labelC);15
labelC = new jxl.write.Label(1, 1, "是否重要");16
ws.addCell(labelC);17
labelC = new jxl.write.Label(2, 1, "客户类型");18
ws.addCell(labelC);19
labelC = new jxl.write.Label(3, 1, "客户名称");20
ws.addCell(labelC);21
labelC = new jxl.write.Label(4, 1, "联系日期");22
ws.addCell(labelC);23
labelC = new jxl.write.Label(5, 1, "联系人");24
ws.addCell(labelC);25
labelC = new jxl.write.Label(6, 1, "联系电话");26
ws.addCell(labelC);27
labelC = new jxl.write.Label(7, 1, "职务");28
ws.addCell(labelC);29
labelC = new jxl.write.Label(8, 1, "email");30
ws.addCell(labelC);31
labelC = new jxl.write.Label(9, 1, "添加人员");32
ws.addCell(labelC);33

for(int i=0;i<listExcel.size();i++)
{34
client_javabean visiter=(client_javabean)listExcel.get(i);35
labelC = new jxl.write.Label(0, i+2, String.valueOf(visiter.getCid()));36
ws.addCell(labelC);37
labelC = new jxl.write.Label(1, i+2, String.valueOf(visiter.getIsimportant()));38
ws.addCell(labelC);39
labelC = new jxl.write.Label(2, i+2,visiter.getCtype().toString() );40
ws.addCell(labelC);41
labelC = new jxl.write.Label(3, i+2, visiter.getCname());42
ws.addCell(labelC);43
labelC = new jxl.write.Label(4, i+2, visiter.getContact_date().toString());44
ws.addCell(labelC);45
labelC = new jxl.write.Label(5, i+2, visiter.getContact_people());46
ws.addCell(labelC);47
labelC = new jxl.write.Label(6, i+2, visiter.getContact_phone());48
ws.addCell(labelC);49
labelC = new jxl.write.Label(7, i+2, visiter.getCposition());50
ws.addCell(labelC);51
labelC = new jxl.write.Label(8, i+2, visiter.getCemail());52
ws.addCell(labelC);53
labelC = new jxl.write.Label(9, i+2, visiter.getInputpeople());54
ws.addCell(labelC);55
}56
// 57
jxl.write.WritableFont wfc = new jxl.write.WritableFont(58
WritableFont.ARIAL, 20, WritableFont.BOLD, false,59
UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.GREEN);60
jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(61
wfc);62
// wcfFC.setBackground(jxl.format.Colour.RED);63
labelC = new jxl.write.Label(3, 0, "客户信息表", wcfFC);64
ws.addCell(labelC);65
//写入Exel工作表66
wwb.write();67
//关闭Excel工作薄对象68
wwb.close();69
}70
}调用上面类的Action方法
// 导出Excel
public ActionForward getExcel(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
List clients=(List)request.getSession().getAttribute("clients");
Excel ex=new Excel();
File f = new File("d:\\clientManage.xls");
try {
f.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
if (clients == null) {
clients = new ArrayList();
} else {
client_javabean ab = new client_javabean();
try {
ex.writeExcel(new FileOutputStream(f), clients);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
return mapping.findForward("get");
}
浙公网安备 33010602011771号