隨筆-295  評(píng)論-26  文章-1  trackbacks-0

          /*
          ?* ViewUploadFile.java
          ?*
          ?* Created on 2006年2月4日, 上午1:29
          ?*/

          package path.system.manager;

          import java.io.*;
          import java.net.*;
          import java.util.*;

          import javax.servlet.*;
          import javax.servlet.http.*;
          import org.hibernate.Session;
          import system.entity.CRM_UploadFile;
          import.FileStorageService;

          public class ViewUploadFile extends HttpServlet {
          ??? private FileInputStream isFile = null;
          ???
          ??? /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
          ???? * @param request servlet request
          ???? * @param response servlet response
          ???? */
          ??? protected void processRequest(HttpServletRequest request, HttpServletResponse response)
          ??? throws ServletException, IOException {

          ??????? String szCoObject=request.getParameter("CoObject");
          ??????? String szID=request.getParameter("ID");
          ??????? String szMode = request.getParameter("Mode");
          ???????
          ??????? //清空緩沖
          ??????? response.reset();
          ???????
          ??????? OutputStream osOut = response.getOutputStream();
          ???????
          ??????? if(szID == null || szID.equals("") || szID.equals("0"))
          ??????? {??
          ??????????? byte[] cFileData = this.getNoDate (szCoObject);
          ???????????
          ??????????? this.isFile.read(cFileData);
          ??????????? osOut.write(cFileData);
          ??????? }
          ??????? else
          ??????? {
          ??????????? Session ssSession = HibernateUtil.getSession();
          ??????????? CRM_UploadFile csUpload;

          ??????????? csUpload = (CRM_UploadFile)ssSession.load(CRM_UploadFile.class,Integer.valueOf(szID));

          ??????????? String szFileName =csUpload.getFileName();
          ??????????? if (szFileName==null) szFileName = "";
          ??????????? String szRightName = new String( szFileName.getBytes(), "ISO8859_1" );????? //中文文件名處理
          ??????????? String szFileSize = csUpload.getFileSize().toString();
          ??????????? String urlFileName = csUpload.getUrlFileName();
          ///輸出到網(wǎng)頁
          ??????????? if ("0".equals(szFileSize)) {
          ??????????????? byte[] cFileData = this.getNoDate(szCoObject);
          ??????????????? this.isFile.read(cFileData);
          ??????????????? osOut.write(cFileData);
          ??????????? } else {
          ??????????????? if(szMode.equals("Download")) {
          ??????????????????????? response.setContentType("application/x-msdownload;");?????????? //下載類型
          ??????????????????????? response.setHeader("Content-Disposition","attachment; filename=" + szRightName);
          ??????????????? } else {
          ??????????????????????? response.setContentType(csUpload.getContentType());
          ??????????????????????? response.setHeader("Content-Disposition","filename=" + szRightName);
          ??????????????? }
          ??????????????? response.setHeader("content-length", szFileSize);
          ??????????????? //java.sql.Blob blob = csUpload.getBinaryData();
          ??????????????? File file = new File(FileStorageService.getRootPath() + urlFileName);
          ??????????????? if (!file.exists())
          ??????????????????? return;
          ???????????????
          ??????????????? InputStream bis = new BufferedInputStream(new FileInputStream(file));
          ??????????????? byte[] buffer = new byte[2048];
          ??????????????? for (int i = bis.read(buffer); i > 0; i = bis.read(buffer))
          ??????????????????? osOut.write(buffer, 0, i);
          ??????????????? bis.close();
          ???????????????????
          ??????????? }
          ??????? }
          ???????
          ??????? //防止超時(shí)
          ??????? //response.setStatus( response.SC_OK );
          ??????? response.flushBuffer();
          ??? }
          ???
          ??? private byte[] getNoDate (String szCoObject) throws IOException{
          ??????? String szFileName="";
          ??????? if(szCoObject.equals("Employee"))
          ??????????? szFileName = getServletContext().getRealPath("/images/Employee/NoPhoto.gif");
          ??????? else
          ??????????? szFileName = getServletContext().getRealPath("/images/Commodity/NoPhoto.gif");
          ??????? this.isFile= new FileInputStream(szFileName);

          ??????? int nSize = this.isFile.available();
          ??????? byte[] cFileData = new byte[nSize];
          ??????? return cFileData;
          ??? }
          ??? // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
          ??? /** Handles the HTTP <code>GET</code> method.
          ???? * @param request servlet request
          ???? * @param response servlet response
          ???? */
          ??? protected void doGet(HttpServletRequest request, HttpServletResponse response)
          ??? throws ServletException, IOException {
          ??????? processRequest(request, response);
          ??? }
          ???
          ??? /** Handles the HTTP <code>POST</code> method.
          ???? * @param request servlet request
          ???? * @param response servlet response
          ???? */
          ??? protected void doPost(HttpServletRequest request, HttpServletResponse response)
          ??? throws ServletException, IOException {
          ??????? processRequest(request, response);
          ??? }
          ???
          ??? /** Returns a short description of the servlet.
          ???? */
          ??? public String getServletInfo() {
          ??????? return "Short description";
          ??? }
          ??? // </editor-fold>
          }



          大盤預(yù)測(cè) 國富論
          posted on 2007-08-21 13:24 華夢(mèng)行 閱讀(110) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 青阳县| 长垣县| 临洮县| 黄大仙区| 平阳县| 关岭| 利川市| 宁陕县| 阳高县| 延寿县| 会同县| 雷山县| 水富县| 贵阳市| 尉犁县| 敦煌市| 本溪| 金沙县| 绵竹市| 长垣县| 肇东市| 七台河市| 突泉县| 平塘县| 万宁市| 松溪县| 西贡区| 应城市| 达拉特旗| 盐池县| 社旗县| 秦安县| 上虞市| 兴业县| 客服| 宣城市| 福鼎市| 鄄城县| 崇左市| 石阡县| 扶风县|