<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Rising Sun

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      148 隨筆 :: 0 文章 :: 22 評論 :: 0 Trackbacks

    Class文件如下:

    import java.io.*;
    import java.sql.*;
    import java.util.Date ;
    import oracle.sql.*;
    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import org.apache.struts.upload.*;

    public class UploadAction extends Action
    {
    ? public ActionForward execute(ActionMapping mapping,
    ?????????????????????????????? ActionForm form,
    ?????????????????????????????? HttpServletRequest request,
    ?????????????????????????????? HttpServletResponse response)
    ????? throws Exception {
    ??? if (form instanceof UploadForm) {
    ????? Date date = new Date();
    ????? System.out.println("-------------File Upload Begins-------------------") ;
    ????? UploadForm theForm = (UploadForm) form;
    ????? file://通/過struts的FormFile類來獲得上傳的文件,前臺jsp頁面對應的代碼
    ????? file://</html:file property="theFile" />
    ????? FormFile file = theForm.getTheFile();
    ?????
    ????? Connection conn = null;
    ????? PreparedStatement ps = null ;

    ????? String union_Id = "" ;
    ????? String union_Version = "" ;
    ????? union_Id = theForm.getUnion_Id() ;
    ????? union_Version = theForm.getUnion_Version() ;
    ????? file://actionpart/是數據庫表中的字段名,由于表中有多個blob字段,所以用變量來表示其名稱
    ????? String actionpart = theForm.getActionpart() ;
    ????? System.out.println("actionpart is:"+actionpart) ;
    ????? file://取/得數據庫連接,dbPool的源代碼附在后面
    ????? dbPool dbp = new dbPool();
    ????? conn = dbp.getConnection() ;

    ????? ResultSet BlobDetails = null;
    ????? Statement stmt = null;

    ????? try {
    ??????? InputStream stream = null;
    ??????? FileInputStream fstream = null;
    ??????? stream = file.getInputStream();
    ??????? System.out.println("------------uploadFileSize is : "+stream.available() +"------------") ;

    ??????? conn.setAutoCommit(false);
    ??????? stmt = conn.createStatement();
    ??????? file://先/用empty_blob()來初始化該字段
    ??????? sql = " update regunion set " + actionpart + "? = empty_blob() where? union_id= " + union_Id +" and? union_Version = "+ union_Version;
    ??????? stmt.executeUpdate(sql) ;
    ??????? conn.commit() ;
    ??????? stmt.close() ;
    ??????? stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ??????? sql = "select " +actionpart + " from regunion where union_id= " + union_Id +" and? union_Version = "+ union_Version + " for? update ";
    ??????? BlobDetails = stmt.executeQuery(sql);

    ??????? if (BlobDetails.next()) {
    ????????? BLOB l_mapBlob = (BLOB)BlobDetails.getBlob(1);
    ????????? OutputStream l_blobOutputStream = ((BLOB) l_mapBlob).getBinaryOutputStream();

    ????????? byte[] l_buffer = new byte[10* 1024];

    ????????? int l_nread = 0;
    ????????? while ((l_nread=stream.read(l_buffer)) != -1) // Read from file
    ??????????? {
    ??????????? l_blobOutputStream.write(l_buffer,0,l_nread); // Write to Blob
    ??????????? }

    ????????? stream.close();
    ????????? l_blobOutputStream.close ();
    ??????? }
    ??????? BlobDetails.close();
    ??????? conn.commit() ;
    ????? }
    ????? catch (FileNotFoundException fnfe) {
    ??????? fnfe.printStackTrace() ;
    ??????? return mapping.findForward("error");
    ????? }
    ????? catch (IOException ioe) {
    ??????? ioe.printStackTrace() ;
    ??????? return mapping.findForward("error");;
    ????? }
    ????? catch(SQLException ex){
    ??????? ex.printStackTrace() ;
    ??????? return mapping.findForward("error");;
    ????? }finally{
    ??????? if(conn != null){
    ????????? try{
    ??????????? stmt.close();
    ??????????? conn.close() ;
    ????????? }catch(Exception sqle){
    ??????????? sqle.printStackTrace() ;
    ????????? }
    ??????? }
    ????? }


    ????? request.setAttribute("union_Id",union_Id) ;
    ????? request.setAttribute("union_Version",union_Version) ;
    ????? System.out.println("-------------File Upload Ends-------------------") ;
    ????? return mapping.findForward("success");
    ??? }else{
    ????? return null;
    ??? }
    ? }
    }

    附:dbPool.java程序

    package com.prient.nbsc.unifylaw;
    import java.sql.*;
    import com.prient.nbsc.common.DBPOOL;
    public class dbPool {
    ? public Connection getConnection(){
    ??? try {
    ????? Connection conn = null;
    ????? Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    ????? String bridge = "jdbc:oracle:thin:@10.6.89.2:1521:sjk";
    ????? conn = DriverManager.getConnection(bridge,"user","user") ;
    ????? return? conn;
    ??? }
    ??? catch (Exception e) {
    ????? System.out.println(e);
    ????? return null;
    ?????? }
    ? }
    }

    posted on 2006-07-13 14:39 brock 閱讀(356) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 91热成人精品国产免费| 国产成人亚洲精品91专区高清 | 亚洲人成网网址在线看| 99免费在线观看视频| 久久综合亚洲鲁鲁五月天| 久久精品中文字幕免费| 亚洲视频精品在线观看| 亚洲∧v久久久无码精品| 成人免费视频国产| 四虎影视大全免费入口| 亚洲国产天堂久久综合| 国产精品福利片免费看| 亚洲成a人片在线观看无码| 午夜不卡久久精品无码免费| 亚洲校园春色小说| 性感美女视频在线观看免费精品 | 国产三级在线免费观看| 亚洲综合精品香蕉久久网| 国产成人免费ā片在线观看老同学| 亚洲avav天堂av在线不卡| 99久久久国产精品免费无卡顿 | 亚洲AV无码乱码在线观看裸奔 | 免费无遮挡无码视频网站| 亚洲Aⅴ在线无码播放毛片一线天| 免费国产精品视频| 免费黄色电影在线观看| 夜色阁亚洲一区二区三区| 野花香高清视频在线观看免费 | 亚洲精品成人网站在线播放| 中文字幕乱码免费视频| 国产精品亚洲lv粉色| 亚洲老妈激情一区二区三区| 亚洲免费一级视频| 国产精品亚洲va在线观看| 亚洲小说区图片区另类春色| 亚洲码和欧洲码一码二码三码 | 亚洲av综合av一区二区三区| 国拍在线精品视频免费观看| MM1313亚洲精品无码久久| 亚洲国产精品福利片在线观看| 24小时日本在线www免费的|