对于wap页面下载软件记录下
URL要带文件名,否则手机不支持
例如:http://localhost:8080/client/test.CAB
symbian手机对于IP:8080/方式貌似不支持,需要http://域名:端口/client/test.CAB

下载方式可以有2种:
1)wap标签连接
<wall:a href="<%=filePath%>">download</wall:a>
2)servlet write文件流返回(字节流)
配置一个DownLoadServlet
web.xml:
<servlet>
<servlet-name>downLoadClientServlet</servlet-name>
<servlet-class>com.test.DownLoadServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>downLoadClientServlet</servlet-name>
<url-pattern>/client/*</url-pattern>
</servlet-mapping>
DownLoadServlet:

public class DownLoadServlet extends HttpServlet {    private GeneralLogger logger = LoggerFactory.getLogger(DownLoadServlet.class);

    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doPost(request, response);    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {

        logger.debug("------------------------------------------------------------------------------------");

        try {                              String filePath = "d:/mytest/client/test.CAB";

                logger.debug("filePath = " + filePath);

                sendReply(filePath, response);

        } catch (Exception e) {            logger.error("error :" + e.toString());        }        logger.debug("------------------------------------------------------------------------------------");    }

    public void sendReply(String filePath, HttpServletResponse response) {               File file = new File(filePath);        if (file.exists()) {            String fileName = file.getName();            response.setContentType("application/x-download");//设置为下载application/x-download

            response.addHeader("Content-Disposition", "attachment;filename=" + fileName);

            OutputStream output = null;            FileInputStream fis = null;            try {                output = response.getOutputStream();                fis = new FileInputStream(filePath);

                byte[] b = new byte[1024];                int i = 0;

                while ((i = fis.read(b)) != -1) {                    output.write(b, 0, i);                }                output.flush();                b = null;            }            catch (Exception e) {                logger.error("error :" + e.toString());            }            finally {                if (fis != null) {                    try {                        fis.close();                    } catch (IOException e) {                        //e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.                    }                    fis = null;                }                if (output != null) {                    try {                        output.close();                    } catch (IOException e) {                        //e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.                    }                    output = null;                }            }        }    }

}

顺便说下,第一种方式软件要放在web文件夹或子文件夹下,否则tomcat等容器是不允许访问的
第二种方式就比较灵活些,对于手机客户端软件升级,后台连接,可采用第二种方式。

wap 软件下载实现相关推荐

  1. (PC+WAP)网络APP软件下载类pbootcms网站模板 APP应用软件官网网站源码下载

    商品介绍 (PC+WAP)网络APP软件下载类pbootcms网站模板 APP应用软件官网网站源码下载PbootCMS内核开发的网站模板,该模板适用于 APP网站.APP软件官网 等企业,当然其他行 ...

  2. 6大绿色软件下载网站,跟捆绑软件和病毒说拜拜!

    随着移动互联网的普及,很多人家中的电脑应该很长时间没有开机了吧?无论是Android系统,iOS系统还是计算机的Windows系统.不过这只是我们使用的一个平台,如果我们要实现更多功能,则需要安装一些 ...

  3. 和12岁小同志搞创客开发:手撕代码,Arduino IDE 软件下载和环境搭建

    目录 1.软件下载 2. 软件安装 3.环境搭建和使用 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_3810 ...

  4. 苹果企业证书_今日更新:丨企业证书已更新丨苹果丨安卓软件下载说明丨

    今日更新 苹果软件下载说明 企业证书☆已更新 苹果☆安卓软件☆规整说明 为了方便大家下载的时候不那么麻烦,我把所以的软件都归类到了一起,大家只要 回复关键词→111即可获得苹果软件列表 回复关键词→2 ...

  5. linux 下的图片处理软件下载,美图秀秀Linux版

    美图秀秀linux版是一款图片处理软件,可以帮助用户对图片进行美化处理,支持批量处理图片,能够方便用户直接在Linux系统上修改图像,有需要可以下载. 美图秀秀linux版是一款图片处理软件,可以帮助 ...

  6. linux下常用软件下载

    linux下常用软件下载: wget http://admin.ooopic.com/soft/linux/APC-3.1.2.tgz wget http://admin.ooopic.com/sof ...

  7. 九维 Addon for SBO 功能说明及新版软件下载

    作者:九维软件工作室  [email]waysoft2@gmail.com[/email]       Juway Addon for SBO 是 SAP Business One 的附加功能插件(增 ...

  8. 【五线谱】Sibelius 7.5.1 打谱软件安装 ( 软件下载 | 软件安装 )

    文章目录 一.下载 Sibelius 软件 二.安装 Sibelius 软件 一.下载 Sibelius 软件 下载后的 西贝柳斯 Sibelius 软件如下 : 二.安装 Sibelius 软件 执 ...

  9. [download]-软件下载地址-百度网盘

    软件下载 arm gcc交叉工具链的下载地址: 密码都是:1234 gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz gcc-arm-8.3-20 ...

最新文章

  1. 【译】Monolith first —— Martin Fowler 对于微服务架构的看法
  2. 中国电子学会青少年编程能力等级测试图形化四级编程题:抽奖
  3. 三十八、页面分配策略
  4. SpringMvc CharacterEncodingFilter 解析 encoding 参数并初始化参数
  5. sublime text 3设置快捷键让html文件在浏览器打开
  6. LIN总线接口静电保护专用器件:DW24DLC-B-S和DW24D-B-S
  7. 关于判断函数凸或凹以及最优化的问题
  8. advanced east_SpriteKit Advanced —如何构建2,5D游戏(第二部分)
  9. java的string访问某个元素_架构师必懂的——RBAC基于角色的访问权限设计
  10. [POJ 2891] Strange Way to Express Integers
  11. arm linux下交叉编译valgrind工具进行内存泄露检测和性能分析
  12. 查找某组织下子库存与物料信息
  13. shell 踢人办法
  14. LINUX下载编译commoncpp/ucommon
  15. “暖男”经济学:创业者最后的增长红利?
  16. Appium环境搭建2021年最新详细教程
  17. html中的布局方式,网页设计常见的5种布局方式
  18. Navicat Premium 15破解
  19. 淘宝用户行为分析——通过excel分析
  20. 孢子社群:今日推荐人工智能微信群:智能群3群 智能大数据合作交流群

热门文章

  1. Google Earth Engine 学习7---ASTER GED 地表发射率数据下载
  2. 解决IDEA打Jar包找不到或无法加载主类问题
  3. 面试题之优惠券超发怎么测试?
  4. 一个简单的软件需求规划书模版
  5. [AAuto]液晶显示器坏点检测
  6. 华为Eudemon 100E的密码恢复
  7. 洞见科技携手阿里云,以“隐私计算+云”推动场景应用大规模落地
  8. 编译原理语法分析之LR分析
  9. 区块链用哪种语言 Java_区块链开发用什么语言呢?区块链与编程语言的关系详解...
  10. golang:结构体内嵌结构体