java实现不再单身,微信主动发送早安给女友
生活随笔
收集整理的這篇文章主要介紹了
java实现不再单身,微信主动发送早安给女友
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
網上案例
網上最多的可能就是利用微信服務號給推送信息,如圖所示:
缺點如下:
- 需要點進去訂閱號才能看到,沒喲起到吸引的作用
- 申請的測試服務號,也不知道多久過期,說停就給你停掉了
- 定制化的需求有的達不到
介于此,我就自己找了一個路子去做,昨晚剛寫完,測了測,效果還是比較不錯的。如下圖所示:
實現方式
下面我們來看看是如何實現的。
準備工作
假使你的準備工作除4、5之外,都已經做完了,下面我們來看看如何從代碼層面來實現。
實現原理
- 調用天行數據的api,獲取自己想要的數據,封裝起來
- 調用只能微秘書的接口,實現給微信好友發送消息
- 給控制器controller類中添加定時任務,實現定時發送
關鍵代碼如下所示:
日期處理關鍵代碼
實現給指定微信好友推送消息
/*** 每天將指定信息推送到微信個人*/@Overridepublic void sendWechatToUser() {String url = WEI_MI_SHU_API + "/openapi/v1/chat/contact";WeiZhiMiShuVO weiZhiMiShuVO = new WeiZhiMiShuVO();//發送文字信息weiZhiMiShuVO.setType(1);try {//拿到發送的消息列表SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日");SimpleDateFormat format_h = new SimpleDateFormat("yyyy-MM-dd");//今天的日期String toDate = format_h.format(new Date());//相戀的日期String lian = "2022-03-28";//兩個日期相差的天數int cha = DateUtils.getDayByTwoDay(toDate, lian);String todayDate = format.format(new Date());//根據陽歷計算農歷Calendar today = Calendar.getInstance();String week = DateUtils.getDaysByWeekChina(toDate);today.setTime(DateUtils.chineseDateFormat.parse(todayDate));DateUtils lunar = new DateUtils(today);String nongli = lunar.toString();nongli = nongli.substring(nongli.indexOf("年") + 1);StringBuilder sb = new StringBuilder();sb.append("親愛的老婆~早\n\n").append("充滿希望的一天又開始了,今天也要一直開心,不能生我氣氣~").append("\n\n今天是:").append(todayDate).append(",星期").append(week).append(",農歷").append(nongli).append("\n").append("是我們相愛的第:").append(cha).append("天").append("\n\n");JSONObject tianqiObject = TianXingApiUtil.getWeather();sb.append("目前濟南天氣:").append(tianqiObject.getString("weather")).append("\n").append("當前氣溫:").append(tianqiObject.getString("real")).append("\n").append("今天最高溫度:").append(tianqiObject.getString("highest")).append("\n").append("最低溫度:").append(tianqiObject.getString("lowest")).append("\n").append("風向:").append(tianqiObject.getString("wind")).append("\n").append("空氣質量:").append(tianqiObject.getString("quality")).append("\n").append("空氣質量指數:").append(tianqiObject.getString("aqi")).append("\n").append("小提示:").append(tianqiObject.getString("tips"));//土味情話sb.append("\n\n").append("愛你一日言:").append(TianXingApiUtil.getLoveWords()).append("\n\n【早安寄語】").append(goodMorning());weiZhiMiShuVO.setContent(sb.toString());for (String str : SEND_USER) {JSONObject object = new JSONObject();object.put("apiKey", WEI_MI_SHU_KEY);//好友昵稱object.put("name", str);//好友備注object.put("alias", str);object.put("message", weiZhiMiShuVO);String body = HttpUtil.createPost(url).body(JSON.toJSONString(object)).execute().body();System.out.println("傳遞的參數是:" + JSON.toJSONString(object));System.out.println("發送成功了嗎?" + body);}} catch (ParseException e) {e.printStackTrace();}}說明:
然后我們在控制器controller中調用該方法即可實現:
/*** 發送消息給指定的人*/@GetMapping(value = "/sendWechatToUser")@Scheduled(cron ="0 0 8 * * ?")public void sendWechatToUser(){articleService.sendWechatToUser();}cron ="0 0 8 * * ?是一個corn表達式,表示每天早上8點給指定的微信好友推送消息。
總結
以上是生活随笔為你收集整理的java实现不再单身,微信主动发送早安给女友的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue中引入并使用高德地图
- 下一篇: gw4c20b发动机_gw4c20b发动