微信推送消息给女友提醒每天天气情况,本文讲解流程,附带代码,可快速上手。

news2024/11/25 14:28:59

实现的效果图

此模板为自己添加的,各位看客可以自行添加,如何添加接着往下看。备注在数据库自定义设置。如果你非专业人士,可以联系作者给你专属设置。如果需要代为设置跳转到文章结束位置。
在这里插入图片描述

完整的代码

代码下载地址

微信公众号设置

申请的个人公众号是没有推送模板消息功能的,只能使用企业认证过的服务号才能使用模板消息推送。但是微信提供了一个测试的公众号功能的平台,我们以下功能都是使用这个测试平台。

微信公众测试平台地址
配置公众号

  1. 扫码登录之后可以获取到appid和appsecret
    在这里插入图片描述
  2. 接着扫自己的测试二维码关注测试公众号。
    把这个用户信息都添加到数据库wxUser表中,参数openid即是微信号,下面打码的内容。
    在这里插入图片描述
  3. 添加模板消息
    模板消息模板,这个拿去修改即可,加粗的是参数,等下代码里面要用到。

亲爱的:{{name.DATA}}
当前日期是:{{nowDate.DATA}}
距离你的生日还有:{{birth.DATA}}天
今天是我们相爱的第:{{love.DATA}}天
也是结婚的第:{{marry.DATA}}天
留言:{{txt.DATA}}

在这里插入图片描述

代码配置修改

下载完代码之后,需要修改的配置有:

  1. 数据库连接,在yml文件中,修改自己的数据库连接。
  2. WxUtils文件修改自己的appid和appsecret

逻辑代码讲解(非专业人士可以跳过此步骤)

  1. 定时器讲解
    运行的步骤是:MyStartRunner实现CommandLineRunner即是定时器入口,然后重写run方法,在run里面进入定时器,代码里面有极其详细的代码注释。然后进入执行类,在执行类过滤微信用户和模板,调用微信推送方法进行推送。
  2. 微信模板参数讲解
    在模板中
 //当前日期是:
 WxMpTemplateData wxMpTemplateData2=new WxMpTemplateData();
 wxMpTemplateData2.setName("nowDate");//name就是模板中的参数
 wxMpTemplateData2.setColor("#173177");//这个是颜色
 wxMpTemplateData2.setValue(nowDateTimeStr);//模板的值
 wxMpTemplateDataList.add(wxMpTemplateData2);//因为多个参数,所以定义了多个参数,然后加入数组
 //最后发送
  wxMpTemplateMessage.setData(wxMpTemplateDataList);
  wxMpTemplateMessage.setTemplateId(templateId);//模板id
  wxMpTemplateMessage.setToUser(openid);//发送用户的微信号
  wxMpTemplateMessage.setUrl("http://...../code1/fire.html");//点击公众号中模板跳转的地址,我这个是满屏烟花页面,想要的可以联系我
  WxMpTemplateMsgService templateMsgService = wxMpService.getTemplateMsgService();
  String s = templateMsgService.sendTemplateMsg(wxMpTemplateMessage);
  System.out.println("订阅爱情模板---->"+s);

结束语

然后打包运行到服务器,每日都会定时发送微信推送。

代为专属配置

准备前提:

  1. 需要准备一个服务器,如果没有服务器可暂时先使用作者的。
  2. 私信作者。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/167641.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《Linux Shell脚本攻略》学习笔记-第八章

8.1 简介 TCP/IP网络的运作过程就是在节点之间传递分组。每一个分组中都包含了目标的IP地址以及处理分组中数据的应用程序端口号。 当节点接收到分组时,它会查看自己是否就是改分组的目的地。如果是,节点会再检查端口号并调用相应的应用程序来处理分组数…

Cookie 会话身份验证是如何工作的?

在 Web 应用程序中,Cookie-Session 是一种标准的身份验证方法。饼干,也被称为“sweet cookies”。类型为“小文本文件”,是指一些网站为了识别用户身份而存储在客户端的数据。Session的主要功能是通过服务器记录用户的状态。 在典型的在线购物…

类与类之间关系的表示方式

1.关联关系 关联关系是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系,如老师和学生,师傅和徒弟,丈夫和妻子等。关联关系是类与类之间最常用的一种关系,分为一般关联关系,聚合关系和组合…

郭天祥十天入门单片机学习笔记

电子元件 排阻 有两种: nn1 二极管 几个概念 限流电阻:与二极管串联,防止电流过大烧毁二极管导通压降:二极管亮起的最小电压 贴片式绿色为阴极,插入式短脚为阴极 数码管 共阴极:对应段选信号置1亮…

测试开发 | 这些常用测试平台,你们公司在用的是哪些呢?

测试管理平台是贯穿测试整个生命周期的工具集合,它主要解决的是测试过程中团队协作的问题。在整个测试过程中,需要对测试用例、Bug、代码、持续集成等等进行管理。下面分别从这四个方面介绍现在比较流行的管理平台。 图片108091 50.2 KB 测试用例管理平台…

Doris 使用记录(随机更新(ง •_•)ง)

文章目录知识点常见数据分布方式使用表动态分区Hash分桶知识点 常见数据分布方式 分布式数据库中常见的数据分布方式。 轮询:Round-Robin,假设分桶数为3,数据按顺序依次写入桶1、桶2、桶3,然后继续循环。 区间:Ran…

【Lp-CVT and Applications】

Lp-CVT and Applications 论文笔记 本文是论文 Lp Centroidal Voronoi Tessellation and its Applications 的学习笔记。有不足之处,请指出!非常感谢! 1 主要工作 解决问题:推广CVT以适用各向异性和六面体网格划分。推广 CVT &am…

如何模拟实现一个“缓存”?

目录 前言 一、LRU Cache是什么 二、模拟实现 2.1、通过继承 LinkedHashMap 模拟实现 2.2、自主模拟实现LRU Cache 2.2.1、LRU Cache的定义 2.2.2、存放结点 2.2.3、访问结点 2.2.4、LRU Cache 完整模拟代码 小结 前言 这次主要实现一个类似缓存的一种数据结构&#xf…

day49 业务逻辑水平垂直越权访问控制脆弱验证

前言: #知识点: 1、水平越权-同级用户权限共享 2、垂直越权-低高用户权限共享 3、访问控制-验证丢失&取消验证 4、脆弱验证-Cookie&Token&Jwt等 #前置知识: 1、逻辑越权原理- -水平越权:用户信息获取时未对用户…

NTP(Network Time Protocol)协议详解

一、NTP的基本概念: NTP(Network Time Protocol)------网络时间协议-----应用层协议,用来在分布式时间服务器和客户端之间进行时间同步。 二、采用NTP的目的: 是对网络内所有具有时钟的设备进行时钟同步,使网络内所有设备的时钟…

JDY-06蓝牙透传无天线模块介绍

JDY-06蓝牙透传无天线模块简介JDY-06透传模块是基于蓝牙4.0协议标准,工作频段为2.4GHZ范围,调制方式为GFSK,最大发射功率为0db,最大发射距离60米,采用TICC2541芯片设计,支持用户通过AT命令修改设备名、服务…

Alkyne maleimide,Mal-Alkyne,炔烃-马来酰亚胺

中英文别名:CAS号:N/A | 英文名:Alkyne maleimide,Mal-Alkyne |中文名:炔烃-马来酰亚胺物理参数:CASNumber:N/AMolecular formula:C12H14N2O3Molecular weight:234.26Pur…

什么是前后端分离?

当前,数字化发展速度越来越快,前后端分离已经成为今后的发展趋势。在现代化办公管理中,不少企业倾向于使用低代码开发平台实现高效协作办公,那么,什么是前后端分离?都有哪些特点?本文就围绕这个…

【网络安全】渗透测试之linux信息收集

前言 在内网中linux的服务器是占大多数的,主要原因分为以下几点 1.便宜,linux大多为免费的,Windows Server是收费的,对于企业来说为了节约成本,大量采用linux服务器。 2.轻便,linux主要是对服务器进行服务的…

递归算法实例应用(三)

递归算法实例应用(三) 四则运算表达式求值 Description 给你一个字符串表达式 str ,请你实现一个基本计算器来计算并返回它的值。 注意:不允许使用任何将字符串作为数学表达式计算的内置函数 。 Input 一行,一个四则运算表达…

编写设备驱动之i2c_client

编写设备驱动之i2c_client 文章目录编写设备驱动之i2c_client参考资料:一、I2C总线-设备-驱动模型二、 编译i2c_driver三、编写测试程序四、多种方法生成i2c_client并测试4.1 在用户态生成4.2 编写代码4.3 使用设备树生成2. IMX6ULL4.4 上机测试致谢参考资料&#x…

prometheus的remotewrite解析

特性 目的是为了向远端的存储写入数据。 为了提高写入效率,Prometheus在将采集到的samples写入远程存储之前,会先缓存在内存队列中,然后打包发送给远端存储。而这个内存队列的配置参数,对于Prometheus写入远程存储的效率影响较大…

《MySQL高级篇》十一、事务基础知识

文章目录1. 数据库事务概述1.1 存储引擎支持情况1.2 基本概念1.3 事务的ACID特性1.4 事务的状态2. 如何使用事务2.1 显式事务2.2 隐式事务2.3 隐式提交数据的情况2.4 使用举例1:提交与回滚2.5 使用举例2:测试不支持事务的Engine2.6 使用举例3&#xff1a…

STL中的队列用法整理

STL中的队列先进先出队列(FIFO)主要方法代码示例输出优先级队列模版原型主要对方法有代码示例int的大顶堆运行结果int的小顶堆运行结果使用自定义的比较函数的优先队列代码示例运行结果双端队列主要方法示例运行结果有关双端队列的题目先进先出队列&…

Vue生命周期,总也学不会,所以我详细整理了一下

今天,我和大家一起来对vue生命周期做一个整理和思考,希望有缘人看到我的年度整理和思考,如果觉得靠谱呢,就交个朋友,如果觉得我整理的不足,就请指出,让我们一起进步,让我们2023年能共…