<a href="<%=request.getContextPath()%>/OUTputToExcel?id=${id}">导出到Excel </a>
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8")
String papid = request.getParameter("id")
StudentExportService ses = new StudentExportService()
List<Student> mang=findScore(papid)
HSSFWorkbook wb = ses.export(mang)
response.setContentType("application/vnd.ms-excel")
response.setHeader("Content-disposition",
"attachment;filename=studentScore.xls")
OutputStream ouputStream = response.getOutputStream()
wb.write(ouputStream)
ouputStream.flush()
ouputStream.close()
}
public class StudentExportService {
String[] excelHeader = { "学号", "姓名", "成绩" }
public HSSFWorkbook export(List list) {
HSSFWorkbook wb = new HSSFWorkbook()
HSSFSheet sheet = wb.createSheet("Campaign")
HSSFRow row = sheet.createRow((int) 0)
HSSFCellStyle style = wb.createCellStyle()
style.setAlignment(HSSFCellStyle.ALIGN_CENTER)
for (int i = 0
HSSFCell cell = row.createCell(i)
cell.setCellValue(excelHeader[i])
cell.setCellStyle(style)
sheet.autoSizeColumn(i)
}
for (int i = 0
row = sheet.createRow(i + 1)
Student student = (Student) list.get(i)
row.createCell(0).setCellValue(student.getStunum())
row.createCell(1).setCellValue(student.getName())
row.createCell(2).setCellValue(student.getScore())
}
return wb
}
}
private List<Student> findScore(String enclass) {
Connection conn = null
PreparedStatement ps = null
ResultSet rs = null
List<Student> stu=new ArrayList<Student>()
try {
conn = JdbcUtils.getConnection()
String sql = "select * from scoreview where papid=?"
ps = conn.prepareStatement(sql)
ps.setString(1,enclass)
rs = ps.executeQuery()
while (rs.next()) {
Student p = new Student()
p.setStunum(rs.getString("stunum"))
p.setName(rs.getString("name"))
p.setScore(rs.getString("score"))
stu.add(p)
}
} catch (SQLException e) {
e.printStackTrace()
} finally {
JdbcUtils.close(rs, ps, conn)
}
return stu
}