需要提供一个界面能够下载系统日志文件,就在后台管理系统中做了一个系统日志下载界面。
项目用的是play框架,之前没有做过play框架下载文件,所以尝试着做了一下,示例代码如下:
/** * 日志文件夹主目录名 */ public static final String LOGDIRECTORYHOME = "XXXX";
/** * 文件下载 * @param fileName 文件所在的目录名称 * @param subFileName 文件名 * @return */ public static Result download(String fileName, String subFileName) { String filePath = System.getProperty("user.dir") + File.separator + LOGDIRECTORYHOME + File.separator + fileName + File.separator + subFileName; play.mvc.Http.Response response = response(); File file = new File(filePath); // 取得文件名。 String filename = file.getName(); try { response.setHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes("UTF-8"),"ISO8859_1")); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } response.setHeader("Content-Length", "" + file.length()); response.setContentType("application/octet-stream"); byte[] buffer = {}; try { // 以流的形式下载文件。 InputStream fis = new BufferedInputStream(new FileInputStream(filePath)); buffer = new byte[fis.available()]; fis.read(buffer); fis.close(); } catch (IOException e) { if (Logger.isErrorEnabled()) { Logger.error("下载文件" + filePath + "出错。", e); } } return ok(buffer); }
相关推荐
Play框架中文文档.pdf
Play框架是基于Java和Scala的开源Web应用框架,遵循MVC(Model-View-Controller)设计模式,旨在简化Web开发过程。它强调代码即路由、轻量级、快速开发和可测试性,使得开发者能够更加专注于业务逻辑,而不是底层...
- **路由系统**:Play框架的路由文件定义了URL模式如何映射到控制器方法,这是实现RESTful API的关键部分。 - **模板引擎**:Play支持Erb-like的模板语言,如Twirl,用于生成HTML,同时支持Scala的语法特性,使得...
应用层次结构定义了Play框架的项目目录结构,如app目录存放业务逻辑,public目录存放静态资源,conf目录存放配置文件,lib目录存放库文件等。 2.4 开发周期 在开发过程中,开发者需要理解DEV和PROD模式的不同,以及...
Play框架是一个开源的Java和Scala应用开发框架,它遵循模型-视图-控制器(MVC)架构模式。Play强调简洁的代码和实时反馈,使得开发过程更为高效。它支持TDD(测试驱动开发),并且与现代Web技术如HTML5、CSS3和...
* 路由配置:Java PLAY框架的路由配置通过routes文件进行配置,routes文件中定义了每个路由的URL、HTTP方法和对应的控制器。 类增强 类增强是Java PLAY框架的一种重要机制,以下是类增强的详细信息: * ...
- Play框架拥有活跃的社区和详尽的官方文档,遇到问题时可以查阅文档或在社区寻求帮助。 - 定期更新:Play框架会不断发布新版本,添加新功能,改进性能,开发者应关注并适时升级。 总之,这个“Play框架jar包”...
《Play Framework 框架手册》是一份深入介绍Play框架的文档,主要涵盖了从基础概念到高级特性的全面内容,适合初学者和经验丰富的开发者参考。以下是对手册中部分核心知识点的详细阐述: 1. **MVC应用程序模型**:...
Play框架是Java领域的一款轻量级、开源的Web应用框架,它基于MVC(Model-View-Controller)架构模式,提供了简洁的API和强大的工具,使得开发者能够快速地构建高效、可测试的Web应用程序。本项目是针对初学者设计的...
Play框架还支持模块化开发,可以方便地通过`dependencies.yml`文件添加和管理依赖,使用`play dependencies`命令下载模块,并通过`play eclipseify`将模块集成到Eclipse中。对于数据库操作,Play支持JPA进行数据持久...
play框架API
Play框架是基于Java和Scala的开源Web应用框架,遵循MVC(模型-视图-控制器)设计模式。它强调简洁的代码结构和开发效率,同时提供了对AJAX的强大支持,使得开发者可以轻松创建交互式的、响应式的Web应用程序。在本...
### Play框架核心概念详解 #### 一、Play框架与MVC模式 Play框架是一款轻量级、高效的Java和Scala Web开发框架,它基于MVC(Model-View-Controller)架构模式设计,旨在简化Web应用程序的开发流程。MVC模式将应用...
在Play框架中,商业逻辑在domain model层里进行管理,Web客户端不能直接调用这些代码,domain对象的功能作为URI资源暴露出来。 客户端使用HTTP协议提供的统一API来暗中操作这些底层的商业逻辑实现资源的维护。然而,...
你可以从官方网站的下载地址(例如:https://downloads.typesafe.com/play/1.2.5.6/play-1.2.5.6.zip)获取最新版本的Play框架。下载完成后,解压缩文件并将其放在合适的文件夹下。接下来,我们需要设置环境变量。在...
安装Play框架很简单,从官方下载页面获取最新二进制包并解压。将Play目录添加到PATH环境变量中,这样就可以在命令行直接使用`play`命令。通过运行`play`检查安装是否成功,如果显示帮助信息,说明已安装正确。 创建...
**路由配置文件**:Play框架的路由配置位于`conf/routes`文件中,这里定义了所有可用的URL路径及其对应的控制器方法。例如,`GET /users UserController.index` 这样的配置意味着所有以`/users`开头的GET请求都将由`...
Play 框架 MVC 模式详解 Play 框架完全遵循 MVC 模式,该模式将应用程序分成三个独立的层:presentation 展示层、model 模型层和 controller 控制层。每个层都有其特定的功能和作用,下面我们将对每个层进行详细的...