MySQL CURRENT_TIMESTAMP in milliseconds
DROP TABLE TEST_DATETIME;
CREATE TABLE TEST_DATETIME
(
ID INT NOT NULL AUTO_INCREMENT COMMENT 'ID',
MEMO VARCHAR(20) COMMENT '備註',
CREATE_DATE DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6),
UPDATE_DATE DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),
PRIMARY KEY (ID)
)
ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='測試DATETIME';
INSERT INTO TEST_DATETIME (MEMO) VALUES ('T'); -- 請多按幾次
UPDATE TEST_DATETIME SET MEMO = 'Y' WHERE ID = 3
-- 觀察時間
SELECT * FROM TEST_DATETIME
-- 自己看差別
SELECT CURRENT_TIMESTAMP
SELECT CURRENT_TIMESTAMP(3)
SELECT CURRENT_TIMESTAMP(6)
但搭配 hibernate 時,仍需要額外設定,Hibernate 程式寫入時,才會自動寫入時間
在 hbm 檔裡,欄位需額外加入 insert="false" update="false"
<property name="createDate" type="java.util.Date" insert="false" update="false">
<column name="CREATE_DATE" />
</property>
<property name="updateDate" type="java.util.Date" insert="false" update="false">
<column name="UPDATE_DATE" />
</property>
蛇與咖啡豆
2018年1月16日 星期二
2017年12月18日 星期一
透過 Python 發 Line Notify 三部曲 - 發圖圖圖片
要發圖片!
首先最重要的一件事! 是你必須有一張圖片!
先用 curl 下載一張圖片 (請原諒我幻想症又發作了命名為 girlfriend.jpg)
底下環境是在手機上的 Termux 執行,可參考第二篇
curl http://entdata-pic.stor.sinaapp.com/2014121008/548798f25462b01.jpg > girlfriend.jpg
接著,先透過 curl 試發 (Bearer 後面的 2Dxxx7V 的,記得換成你自己的 token)
curl -X POST https://notify-api.line.me/api/notify \ -H 'Authorization: Bearer 2D111111111111111111111111117V' \ -F 'message=test' -F 'imageFile=@/data/data/com.termux/files/home/girlfriend.jpg'
帥氣的按下 enter 後,這時你應該會看到你帥氣的 Line 彈跳出美麗的女友照片
/data/data/com.termux/files/home/ 真的是我 Termux 的家目錄
一般人應該是在 /home 而已,注意路徑前面要加個 @
好,不廢話,因為現在超累超想睡,明天還要上班,我要 GG 了…
Python 程式碼如下:
import requests, os """ 發送 Line Notify 訊息 """ def lineNotify(token, msg, picURI): url = "https://notify-api.line.me/api/notify" headers = { "Authorization": "Bearer " + token } payload = {'message': msg} files = {'imageFile': open(picURI, 'rb')} r = requests.post(url, headers = headers, params = payload, files = files) return r.status_code token = os.environ["LINE_TEST_TOKEN"] msg = "Hello Python" picURI = "/data/data/com.termux/files/home/girlfriend.jpg" lineNotify(token, msg, picURI)
好啦,其實我是參考這篇來著的
如果你有卡關,可以先參考看看
第一篇,透過 Python 發 Line Notify
第二篇,透過 Python 發 Line Notify 二部曲 - 發表情符號
補充,突然想到,其實你的 D 槽裡面不用有一堆圖片也沒關係
也可以直接發網路上 http:// 上的圖片的樣子,但這個需求應該比較少
因為還要上傳到網路上,再指定該網址,就不再試了
透過 Python 發 Line Notify 二部曲 - 發表情符號
自從用了 Termux,覺得這真的是他媽的好物!!
簡單講,它就是讓你沒啥屁用的手機搖身一變成一台強大的 Linux 主機! (絕對可以跑 python)
之前看到人家說 pythonAnywhere 是利器! 結果花了時間嘗試後,發現連 requests.get 都不行,一定得花錢才能有些作用,這根本是在浪費我寶貴的人生嘛… 雖然說免費的最貴,但我就是不想花錢!
除了我的 0050深似海Line群組 目前的自動通知 notify 程式是跑在上面以外,這次試 Line 發圖片也是先在上面跑 crul 到 line 的網址作測試
比如這次先用 curl 發 Line Notify 表情符號,透過 putty 連入手機
(Bearer 後面的 2Dxxx7V 的,記得換成你自己的 token)
curl -X POST https://notify-api.line.me/api/notify \ -H 'Authorization: Bearer 2D111111111111111111111R7V' \ -F 'message=test' -F 'stickerPackageId=1' -F 'stickerId=114'
如圖:
用了 Termux 後,
不再需要開 vmware 或 virtualbox 耗掉自己電腦的效能!
你的手機就是一台強大的 Linux 主機了!
恩,廢話又講太多了,用 python 透過 Line Notify 傳表情符號
import requests, os """ 發送 Line Notify 訊息 + 表情符號 """ def lineNotify(token, msg, stickerPackageId, stickerId): url = "https://notify-api.line.me/api/notify" headers = { "Authorization": "Bearer " + token } payload = {"message": msg, "stickerPackageId": stickerPackageId, 'stickerId': stickerId} r = requests.post(url, headers = headers, params = payload) return r.status_code token = os.environ["LINE_TEST_TOKEN"] msg = "Hello Python" stickerPackageId = 2 stickerId = 38 lineNotify(token, msg, stickerPackageId, stickerId)
最後,參考資料,表情符號對照 ID 可參考此文件:
https://devdocs.line.me/files/sticker_list.pdf
如果你只是要單純傳訊息,可參考之前的第一篇
如果你要發圖片,請參考第三篇…
透過 Python 發 Line Notify 三部曲 - 發圖圖圖片
2017年12月17日 星期日
透過 Python 發 Line Notify
透過 Line Notify 機制發 Line 訊息提醒自己其實超簡單
網路上很多教學要設定一拖拉庫,有點沒必要
最難的大概就在設定 token 而已吧,但也其實就是下面這樣而已
請留意,務必使用電腦版申請,因為用手機版似乎會拉不到最下面
到設定網址 https://notify-bot.line.me/zh_TW/ 進行登入
登入後在右上角自己的名字下拉選單點選「個人頁面」
進行後往下拉,會看到如圖,按下「發行權杖」
接著就是出現一堆你自己的群組讓你選,第一次你應該選那個很厲害的
「透過1對1聊天接受LINE Notify的通知」,開發時用來進行測試
測完再再開始胡亂發到各個群組去~
填完一個帥氣的
這時你應該已經得到那該死的權杖了 (後續在程式裡我叫它 token)
他長的像底下這樣,要記下來,後續好像沒辦法查
1e23xIfEx53QJUuewWpkldrxdf23clIW1x0VaxdfDCew7V
若找不到發行,應是解析度問題,請按 ctrl + 滑鼠下滾,應該就可以看到發行按鈕
得到權杖後,python 發 line 對你應該沒難度了
執行
pip install lineTool
''' 測試 Line Notify Created on 2017年12月11日 @author: rocky.wang ''' import os import lineTool # token 改成你自己的,底下的案例是設到環境變數 token = os.environ["LINE_TEST_TOKEN"] # 這是放明碼,不建議,以免不小心就 push 到 github 上了 token = "1e23xIfEx53QJUuewWpkldrxdf23clIW1x0VaxdfDCew7V" msg = "Notify from Python \nHave a nice day" lineTool.lineNotify(token, msg)
如果你有潔屁,不想安裝奇奇怪怪的 lineTool
原始碼其實只有這樣,就自己寫囉
剛沒注意到把自己真實的 token 給放上去了,所以還是建議放環境變數以免不小心就把自己的 token 給 push 到 github 了,就冏了
import requests """ 發送 Line Notify 訊息 """ def lineNotify(token, msg): url = "https://notify-api.line.me/api/notify" headers = { "Authorization": "Bearer " + token, "Content-Type" : "application/x-www-form-urlencoded" } payload = {'message': msg} r = requests.post(url, headers = headers, params = payload) return r.status_code
續集
透過 Python 發 Line Notify 二部曲 - 發表情符號
2017年11月14日 星期二
測試第一篇文章
這是內容
class Voila { public: // Voila static const string VOILA = "Voila"; // will not interfere with embedded tags. }
def sendMail(subject): print(subject) sendMail("Hello")
/** * 讀取 word 範本與 POI 產生報告 * * @author Rocky */ public class WordReportDemo01 { public static void main(String[] args) throws Exception { new WordReportDemo01().execute(); } private void execute() throws Exception { Student student1 = new Student("子瑜", 79, "做的非常好"); Student student2 = new Student("小明", 89, "記得多運動"); createWordFile(student1); createWordFile(student2); } }
訂閱:
文章 (Atom)