使用Hutool发送工作日报
需求来源
某一天Hutool群中有美女(也可能是抠脚大汉)抱怨领导,说让ta每天写工作日报,说明今天做了哪些工作,每周还有周报。美女遇到问题嘛,本着能聊则聊,能帮则帮的原则,于是使用Hutool写了一个Demo。
使用到的模块和工具类
- cron模块,用于定时发送邮件
- extra模块,MailUtil,用于发送邮件
- poi模块,WordWriter,用于生成日报的word
Demo介绍
Demo项目可以访问码云地址获取:https://gitee.com/loolly_admin/daily-work
项目结构
src/main/javacn/hutool/example/dailyWork/DailyWorkGenerator.java ---- 日报生成器,用于生成Word文档MailSendTask.java ---- 邮件发送任务,用于发送邮件DailyWorkMain.java ---- 定时任务主程序,用于启动定时任务src/main/resourcesconfig/cron.setting ---- 定时任务配置文件mail.setting ---- 邮箱配置文件
代码实现
- 生成日报Word
/** 标题字体 */
private static final Font TITLE_FONT = new Font("黑体", Font.PLAIN, 22);
/** 正文字体 */
private static final Font MAIN_FONT = new Font("宋体", Font.PLAIN, 14);/*** 生成日报* * @return 日报word文件*/
public static File generate() {// 1、准备文件File wordFile = FileUtil.file(StrUtil.format("每日工作汇报_{}.docx", DateUtil.today()));if(FileUtil.exist(wordFile)) {// 如果文件存在,删除之(可能上次发送遗留)wordFile.delete();}// 生成并写出wordWord07Writer writer = new Word07Writer(wordFile);writer.addText(ParagraphAlignment.CENTER, TITLE_FONT, "工作日报");writer.addText(MAIN_FONT, "");writer.addText(MAIN_FONT, "尊敬的领导:");writer.addText(MAIN_FONT, " 今天我在Hutool群里摸鱼,什么工作也没做。");writer.close();return wordFile;
}
- 发送邮件
在mail.setting中配置发件箱信息
# 发件人(必须正确,否则发送失败)
from = Hutool<hutool@yeah.net>
# 用户名(注意:如果使用foxmail邮箱,此处user为qq号)
user = hutool
# 密码
pass = XXXX#使用 STARTTLS安全连接
startttlsEnable = true
#使用 SSL安全连接
sslEnable = true
// 今天的日期,格式类似:2019-06-20
String today = DateUtil.today();// 生成汇报Word
File dailyWorkDoc = DailyWorkGenerator.generate();
// 发送邮件
MailUtil.sendHtml("hutool@foxmail.com", StrUtil.format("{} 工作日报", today), "请见附件。", dailyWorkDoc);StaticLog.debug("{} 工作日报已发送给领导!", today);
- 定时发送
我们将刚才的发送邮件作为定时任务加入到配置文件:
[cn.hutool.example.dailyWork]
# 每天下午6点定时发送
MailSendTask.execute = 00 00 18 * * *
- 启动定时任务
// 设置秒匹配(只有在定时任务精确到秒的时候使用)
CronUtil.setMatchSecond(true);
// 启动定时任务,自动加载配置文件中的内容
CronUtil.start();
效果:
转载于:https://my.oschina.net/looly/blog/3064203
使用Hutool发送工作日报相关推荐
- 我的工作日报 - 2020-9-16 星期三
现在加入了新的团队,每天都要写工作日报了. yesterday I was doing exercises about routing topic using routerLink in a tag, ...
- 我的工作日报 - 2020-9-15 星期二
现在加入了新的团队,每天都要写工作日报了. I am studying Observable stream in rxjs today, and do exercise regarding custo ...
- 我的工作日报 - 2020-9-11 星期五
现在加入了新的团队,每天都要写工作日报了. I am learning Angular dependency injection mechanism today, I create my own pr ...
- jsp日报系统+mysql_工作日报系统软件(运行web程序+说明) 日报管理系统 - 下载 - 搜珍网...
文件名大小更新时间 工作日报系统软件(运行web程序+说明)\工作日报系统软件\ribao\app\add.html29272015-01-16 工作日报系统软件(运行web程序+说明)\工作日报系统 ...
- 用 Python 写脚本发送工作周报
事情的起因是这样的,每周都要发送工作周报,标题是需要的固定的格式(方便规则收信),比如 [工作周报] xxx 11.20-11.24,发送和抄送也是给固定的人,企业邮箱还没有模板,所以每次发邮件都要复 ...
- eDiary-白日梦电子记事本基本使用说明【记事本导出和导入方法、本地数据迁移方法、记录工作日报、日历代办等】
文章目录 说明 笔记导出与导入 导出 导入 本地数据迁移及备份 本地备份说明 恢复 记录工作日报记录今天发生美事等 日历代办 说明 因为公司大佬分享资料,需要用到白日梦这个电子记事本,所以才了解到这个 ...
- Flowable发送工作提醒
1.利用flowable的时间监听器+websokect给用户发送工作提醒 @Component public class ProcessEndListener implements Flowable ...
- 项目实践-SpringBoot项目对接钉钉发送工作通知
项目实践-SpringBoot项目对接钉钉发送工作通知 **书山有路勤为径,学海无涯苦作舟** 记录程序员生活点点滴滴,希望记录的内容能帮助到努力爬山的各位伙伴!标签:Java/钉钉/工作通知 前言 ...
- 【邮件服务】hutool发送腾讯企业邮箱案例
目录 一.hutool发送腾讯企业邮箱 1. 引入依赖 2. 配置resources/config/mail.setting 3. 发送实例,更多参考hutool邮件发送文档 4. 发送结果 参考 ...
- 项目对接浙政钉发送工作消息到浙政钉用户
项目对接浙政钉发送工作消息到浙政钉用户 一:项目背景 项目需要将设备采集的异常信息,推送给浙政钉的运维用户. 二对接浙政钉消息组件 首先需要注册isv,注册地址为 专有钉钉门户 (dg-work.cn ...
最新文章
- hostapd移植与使用
- linux ftp登录命令_Linux使用pinky命令查询登录用户信息
- JavaScript中的继承
- js 转换数字为decmail_BigDecmail(解决java计算精度问题)
- git 入门教程之协同开发
- WP8.1学习系列(第一章)——添加应用栏
- 点到点链路上的ospf
- mysql+keepalived必须要lvs吗_Mysql双主热备+LVS+Keepalived高可用操作记录
- 杭州刚公布完摇号卖房新政,隔天就来个百亿地王,大家怎么看?
- 十四、数据库设计三范式
- arcgis10.1连接sqlserver数据库常见问题(转载)
- 紧跟潮流的背景设计,赶紧尝试用新的背景改变旧的设计。
- 《Linux编程》学习笔记 ·002【Linux常用工具GCC、GDB、Make】
- 数字电路实验四选一数据选择器行为级模型
- Servlet原理解析
- 播布客里小布老师的所有视频收集
- IT项目验收规范参考
- 数据结构与算法分析 收获总结 第11章 图
- 2019考研上海交通大学823计算机通信网真题回忆
- Win7虚拟机安装 Mac OS X Lion 10 7 2 及 XCode 4 2 1 iOS SDK5 0 作开
热门文章
- 初生牛犊不怕虎,管他呢! 干就是了。
- Easyui DataGrid 尾行添加合并行
- Google Earth Engine——在控制台中打印出喜马拉雅山脉的动态图,需要用到join链接来实现(含案例)
- 修复下载后已发生损坏的压缩包(.rar)文件
- psd 直接导入unity
- Python 于 webgame 的应用
- pixi 小游戏_pixi2d小游戏跳一跳源码/pixi教程,基于pixi-spine的2d游戏
- python 005 __ 小斌文档 | 函数的定义和调用
- 2022学生党蓝牙耳机怎么选?最新蓝牙耳机排行榜
- test1asfd 按时收费的水电费阿萨德阿斯蒂芬啊