項目地址:http://www.andykhan.com/jexcelapi/
下載地址:http://www.andykhan.com/jexcelapi/download.html
目前版本的信息
2.把包放到WEB-INF的lib目錄下在開發環境中引入這個包
3.開始寫代碼了,這里以一個Struts1.2的ActionMethod為例,其實只要能取了request和response對象,操作都是一樣的的。

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

代碼簡單說明:
1.設定好response的相關屬性:
response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-Disposition","attachment; filename=\"" + Common.getFileName()+".xls" + "\"");
2.取到response的OutputStream實例,并用這個實例化一個WritableWorkbook對象
OutputStream os = response.getOutputStream();
WritableWorkbook wwb = Workbook.createWorkbook(os);
3.新建一個表
WritableSheet wsheet = wwb.createSheet("members_"+(t+1),t);
4.往表里加行頭
Label label = new Label(0,0,"");
wsheet.addCell(label);
label = new Label(0,0,"會員姓名");
wsheet.addCell(label);
label = new Label(1,0,"卡號");
wsheet.addCell(label);
label = new Label(2,0,"聯系地址");
wsheet.addCell(label);
label = new Label(3,0,"郵編");
wsheet.addCell(label);
label = new Label(4,0,"聯系電話");
wsheet.addCell(label);
label = new Label(5,0,"手機");
wsheet.addCell(label);
label = new Label(6,0,"Email");
wsheet.addCell(label);
label = new Label(7,0,"性別");
wsheet.addCell(label);
5.往表里加數據行
for(int i = 0; i < rs.length(); i++){
Row rw = rs.get(i+base);
//System.out.println((i+1));
label = new Label(0,(i+1),(String)rw.get("user_name") );
wsheet.addCell(label);
label = new Label(1,(i+1),(String)rw.get("card_id"));
wsheet.addCell(label);
label = new Label(2,(i+1),(String)rw.get("user_address"));
wsheet.addCell(label);
label = new Label(3,(i+1),(String)rw.get("postalcode"));
wsheet.addCell(label);
label = new Label(4,(i+1),(String)rw.get("tel_day"));
wsheet.addCell(label);
label = new Label(5,(i+1),(String)rw.get("mobile"));
wsheet.addCell(label);
label = new Label(6,(i+1),(String)rw.get("email"));
wsheet.addCell(label);
label = new Label(7,(i+1),(String)rw.get("user_sex"));
wsheet.addCell(label);
}
6.把生成的excel數據輸出到response的OutputStream
wwb.write();
wwb.close();
os.close();
response.flushBuffer();
7.完成
有什么疑問可以留言,我會盡量幫助。