当前位置: 首页 > news >正文

杭州网站维护外包南京网站策划公司

杭州网站维护外包,南京网站策划公司,设计师用的软件有哪些,做钓鱼网站在这篇教程中#xff0c;我们将介绍如何使用Java实现企业微信的消息推送功能#xff0c;特别是在完成任务后#xff0c;将结果信息通过企业微信推送给指定的用户。我们将基于您提供的代码进行说明。 1. 环境准备 1.1 依赖库 在开始编写代码之前#xff0c;确保您的项目中…在这篇教程中我们将介绍如何使用Java实现企业微信的消息推送功能特别是在完成任务后将结果信息通过企业微信推送给指定的用户。我们将基于您提供的代码进行说明。 1. 环境准备 1.1 依赖库 在开始编写代码之前确保您的项目中已经引入了必要的依赖库。以下是 pom.xml 文件中的依赖配置 dependencies!-- Apache HttpClient 用于发送 HTTP 请求 --dependencygroupIdorg.apache.httpcomponents.client5/groupIdartifactIdhttpclient5/artifactIdversion5.1/version/dependency!-- SnakeYAML 用于解析 YAML 文件 --dependencygroupIdorg.yaml/groupIdartifactIdsnakeyaml/artifactIdversion2.0/version/dependency!-- dotenv-java 用于加载 .env 文件中的环境变量 --dependencygroupIdio.github.cdimascio/groupIdartifactIddotenv-java/artifactIdversion2.2.0/version/dependency!-- Lombok 提供日志功能和简化代码 --dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.18.20/versionscopeprovided/scope/dependency /dependencies确保您已经正确配置了这些依赖项以便后续的代码可以正常运行。 2. 编写推送消息的核心代码 在 utils 包下创建一个 Bot 类用于处理消息推送的逻辑。以下是该类的代码 package utils;import io.github.cdimascio.dotenv.Dotenv; import lombok.extern.slf4j.Slf4j; import org.apache.hc.client5.http.fluent.Request; import org.yaml.snakeyaml.Yaml;import java.io.FileInputStream; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Map;Slf4j public class Bot {private static final String HOOK_URL;private static boolean isSend;static {// 加载环境变量Dotenv dotenv Dotenv.load();HOOK_URL dotenv.get(HOOK_URL);// 加载 config.yaml 配置try (FileInputStream fis new FileInputStream(src/main/resources/config.yaml)) {Yaml yaml new Yaml();MapString, Object config yaml.load(fis);log.info(YAML 配置内容: {}, config);// 获取 bot 配置使用安全的类型转换方法MapString, Object botConfig safeCast(config.get(bot), Map.class);if (botConfig ! null botConfig.get(is_send) ! null) {isSend safeCast(botConfig.get(is_send), Boolean.class);} else {log.warn(配置文件中缺少 bot.is_send 键或值为空不发送消息。);isSend false;}} catch (IOException e) {log.error(读取 config.yaml 异常{}, e.getMessage());isSend false; // 如果读取配置文件失败默认不发送消息}}public static void sendWeChatMessage(String message) {if (!isSend) {log.info(消息推送已禁用。);return;}// 格式化当前时间String currentTime new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date());String formattedMessage String.format(%s %s, currentTime, message);// 发送HTTP请求try {String response Request.post(HOOK_URL).bodyString({\msgtype\: \text\, \text\: {\content\: \ formattedMessage \}},org.apache.hc.core5.http.ContentType.APPLICATION_JSON).execute().returnContent().asString();log.info(消息发送成功: {}, response);} catch (Exception e) {log.error(消息发送失败: {}, e.getMessage());}}public static void main(String[] args) {// 示例调用sendWeChatMessage(电脑正在关机请查看原因);}/*** 通用的安全类型转换方法避免未检查的类型转换警告* param obj 要转换的对象* param clazz 目标类型的 Class 对象* param T 目标类型* return 如果对象类型匹配则返回转换后的对象否则返回 null*/SuppressWarnings(unchecked)public static T T safeCast(Object obj, ClassT clazz) {if (clazz.isInstance(obj)) {return (T) obj;} else {return null;}} }3. 配置 .env 和 config.yaml 3.1 配置 .env 文件 在项目的根目录下创建 .env 文件用于存放企业微信的 Webhook URL。 HOOK_URLhttps://qyapi.weixin.qq.com/cgi-bin/webhook/send?keyyour_key_here将 your_key_here 替换为您在企业微信上创建的自定义机器人所提供的密钥。 3.2 配置 config.yaml 文件 在 src/main/resources/ 目录下创建 config.yaml 文件配置是否启用消息推送。 bot:is_send: true4. 集成推送逻辑到您的业务代码 现在您可以将 sendWeChatMessage 方法集成到您的业务逻辑中。例如您可以在完成某个任务后调用此方法来推送结果。 private static void printResult() {// 构建日志和消息内容String message String.format(投递完成,共投递 %d 个岗位\n今日投递岗位:\n%s, resultList.size(), String.join(\n, resultList));// 打印到日志log.info(message);// 发送微信消息Bot.sendWeChatMessage(message); }5. 运行程序 确保您的 .env 文件和 config.yaml 文件已经正确配置然后运行您的 Java 程序。当业务逻辑调用 printResult 方法时结果将自动推送到您在企业微信中配置的群聊中。 6. 常见问题排查 无法发送消息确保您的 HOOK_URL 正确配置并且企业微信机器人没有被禁用。消息发送失败检查 config.yaml 中的 is_send 是否设置为 true。调试日志您可以通过日志 (log.info, log.error) 来查看程序的运行情况和错误信息。 结论 通过以上步骤您可以轻松地将企业微信消息推送集成到您的 Java 应用中并在完成任务后实时通知相关人员。这种集成方式适用于各种需要实时通知的场景如任务完成通知、错误警告等。
http://www.hkea.cn/news/14419807/

相关文章:

  • 网站遮罩是什么最新的新闻 今天
  • 贵州建设职业技术学院招商网站wordpress端口映射
  • 免费网站建设合同范本中国中标信息查询系统
  • 做竞价的网站有利于优化吗移动端是指手机还是电脑
  • 学做网站根学ps有前途吗wordpress 上传到七牛
  • 个人备案网站类型学校网站建设策划书
  • 城乡建设杂志社官方网站网站开发的晋升晋升空间路径
  • 门户网站建设汇报响应式网站模板 金融
  • 深圳网站设计兴田德润简介浙江网缘科技有限公司
  • 印度做网站设计做网站后端要学什么
  • 微信保修网站开发源代码软文素材网
  • 怎么添加网站百度商店应用市场
  • 网站建设合同怎么写石家庄商标设计
  • 公司名被注册网站电商网站如何生成app
  • 天津网站公司门户网站网站建设
  • 风雨同舟网站建设wordpress默认播放器怎么用
  • 海西州wap网站建设公司用哪个程序做网站收录好6
  • 永嘉网站制作系统无锡做食品网站的公司
  • 网站创建的流程是什么营销型网站重要特点是?
  • 网站设计工具更好的做网站运营推广怎么做
  • 深圳网站seo设计网站一个人可以做吗
  • 广东网站建设系统怎么自己弄网站
  • wordpress本地安装插件长沙seo培训班
  • 如何做淘宝优惠卷网站济南百姓网免费发布信息网
  • 广东高端网站设计公司价格wordpress json 登陆
  • 免费外贸网站模板下载小程序模板库
  • 如何做百度网站肇庆网站建设咨询
  • 外贸多语言网站十大免费ppt网站在线
  • 廊坊网站关键词排名哪个网站可以做行程表
  • 调查队网站建设开通微信公众号要收费吗