linus上运行jar包文件增删查
package com.osplat.util; import com.alibaba.fastjson.JSON; import com.osplat.bean.Resultmodel; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import org.springframework.web.multipart.MultipartFile; import javax.imageio.ImageIO; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.util.Map; /** * @Company:wftdlx * @Author: wjf * @Description: * @Date: Created in 15:48 2019/2/19 */ /**yml文件中 web: #uploadPath: E:\\files\\ uploadPath: /home/numa/image/ */ @Component public class LinusFile { //public static String imageUrl="/home/numa/image/";//linus路径 //public static String imageUrl="E:\\files\\";//window路径 public static String imageUrl; @Value("${web.uploadPath}") public void setImageUrl(String uploadPath) { imageUrl = uploadPath; } //直接上传 public static Resultmodel upFile(MultipartFile file) { Log.info("开始文件上传"); if (file.isEmpty()) { String msg = "上传文件不能为空"; Log.info(msg); return new Resultmodel(0, "上传失败"); } String fileName = file.getOriginalFilename(); Log.info("文件名=" + fileName); //加个时间戳,尽量避免文件名称重复 long l = System.currentTimeMillis(); fileName = l + "_" + fileName; Log.info("保存的文件名为=" + fileName); // 获得的系统的根目录 File fileParent = new File(File.separator); // 获得/usr/CBeann目录 File PathBefore = new File(fileParent, imageUrl + fileName); //创建文件路径 File dest = PathBefore; //上传文件 try { file.transferTo(dest); //保存文件; } catch (Exception e) { Log.error("异常:" + "上传失败异常" + e.getMessage()); return new Resultmodel(-1, "上传失败异常"); } return new Resultmodel(0, "上传成功", fileName); } //查询图片 public static Resultmodel show(HttpServletResponse response, String data) { //String page,String pageSize,String finishKey //开始 Log.info("======开始:图片查看"); Log.info("入参data:" + data); //数据转换 Map maps = (Map) JSON.parse(data);//import com.alibaba.fastjson.JSON; String imgUrl = maps.get("imgUrl").toString(); //String photoName = "0d34f75a26334f6f836512b52d09053ce37eb12612f628c1c3d37fd8fffdff28.jpg"; response.setDateHeader("Expires", 0); response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate"); response.addHeader("Cache-Control", "post-check=0, pre-check=0"); response.setHeader("Pragma", "no-cache"); response.setContentType("image/jpeg"); // 获得的系统的根目录 File fileParent = new File(File.separator); // 获得/usr/CBeann目录 File file = new File(fileParent, imageUrl + imgUrl); try { BufferedImage bi = ImageIO.read(new FileInputStream(file)); ServletOutputStream out = response.getOutputStream(); ImageIO.write(bi, "jpg", out); try { out.flush(); } finally { out.close(); } } catch (IOException e) { e.printStackTrace(); Log.error("查看图片异常" + e.getMessage()); return new Resultmodel(Resultmodel.ERROR, "查看图片异常"); } return null; } //删除图片 public static Resultmodel delete(HttpServletResponse response, String data) { //开始 Log.info("======开始:图片删除"); Log.info("入参data:" + data); //数据转换 Map maps = (Map) JSON.parse(data);//import com.alibaba.fastjson.JSON; String imgUrl = maps.get("imgUrl").toString(); Log.info("转换后数imgUrl:" + imgUrl); // 获得的系统的根目录 File fileParent = new File(File.separator); // 获得/usr/CBeann目录 File file = new File(fileParent, imageUrl + imgUrl); Log.info("转换后数file:" + file.toString()); //删除文件 boolean delete = false; try { delete = file.delete();//保存文件; Log.info("转换后数delete:" + delete); if (delete) { return new Resultmodel(0, "图片删除成功"); } return new Resultmodel(-1, "图片删除失败"); } catch (Exception e) { Log.error("异常:" + "上传失败异常" + e.getMessage()); return new Resultmodel(-1, "上传失败异常"); } } }
配置文件yml
# 取消模板文件缓存 thymeleaf: cache: false enabled: false servlet: multipart: max-file-size: 128KB max-request-size: 128KB enabled: false
配置路径yml:
web: #uploadPath: E:\\files\\ uploadPath: /home/numa/image/
@Configuration注解文件下添加
//文件上传 @Bean public MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); // 单个文件最大 factory.setMaxFileSize("201400KB"); // KB, MB // 设置上传数据总大小 factory.setMaxRequestSize("2014000KB"); return factory.createMultipartConfig(); }
linus上运行jar包文件增删查的更多相关文章
- 在服务器上运行Jar包
在服务器上运行Jar包 并且该Jar包依赖其他的Jar文件的时候,采用如下格式 java -Djava.ext.dirs=你依赖的Jar文件路径 -jar 你要运行的Jar文件 包名+类名 例如: j ...
- 在Linux服务器上运行jar包,并且使jar包一直处于后台执行
1.我jar包在linux的目录为/a/bbb.jar 正常情况下,使用在/a目录下使用 java -jar bbb.jar 可以直接运行该jar包的项目,运行成功之后使用crtl+ ...
- 如何打包/运行jar包,及生成exe文件
关于如何打包/运行jar包,以及生成exe文件.之前各种查询.博客,终于搞明白究竟是咋回事.记得还做过笔记的.今天要打包生成exe用的时候,居然忘了咋怎来着.去查看之前的笔记,死活没找到(好像被删掉了 ...
- Linus运行jar包的操作
cd / 返回最顶层文件夹cd home/numa 进入home下的numa文件夹ll 查看当前文加夹下的所有文件ps -ef | grep java ...
- 在linux云服务器上运行Jar文件
在linux服务器上运行Jar文件时通常的方法是: $ java -jar test.jar 这种方式特点是ssh窗口关闭时,程序中止运行.或者是运行时没法切出去执行其他任务,有没有办法让Jar在后台 ...
- Java Web文件上传原理分析(不借助开源fileupload上传jar包)
Java Web文件上传原理分析(不借助开源fileupload上传jar包) 博客分类: Java Web 最近在面试IBM时,面试官突然问到:如果让你自己实现一个文件上传,你的代码要如何写,不 ...
- hadoop_MapReduce_idea上打jar包,在虚拟机上运行
打包前的介绍和准备工作 指定主类可以在运行jar包的时候不用输入要运行哪一个类,直接就可以运行了 指定主类 编辑jar 的信息 修改jar包的名称 build Complete!!! MapReduc ...
- 不显示cmd窗口运行jar包
今天,打开导出的jar包,发现并不能运行,查看jar包中的META-INF文件夹下的MANIFEST.MF文件,发现MANIFEST.MF中并没有Main-Class,于是,就手动添加相应的信息,本项 ...
- IDEA2017版本打可运行jar包并运行
一.打JAR包 JAR:From modules with dependencies 将依赖一起打包 一般依赖放在与xx.jar同级的libs文件夹中 敲黑板,下图第一个框是输出jar包的位置,第二 ...
随机推荐
- 常见排序算法 - Java实现
1.冒泡排序 每次比较相邻的两个元素大小,调整顺序.从头到尾执行一轮(i),最大数值的元素就排到最后.每次从头到尾执行一轮,都会排好一个元素(length - i - 1).这就是说一个包含 n 个元 ...
- day4----函数-闭包-装饰器
本文档内容: 1 python中三种名称空间和作用域 2 函数的使用 3 闭包 4 装饰器 一 python中三种名称空间和作用域 1.1名称空间: 当程序运行时,代码从上至下依次执行,它会将变量与值 ...
- 41.纯 CSS 绘制一支栩栩如生的铅笔
原文地址: https://segmentfault.com/a/1190000015153865 感想: 不难 HTML code: <div class="pencil" ...
- linux 组管理
修改文件所有者 chown 用户名 文件名 修改文件所在的组 chgrp 组名 文件名 r = 4 , w = 2, x = 2 u :所有者 g :所在组 o:其他组 a: ...
- hive,分桶,内外部表,分区
简单的word-count操作: [root@master test-map]# head -10 The_Man_of_Property.txt #先看看数据Preface“The Forsy ...
- MFC+OpenGL基础绘制<转>
转载地址:https://blog.csdn.net/u013232740/article/details/47904115 ------------------------------------- ...
- linux系统安装java环境
参考资料:实测可用 https://www.cnblogs.com/xuliangxing/p/7066913.html
- vue 踩坑-事件修饰符
(1).stop // 阻止事件继续传播 即阻止冒泡过程 (2).prevent //阻止默认事件发生 即event.preventdefault(): 实例: 阻止了a标签的默认刷新 (3).cap ...
- js 提示框的实现---组件开发之(二)
接着第上一个,在js文件里再增加一个 popModal 模块,实现弹框效果 css 代码: .alert { padding: 15px; margin-bottom: 20px; border: 1 ...
- C++复习:纯虚函数和抽象类
纯虚函数和抽象类 1基本概念 2抽象类案例 3抽象类在多继承中的应用 C++中没有Java中的接口概念,抽象类可以模拟Java中的接口类.(接口和协议) 3.1有关多继承的说明 工程上的多继承 被 ...