`
vicky_luo
  • 浏览: 19398 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

SSH框架对比Jfinal框架-文件上传下载

阅读更多
SSH文件下载:
       File f = new File(filePath);
        if (!f.exists()) {
            response.sendError(404, "File not found!");
            return;
        }
        BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
        byte[] buf = new byte[1024];
        int len = 0;

        response.reset(); // 非常重要
        if (isOnLine) { // 在线打开方式
            URL u = new URL("file:///" + filePath);
            response.setContentType(u.openConnection().getContentType());
            response.setHeader("Content-Disposition", "inline; filename=" + f.getName());
        } else { // 纯下载方式
            response.setContentType("application/x-msdownload;charset=UTF-8");
            response.setHeader("Content-Disposition", "attachment; filename=" + f.getName(),"iso-8859-1");
        }
        OutputStream out = response.getOutputStream();
        while ((len = br.read(buf)) > 0)
            out.write(buf, 0, len);
        br.close();
        out.close();
Jfinal文件上传:
        List<UploadFile> files=null;
String path="attachFile/";
try {
files=getFiles(path,1024*1024*10,"UTF-8");
} catch (Exception e) {
renderText("总上传附件不能超过10M<a href='history.back();'>返回</a>");
e.printStackTrace();
}
        for(int i=0;i<files.size();i++){
   UploadFile uf=files.get(i);
    //拿到上传图片的后缀名称
    String suffix = uf.getFileName();
    if(suffix!=null){
int travel_id=travel.getNumber("id").intValue();
String[] filenames = suffix.split("\\.");
String suffixName = filenames[filenames.length-1];
String fileName=System.currentTimeMillis()+"_"+month+"."+suffixName;
uf.getFile().renameTo(new File(uf.getSaveDirectory()+fileName));
try {
AttachFile attachFile=new AttachFile();
attachFile.set("id", "T_ATTACHFILE_ID.nextval")
attachFile.save();
} catch (Exception e) {
//删除
                        uf.getFile().delete();
}
}
}
Jfinal文件下载:
        //getSession().getServletContext().getRealPath("/")+   flie.getStr("path_");
    File f = new File(basePath);
    if (!f.exists()) {
                //报错模板
        setAttr("title", "404");
     setAttr("message", "File not found!");
        render(consts.templateErr);
    }else{
        renderFile(f);
    }
分享到:
评论

相关推荐

    jfinal-code-online:jfinal-code-online 是一个基于JFinal的基础代码生成平台,本身是一个标准web项目,不依赖任何IDE,其核心设计目标是学习简单、功能强大、轻量级、易扩展

    可用任何模板引擎生成一切代码,目前默认提供Java代码生成器,支持JFinal Web风格项目,不久将加入传统的SSH项目生成.代码量1000余行,实现了模板生成器的核心功能.Features基于业务模型快速生成,大大提高开发速度。不...

    基于JFinal框架的Java Web应用开发研究.pdf

    JFinal框架作为SSH框架的替代方案,不但可以提高项目代码的可维护性和可扩展性,更可以大幅度提高开发效率。 JFinal框架是基于Java语言的开源Web开发框架,其核心设计目标是提供一个简单、灵活、易于使用的开发框架...

    jfinal 基于 Java 语言的极速 WEB + ORM 框架

    JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!...

    _JFinal与SSH在JavaWeb应用开发中的研究.pdf

    2. SSH框架的架构和特点 * SSH是一种由Struts2、Spring、Hibernate三个框架组合的集成框架 * Struts2负责与用户的交互和页面逻辑的跳转 * Spring负责管理业务逻辑处理对象 * Hibernate负责数据库的操作 * 三者...

    JFinal实例(mysql数据库)

    与传统的 SSH(Struts2、Hibernate、Spring)框架相比,JFinal 更加轻便,降低了项目的复杂度,尤其适合小型项目或快速开发。在这个实例中,我们将探讨如何使用 JFinal 结合 MySQL 数据库来创建一个简单的应用。 ...

    jfinal_demo_for_jsp.zip_DEMO_jfinal

    本文将通过分析"jfinal_demo_for_jsp.zip_DEMO_jfinal"这个项目,深入探讨JFinal如何操作数据库以及如何与JSP页面进行交互,并对比其与SSH、SSM框架的优缺点。 首先,让我们了解一下JFinal的核心特点。JFinal基于...

    JFinal极速WEB+ORM框架 v5.1.1

    jfinal框架特点: MVC 架构,设计精巧,使用简单 遵循 COC 原则,零配置,无 XML 独创 Db + Record 模式,灵活便利 ActiveRecord 支持,使数据库开发极致快速 极简、强大、高性能模板引擎 Enjoy,十分钟内掌握 90% ...

    JFinal极速WEB+ORM框架-其他

    Java 文件,开发过程中无需重启服务AOP支持,拦截器配置灵活,功能强大Plugin 体系结构,扩展性强多视图支持,支持 Enjoy、FreeMarker、JSP、Velocity强大的 Validator 后端校验功能功能齐全,拥有传统 SSH 框架的绝...

    JFinal 是基于 Java 语言的极速 WEB + ORM + AOP + Template Engine 框架.rar

    JFinal 是基于 Java 语言的极速 WEB + ORM + AOP + Template Engine 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java 语言所有优势的同时再拥有 ruby、python...

    jfinal工具类

    SAAS架构 一步步给你详细讲解分解saas架构,已SSH 框架为例子,如何转到SAAS的步骤,多租户,灵活配置,做数据库的如何定位,缓存cache的应用。 非常有用值得推荐...我现在java的一值做参考

    jfinal:jfinal原始码学习可以查看作者https

    JAVA极速WEB + ORM框架JFinal JFinal是基于Java语言的极速WEB + ORM框架,其核心设计目标是开发Swift,代码量少,学习简单,功能强大,轻量级,易扩展,有趣。 ,python等动态语言的开发效率!为您节省更多时间,去...

    公共技术框架搭建方案参考

    - 基于Java路线:选择JFinal作为Web开发框架,它具有MVC架构、零配置、自动加载修改后的Java文件等特点,相比于经典的SSH架构(Struts、Spring、Hibernate),JFinal具有更快的开发速度、更少的代码量、更容易的...

    Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Rest

    JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有 ruby、python 等动态语言的开发效率!为...

    demo工程列表说明1

    13. **文件操作**:filedemo涵盖了多种文件操作,如SFTP下载、文件解压缩、读写等,可能涉及SSH和ZIP库。 14. **Flowplayer HTML5播放器**:flowplayerdemo演示了如何使用Flowplayer,一个开源的HTML5视频播放器。 ...

    SpringBoot初步学习一

    在传统的Java Web开发中,整合SSH(Struts2+Spring+Hibernate)、SSM(Spring+SpringMVC+Mybatis)等框架时,开发者需要处理大量的配置文件问题,如配置文件的管理、依赖库之间的版本冲突等问题。这些问题不仅增加了...

    积分管理系统java源码-myfund:我的基金

    Java:JFinal框架 缓存:EhCache, 静态模板框架:Beetl 后台UI框架:B-JUI 数据库:MySql 后台服务器:阿里云centos6 技术描述 - JFinal 这个项目,做的有点早,技术上,选择的JFinal,很轻量级的框架,开发起来,...

    Hadoop学习文档.pdf

    2. 大数据框架快速开发:介绍基于JFinal开发大数据应用的快速开发方法。 机器学习入门 介绍机器学习的基础知识,包括如何入门和应用在大数据项目中。 其他知识点还包括了数据采集、运维工具的使用、Hadoop相关资源...

Global site tag (gtag.js) - Google Analytics