java实现随机获取封面图片

举报
穆雄雄 发表于 2022/12/31 17:42:12 2022/12/31
【摘要】 大家好,我是雄雄。 前言最近阳的很多,大家都注意身体啊;今天给大家分享一篇:java如何实现随机获取七牛云obs中的图片,主要用于给文章随机添加封面,因为固定一个封面的话,会显得很单一,所以就提前准备了一些好看的图片放在里面,然后我们随机的取出来就行。 效果图大家可以看的出来,基本上图片都没有重复的,当然,这得需要你有足够多的图片做支撑,如果你只有两张图片,但是文章有3篇,那不重复的话,肯定...

大家好,我是雄雄。
在这里插入图片描述

前言

最近阳的很多,大家都注意身体啊;
今天给大家分享一篇:java如何实现随机获取七牛云obs中的图片,主要用于给文章随机添加封面,因为固定一个封面的话,会显得很单一,所以就提前准备了一些好看的图片放在里面,然后我们随机的取出来就行。

效果图

在这里插入图片描述
大家可以看的出来,基本上图片都没有重复的,当然,这得需要你有足够多的图片做支撑,如果你只有两张图片,但是文章有3篇,那不重复的话,肯定是做不到的。

实现

首先我们需要去整一些图片去,我放在了七牛云存储里面了,放的地大家可以随便放就行,比如华为云啥的都可以,到时候最好在买个cdn加速包,这样会省流量,省费用。

1.找图片

现在我们去找一些好看的图片,图片最主要的要求有两点:

  • 好看,自适应
  • 不能侵犯别人版权
    基于这两点,我这边提供给大家一个网站,里面全是好看的图片,且是免版权的:wallpapers
    在这里插入图片描述
    也不用登录,也不用注册的,直接点击就能下载
    将图片下载下来之后,为了代码层面好实现,我们需要重命名一下图片:
    在这里插入图片描述
    我事这样命名的,前缀是fm开头,后面是数字,为我们后面java代码层面实现的时候减少障碍~

2.将图片上传到云存储中

这一步不用过多的介绍吧,大家直接拉到云存储里面就可以了,然后将图片的连接复制一下,需要注意的是,在上传的时候,不要把这些图片随意的乱传,需要放在一个指定的目录下。

3.java实现随机取

接下来我们可以使用java来实现了,实现思路:

  • 因为图片命名是有规则的,那就是从1-52之间的任何一个自然数,加上前缀的fm就是该图片的名称,所以我们只需要随机拿到一个数字,组装组装就可以了。
  • 将组装的图片路径return出来

下面是实现代码:

   /**
     * 从七牛云中随机取出一张图片作为封面
     * @return
     */
    @Override
    public ResponseResult randomImgByQiNiuYun() {
        //先来个随机数 (1-52的随机数)
        int max = 52, min = 1;
        int random = (int) (Math.random() * (max - min) + min);
        String imgUrl = QNY_IMG_URL + "fm" + random + ".jpg";
        return ResponseResult.success(imgUrl);
    }

QNY_IMG_URL是我图片的请求地址,eg:

https://88688.team/

大家可以自己改成你的,加上前缀和图片的扩展名.jpg即可实现啦。

下面是给数据库中添加的图片地址效果:

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。