设为首页 收藏本站
查看: 971|回复: 0

[经验分享] 页面中显示ftp中的图片

[复制链接]

尚未签到

发表于 2016-6-9 07:40:23 | 显示全部楼层 |阅读模式
/** * <p>项目名称: 上汽inkanet项目</p> * <p>厂商: 东软集团股份有限公司</p> * <p>部门: avnc&amp;is事业部国内业务一部</p> * <p>版权: copyright (c) 2011</p> */package com.sais.inkanet.common.displayimage;import com.opensymphony.xwork2.actionsupport;import com.sais.inkanet.base.util.ftpimagedisplay;import com.sais.inkanet.base.util.propertiesutil;import org.apache.log4j.logger;import org.apache.struts2.servletactioncontext;import javax.servlet.http.httpservletresponse;/** * <p>类名称: [图片显示action]</p> * <p>类描述: [根据提供的路径到ftp中以流的方式获得图片]</p> * <p>所属模块: 上汽inkanet项目_[模块名称]</p> * <p>创建时间 7/14/11 12:56 pm </p>  * @author zouqiang zouqiang@neusoft.com * @version 1.0*/public class displayimageaction extends actionsupport {private static final long serialversionuid = 1l;private static final logger log = logger.getlogger(displayimageaction.class);    /**     * <p>属性描述: [要访问的图片url]</p>     */    private string imageurl;    /**     * <p>属性描述: [ftp ip地址]</p>     */    private string ip = propertiesutil.getsetting("ftp.ip", "");    /**     * <p>属性描述: [ftp密码]</p>     */    private string password = propertiesutil.getsetting("ftp.password", "");    //---------ftp---------    /**     * <p>属性描述: [用户名]</p>     */    private string username = propertiesutil.getsetting("ftp.username", "");    /**     * <p>方法描述: [获得ftp中的图片用于页面显示]</p>    *    * @return 返回结果的说明    *    * @throws exception 抛出异常的原因    */    @override    public string execute() throws exception {    log.info("-->获得ftp图片,imageurl:"+imageurl);        /**                1.+ 表示空格(在 url 中不能使用        空格)    %20                2./ 分隔目录和子目录                                         %2f                3.? 分隔实际的 url 和参数                                %3f                4.% 指定特殊字符                                              %25                5.# 表示书签                                                     %23                6.&amp; url 中指定的参数间的分隔符                       %26                7.@     %40         */    imageurl = imageurl.contains("\\") ? imageurl.replace("\\", "%2f") : imageurl;        imageurl = imageurl.contains("/") ? imageurl.replace("/", "%2f") : imageurl;        password = password.contains("@")?password.replace("@", "%40"):password;        httpservletresponse response = servletactioncontext.getresponse();        ftpimagedisplay.getftpimage(username, password, ip, imageurl, response);        return none;    }    public string getimageurl() {        return imageurl;    }    public void setimageurl(string imageurl) {        this.imageurl = imageurl;    }} /** * <p>项目名称: 上汽inkanet项目</p> * <p>厂商: 东软集团股份有限公司</p> * <p>部门: avnc&amp;is事业部国内业务一部</p> * <p>版权: copyright (c) 2011</p> */package com.sais.inkanet.base.util;import org.apache.log4j.logger;import java.io.ioexception;import java.io.inputstream;import java.io.outputstream;import java.net.url;import java.net.urlconnection;import javax.servlet.http.httpservletresponse;/** * <p>项目名称: 上汽inkanet项目</p> * <p>厂商: 东软集团股份有限公司</p> * <p>部门: avnc&amp;is事业部国内业务一部</p> * <p>版权: copyright (c) 2011</p> *//** * <p>类名称: [获得ftp图片]</p> * <p>类描述: [获得ftp中的图片]</p> * <p>所属模块: 上汽inkanet项目</p> * <p>创建时间 7/14/11 10:45 am </p> * @author zouqiang zouqiang@neusoft.com * @version 1.0*/public class ftpimagedisplay {    /**     * <p>属性描述: [声明日志]</p>     */    private static final logger log = logger.getlogger(ftpimagedisplay.class);    /**     * <p>方法描述: [从ftp中获得图片流返给页面]</p>    *    * @param username 用户名    * @param password 密码    * @param ftpurl  ftp的url    * @param fileurl 文件路径    * @param response response对象    */    public static void getftpimage(string username, string password, string ftpurl, string fileurl,                                   httpservletresponse response) {        inputstream isr = null;        outputstream out = null;        url u  = null;        try {            if ((fileurl != null) &amp;&amp; !"".equals(fileurl)) {                response.setheader("content-type", "image/png"); //response.setcontenttype("image/*"); // 设置返回的文件类型                 out = response.getoutputstream();                stringbuffer sb = new stringbuffer("ftp://");                sb.append(username + ":");                sb.append(password + "@");                sb.append(ftpurl + "/" + fileurl);                u = new url(sb.tostring());                urlconnection urlconn = u.openconnection();                isr = urlconn.getinputstream();                int len = urlconn.getcontentlength();                int i = len;                int c;                while (((c = isr.read()) != -1) &amp;&amp; (--i > 0)) {                    out.write(c);                }                log.info("获取ftp图片" + fileurl);            } else {                log.warn("所要显示的图片路径为空");            }        } catch (exception e) {        log.error(e.getmessage());        } finally {            try {                            if (isr != null) {                    isr.close();                }                if (out != null) {                    out.close();                }            } catch (ioexception e) {            log.error(e.getmessage());            }        }    }} 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-227996-1-1.html 上篇帖子: 如何配置FTP服务器(续1) 下篇帖子: 从本地上传文件到FTP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表