关于Jsp页面上传图片和缩略图查看

本文介绍如何在JSP页面实现图片上传及缩略图预览功能。包括前端验证、后端处理及利用FTP服务器存储图片,并通过JSP页面展示缩略图链接到原图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于Jsp页面上传图片和缩略图查看

主要分为两部分:

第一,图片的上传,图片保存在ftp服务器里(也可以是对应的项目文件夹下需要相对应的修改)

第二,上传后,我们通过点击页面的缩略图查看原图

 

关于图片的上传操作:

1.在附件上传页面引入验证js:

<script type="text/javascript" src="../check.js"></script>//导入验证js

 然后在我们的form表单中修改属性,新增附近上传元素

<s:form name="form1" action="/instancyCase/caseInfo!saveCaseInfo.action" method="post" enctype="multipart/form-data">

      <tr>

            <td class="table_rleft">附件:</td>

           <td  colspan="3">

           <input type="file" name="fj" id="fj"/>

           <span style="font-size: 12px;color: red">

           <s:property value="error"/> </span>

        </td>

     </tr>

     <input type="submit" id="IsSubmit" class="button" name="update" value="  保存  " onmouseup="return UpCheck('fj')" />

</s:form>

以上代码可直接拷到jsp中使用,部分属性改一下就行了。

2、Action层:

附件涉及的变量:

private String error;                       //错误信息提示属性

private TblSpisCorpInstancyCaseFj ruleFj;   //自定义的附近pojo

private File fj;                               //附件对象


 

保存或者更新附件信息的方法体内填入以下代码:

if (fj != null){

    String check = CheckFile.getFileByFile(fj);                    //主要是验证附件的格式,比如:jpg .gif .png .bmp等格式

    if (check!=null&&!"".equals(check)) {

    	String tem_path = Util.FTP_FOLDER+File.separator+Util.WARD_PHOTO;

    	String xdpath = Util.FTP_FOLDER+File.separator+Util.WARD_PHOTO;



    	String file_Name = UploadFTP.copyFTP( this.getFj(),tem_path,"jpg",(sessionUser.getId()).toString());

    	ruleFj.setCorpInstancyCaseFjPath(xdpath + File.separator + (sessionUser.getId()).toString()+File.separator + file_Name );

    	ruleFj.setCorpInstancyCaseFjName(file_Name);

    	ruleFj.setCreateTime(new Timestamp(System.currentTimeMillis()));

    	ruleFj.setCorpInstancyCaseFjType("2");

   }else{

    	this.setCaseObj(caseObj);

    	error= "文件格式不对";

    	return addCaseInfo();

  }

}      

缩略图查看原图
 需要在Jsp查看附件页面新增:

<tr>

    <td class="table_rleft">附件:</td>

       <td  colspan="3">
            <s:if test=”ruleFj.corpInstancyCaseFjPath!=null”>

             <img src="<%=basePath%>/JpgShow.jsp?path=${ruleFj.corpInstancyCaseFjPath }" width="100" height="75"/>

            </s:if>

            <s:else>

               暂无附件信息

            </s:else>

        </td>

</tr>


下面是附件的相关描述

在页面对图片的后缀名做验证(具体方法实现内容见附件1 check.js

//CheckFile.getFileByFile用于判定附件的内容是否符合规定的格式,如果不是,返回添加或更新jsp页面重新上传,具体方法实现内容见附件2 CheckFile.java

// UploadFTP.copyFTP用于生成在ftp服务器上该附件唯一的文件名,具体方法实现内容见附件3UploadFTP.java

//拼凑出附件在ftp服务器中的路径子串,设置到附件对象的path属性中,这个属性要在后边的jsp查看该附件时使用

JpgShow.jspftp服务器上的图片处理成缩略图在img标签中显示,具体方法实现见附件4JpgShow.jsp

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值