public ActionForward getSchedulerData(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception{
ServletOutputStream out=response.getOutputStream();
String schedulerid = request.getParameter("schedulerid");
response.reset();
response.setContentType("application/vnd.ms-excel;charset=GBK");
//application/vnd.ms-Excel;charset=GBK 表示excel文件类型
//application/vnd.pdf;charset=GBK 表示pdf文件类型
//application/msword;charset=GBK
//setHeader设置打开方式,具体为:inline为在浏览器中打开,attachment单独打开
// response.setHeader("Content-disposition",
// "inline;filename=\"" + schedulerid+ ".xls\";");
byte[] buf=new byte[4096];
try {
Blob blob = caManager.getSchedulerData(schedulerid);
InputStream in = blob.getBinaryStream();
while (in.read(buf) != -1) {
out.write(buf);
}
} catch (Exception e) {
log.error(e);
e.printStackTrace();
}
out.flush();
out.close();
return null;
}
----------------------------
public Blob getSchedulerData(String schedulerID) throws Exception {
String SQL = "select filedata from schedulerfile where schedulerid='"
+ schedulerID + "'";
System.out.println(SQL);
List list = bsnsDao.findBySQLForBlob(SQL);
Blob blob = null;
if(list != null && list.size()>0) {
blob = (Blob) list.get(0);
}
return blob;
}
------------list-------------
rs = stmt.executeQuery(sql);
if(rs.next()){
java.sql.Blob value = rs.getBlob("filedata");
list.add(value);
}