很多博客都有写关于Java判断上传文件是否为图片的问题,搜索出来的绝大多数都是复制式的,千篇一律的都是根据后缀名来判断,这种方式是有很多缺陷的,如果我将一个文本文件的后缀名改为".png"呢?严格来说,这样的文件我们的程序也应该能够识别出来,这样的文件不是图片!
OK,那更好的判断方式是怎么写呢?直接贴代码:
// 代码中的file对象,为 MultipartFile file
List<String> imgsType = new ArrayList<>(Arrays.asList("image/jpg", "image/jpeg", "image/png"));
if (!imgsType.contains(file.getContentType().toLowerCase())) {
throw new HandleException("请传入JPG、JPEG、PNG 等格式的图片");
}
if (file.getSize() <= 0L) {
throw new HandleException("获取图片错误");
}
/**
* 限制在1M以内
*/
if (file.getSize() > (1024 * 1024)) {
throw new HandleException("图片过大,限制在1M以内");
}
这样的方式,显然比判断后缀名更为精准!
Nginx 代理请求转发,对于文件上传默认大小为 1M,如果上传的文件超过 1M,则会提示异常: 解决办法: 要想解决 Nginx 文件上传超过 1M 的限制,只需要在 Nginx 的配置文件 nginx
见下图:client_max_body_size 1024M; 上传文件大小限制sendfile on;设置为on表示启动高效传输文件的模式keepalive_timeout 1800;保持连接的时间,
支持最新166、188、199号段的验证,同时支持165、172、174、191、195 等号段的验证。
IntelliJ IDEA配置Java文件自动生成注释描述文件, 在IDEA环境中,打开File->Settings ,弹出对话框依次选择:Editor>File and Code Templates
1、解压 2、移动到 /usr/local 目录下 3、进入并查看Java Jdk 目录 4、配置Java环境变量 编辑/etc/profile 文件 如果提示 vim 命令未安装,执行 yum -y
在类 Linux 操作系统中,文件远程操作,我们都会有用 ”scp“ 命令来完成所需的上传和下载操作。
从Java8开始,Java已经不在推荐使用Date作为时间、日期函数,为什么从Java8之后,推荐使用LocalDateTime、LocalDate,而为什么不再推荐使用Date了呢?
身份证号码格式判断在日常开发工作中比较常见,而检验身份证号码格式是否正确的核心则在于正则表达式,很多的身份证号码格式校验代码都不太全面,或者说兼容性不太好。
在使用thymeleaf 模板引擎时,针对日期时间格式的数据,需要进行格式化显示。例如页面需要精确显示到分钟,时间的格式为:yyyy-MM-dd HH:mm。
Springboot 打包 jar 文件,可以直接打 jar 文件,一种是 jar 文件包含了依赖包,一种是依赖包单独输出为 lib 文件夹。下面介绍 jar 文件包含了依赖包的打包配置。
如果我们有需求需要将Java类的属性及值生成URL格式数据并且按照ASCII码排序,这种需求在项目中特别是和第三方系统进行对接的时候有使用场景。
用 Java 程序实现乘法口诀(99乘法表),主要有两个要点需要掌握: 1、需要实现双层循环; 2、内循环的循环次数小于等于上层循环的循环次数; Java 代码如下(供参考): 循环内打印出口诀,采用条件表达式主要为判断乘积结果是否为两位数
x 环境下源码安装 RabbitMQ 步骤,本文安装的 RabbitMQ 版本为 3.解压分两步: 先使用 xz 命令解压为 tar 包。
下载Erlang 解压源码文件 安装Erlang 注:如果在编译时出现 ”configure: error: No curses library functions found“ 错误,参考解决文章:Linux
下载激活插件 此次的激活方式,与之前介绍的激活方式有一定的区别,需要一个 “jar” 文件作为激活插件,文件下载方式为: 关注 "Obatis资讯" 公众号,回复 “ Idea激活插件”,根据提示即可前往下载
如今的Java项目开发,Springboot/Springcloud、Swagger已经成为了标配,下面我们来说说如何在项目中引入Swagger…… 引入Swagger只需要以下3步,即可使用Swagger
Elasticsearch 安装启动依托于Java 环境,首先得确保已正确安装了Java,并配置好环境变量,要求java 7或以上或最新的版本。