国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Struts2實現(xiàn)文件上傳圖片,并顯示

Struts2實現(xiàn)文件上傳,并顯示。

第一、實現(xiàn)JSP

<%@ page contentType="text/html; charset=GBK" language="java" %>
<%@ include file="../../../inc/taglibs.jsp"%>
<userCountyGrade:check/>
<html><meta http-equiv="Content-Type" content="text/html; charset=GBK">
<link href="admin/myweb.css" rel="stylesheet" type="text/css">
<title>${html_title}</title>
<head>
<style type="text/css">
<!--
body {
background-image: url(admin/main_bg.gif);
}
-->
</style>

</head>
<body>
<br>
<table width="99%" cellpadding="0" cellspacing="0" border="0" align="center">
<s:form validate="true" action="userInfoCounty_addStakeout" enctype="multipart/form-data" method="post">
<tr>
       <td>
    <table width="82" height="28" border="0" cellpadding="0" cellspacing="0" background="admin/main_menu_bg.gif">
           <tr>
             <td valign="bottom"><div align="center" class="xiaoyu_font">監(jiān)測點位注冊</div></td>
           </tr>
        </table>
   </td>
</tr>
</table>
<table width="99%" cellpadding="3" cellspacing="1" border="0" align="center" class="main_table">
<tr>
    <td colspan="3" align="center" class="main_topbg" ></td>
</tr>
<tr>
   <td colspan="3" align="left" class="myweb_td" >
      <div class="xiaoyu_font_fielderror"><s:fielderror/></div>
</td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點編號:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
    <s:textfield name="localityCode" size="15" maxlength="10"/>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點名稱:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
    <s:textfield name="rqName" size="15" maxlength="10"/>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點類型:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
   <s:select list="#application['app_9JCDLX']" name="rqFlag" listKey="btSmallClassId" listValue="btSmallClassName" ></s:select>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測類型:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
   <s:select list="#application['app_4JCLX']" name="rqType" listKey="btSmallClassId" listValue="btSmallClassName" ></s:select>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點經(jīng)度:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
    <s:textfield name="rqLongitude" size="15" maxlength="10"/>°
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點緯度:<FONT color="red">*</FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
    <s:textfield name="rqLatitude" size="15" maxlength="10"/>°
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點照片:<FONT color="red"></FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
<s:file name="upload" size="15" ></s:file>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點描述:<FONT color="red"></FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
    <s:textarea name="rqDescription" rows="5" cols="30" onkeyup="if(this.value.length > 400) this.value=this.value.substr(0,400)" ></s:textarea>
    </td>
    <td class="myweb_td" width="771"></td>
</tr>
<tr>
    <td colspan="3" class="myweb_td" align="center">
      <input name="submit" type="submit" value="提交信息" />
      <input name="submit" type="button" value="返   回" onclick="window.open('index.action?action=/manager/county_user/stakeout_dot_manage/stakeout_manage','main')" />
    </td>
</tr>
</s:form>
</table>
</body>
</html>

第二、Action具體實現(xiàn)

     Action內(nèi)添加如下字段。
   private File upload;
    private String uploadContentType;
    private String uploadFileName;

//接受依賴注入的屬性
    private String savePath;
//接受依賴注入的方法
    public void setSavePath(String value){
        this.savePath = value;
    }

// private String getSavePath() throws Exception {
// return ServletActionContext.getRequest().getRealPath(savePath);
// }
public void setUpload(File upload) {
   this.upload = upload;
}
public void setUploadContentType(String uploadContentType) {
   this.uploadContentType = uploadContentType;
}
public void setUploadFileName(String uploadFileName) {
   this.uploadFileName = uploadFileName;
}
public File getUpload() {
   return (this.upload);
}
public String getUploadContentType() {
   return (this.uploadContentType);
}
public String getUploadFileName() {
   return (this.uploadFileName);
}

將流存入數(shù)據(jù)庫
    BeanUtils.populate(uis, BeanUtils.describe(userinfo));
    uis.setRqDate(new java.util.Date());
  
//    System.out.println("sdfdsfdsfdsfs:"+uis.getRqImage().toString());
//    System.out.println("sdfdsfdsfdsfs:"+userinfo.getUpload());
   
    if(userinfo.getUpload()!=null){
     //設(shè)置圖片
     FileInputStream fis = new FileInputStream(userinfo.getUpload());
     byte[] buffer = new byte[fis.available()];
     fis.read(buffer);
     uis.setRqImage(buffer);
//    byte[] s =uis.getRqImage();
//    for(int i=0; i<s.length; i++){
//     System.out.print(s[i]);
//    }
    }
    if(userinfo.getRadializationQualityService().save(uis)!=null){
     userinfo.setInfoStr("監(jiān)測點注冊成功!","index.action?action=/manager/county_user/stakeout_dot_manage/stakeout_manage");
     return "succeed";
    }else{
     userinfo.setInfoStr("監(jiān)測點注冊失敗","index.action?action=/manager/county_user/stakeout_dot_manage/stakeout_manage");
     return "error";
    }

 

第三、從數(shù)據(jù)庫中讀出圖片

public String showStakeout(StakeoutAction userinfo){
   System.out.println("UserInfoCounty showStakeout");
   try{
  
   AbstractRadializationQuality ui = userinfo.getRadializationQualityService().findById(userinfo.getId());
   if(ui==null){
    userinfo.setInfoStr("沒找到你選擇監(jiān)測點!","userInfoCounty_searchStakeout.action");
    return "error";
   }
  
   //BeanUtils.populate(userinfo, BeanUtils.describe(ui));
   BeanUtils.copyProperties(userinfo,ui);
   userinfo.setRqDate(ui.getRqDate());
//這里將圖片流存入Session
userinfo.getSession().put("SES_StakeoutImage", userinfo.getRqImage());
  
   //設(shè)置顯示 用戶信息
   AbstractUserInfo au = (AbstractUserInfo)userinfo.getUserInfoService().findUserInfoId(ui.getRqUser());
   if(au!=null){
    userinfo.setShowUserName(au.getUiName());
    userinfo.setShowUiId(au.getUiId());
   }
  
   return "/manager/county_user/stakeout_dot_manage/stakeout_show";
  
   }catch(Exception e){
    e.printStackTrace();
    userinfo.setInfoStr("系統(tǒng)錯誤請聯(lián)系管理員!","userInfoCounty_searchStakeout.action");
    return "error";
   }
}

 

第四、Servlet從Session中讀出圖片
package com.radialization.servlet;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class StakeoutImage extends HttpServlet {
private static final long serialVersionUID = -7862035188698463539L;
public void init(ServletConfig conf) throws ServletException {
   super.init(conf);
}
public void doGet(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException {
   byte[] image = (byte[])req.getSession().getAttribute("SES_StakeoutImage");
     java.io.OutputStream out = null;
        byte [] bytes = null;
   if(image!=null){
    java.io.ByteArrayInputStream bi = new java.io.ByteArrayInputStream(image);
   
            //二進制輸出流
    res.setContentType( "multipart/form-data" );
            //得到輸出流
            out = res.getOutputStream();
           
            //從輸入流讀取數(shù)據(jù)到輸出流
            bytes = new byte [ 1024 ];
            while ( -1 != bi.read( bytes ) ) {
                 out.write( bytes );
            }
            //強制刷新輸出流
            out.flush();
   }
}
public void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException {
   doGet(req, res);
}
}

第五、JSP頁面中圖片上的SRC訪問Servlet
<tr >
    <td width="162" class="myweb_td" >監(jiān)測點照片:<FONT color="red"></FONT></td>
    <td width="295" class="myweb_td" onMouseOver="this.style.backgroundColor='#ffffff'" onMouseOut="this.style.backgroundColor=''">
   <img alt="" src="stakeoutImage">
    </td>
    <td class="myweb_td" width="771"></td>
</tr>

第六、Struts.xml配置
     <action name="*_addStakeout" class="com.radialization.struts.action.StakeoutAction" method="addStakeout">
<!-- 圖片大小與圖片類型過濾 -->
            <interceptor-ref name="fileUpload">
                <param name="allowedTypes">image/bmp,image/x-png,image/gif,image/pjpeg</param>
                <param name="maximumSize">300000</param>
            </interceptor-ref>
            <interceptor-ref name="defaultStack"/>           
        <result name="input">/${inputAddStakeout}.jsp</result>
     </action>

以上文章為原創(chuàng),轉(zhuǎn)載時就表示轉(zhuǎn)載處。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
1分鐘學(xué)會自己制作簡單的博客邊框,
【素材】動態(tài)背景
纖月凝傷【音畫分享】好友一粟JIN貼贈梅竹
table的border
文章標題上插圖片-02
表格滾動代碼
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服