wechat4j
What is wechat4j?
wechat develop framework for java(微信開發框架JAVA版,最簡單易用微信開發框架)
wechat4j可以用來干什么?
wechat4j是一個幫助你開發微信應用的jar包,使用它,你開發微信公眾號應用只需要幾秒鍾的時間,完全不用關注太細節的東西。
wechat4j快速開始
可以去下載wechat4j示例項目,然后在其基礎之上修改即可。如果你要自己搭建,那么使用wechat4j只需要兩步就可以搭建微信開發環境。
- 創建一個web工程,導入jdk和相關的web工程jar包。
- 下載wechat4j.jar包,下載地址wechat4j下載。
- 創建wechat4j配置文件,在src目錄下(java根目錄)創建wechat4j.properties文件,配置你微信公眾號的相關信息。內容如下:
#you server url
wechat.url=
#you wechat token
wechat.token=token
#message secret key,if don't set then message is cleartext
wechat.encodingaeskey=
#wechat appid
wechat.appid=appid
#wechat app secret
wechat.appsecret=secret
#wechat access token server ,when you save in db,must implement you server class
#this class must extend org.sword.wechat4j.token.DbAccessTokenServer
#if no this property,then token server is default memery accesstoken server()
wechat.accessToken.server.class=
#jsapi_ticket customer server class name,
#this class must extend org.sword.wechat4j.token.server.CustomerServer
#if no this property,then ticket server is default memery ticket server
wechat.ticket.jsapi.server.class=
你也可以在jar包的META-INF目錄下找到wechat4j.properties.sample文件,復制到src目錄下修改名稱即可。wechat4j.properties配置文件的配置項意義參見wechat4j配置文件解讀
通過以上步驟,你的微信工程就完全搭好了。
wechat4j 運行環境
wechat4j要求的最低java運行環境是jdk1.6
wechat4j.jar的依賴jar包
- commons-codec.jar 1.3以上
- commons-lang3.jar
- log4j.jar 1.2以上
- fastjson-1.2.0.jar
- fluent-hc-4.3.6.jar(httpclient依賴)
- httpclient-4.3.6.jar
- httpcore-4.3.3.jar (httpclient依賴)
- servlet-api.jar 如果你是web工程,導入支持web工程的包就會包括,例如tomcat包
開發自己的微信應用
wechat4j開發環境搭好之后,就可以開始開發自己的微信應用了。比如我有一個微信號的token是lejian,下面就以她為例子來說明。
創建自己公眾號服務類
創建自己的微信公眾號服務類,需要繼承wechat4j的WechatSupport類,然后實現其抽象方法即可,下面以文本消息處理為例子
public class Lejian extends WechatSupport{
public Lejian(HttpServletRequest request, String token) {
super(request, token);
}
@Override
protected void onText() {
this.wechatRequest.getFromUserName();
String content = "test ok";
responseText(content);
}
}
上面代碼中的onText()
是WechatSupport的抽象方法,需要你自己的類來實現,表示對文本消息的處理,示例中是接收到用戶的消息之后,返回給用戶“test ok”文本消息。
創建微信服務地址
創建微信服務地址(微信公眾平台中配置的自己服務器地址)servlet類。如果是springmvc則創建對應的controller,如果是struts則創建對應的action類。servlet類示例如下:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Lejian lejian = new Lejian(request, TOKEN);
String result = lejian.execute();
response.getOutputStream().write(result.getBytes());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Lejian lejian = new Lejian(request, TOKEN);
String result = lejian.execute();
response.getOutputStream().write(result.getBytes());
}
通過上面兩步你的微信服務就可以運行了
如何得到微信的請求參數
繼承了WechatSupport
類之后,你可以通過wechatRequest.getFromUserName()
類似的方法來得到微信服務器請求的參數。詳細信息請閱讀微信請求參數
如何設置響應參數
繼承了WechatSupport
類之后,你可以通過wechatResponse.setFromUserName(fromUser)
類似的方法來設置給微信服務器的響應參數。詳細信息請閱讀響應微信服務器參數
如何響應用戶信息
以文本信息為例,響應文本信息只需要在你的onText
方法中使用responseText(content)
即可(參見上面的代碼例子)
wechat4j示例項目
如果你有好的demo項目,請郵件或者修改本文件然后pull request給我,我會列在上面。
技術支持
- wechat4j技術交流QQ群 423134346
- 支持郵件 sword_org@163.com
- wechat4j暫無論壇,歡迎開通論壇交流版塊,如果開通請郵件,我會添加到這里。
貢獻代碼
- 如果你覺得本項目不錯,希望你能夠點擊一下右上角的star
- 如果你希望參與改進本項目,那么請點擊右上角的fork,修改之后pull request即可。如果你的貢獻不錯,你就會收到加入sword開源社區的邀請。
- 如果你發現了一個bug,請你創建一個issue來報告。
非常非常歡迎你能夠參與本項目的建設,每人做出一點點貢獻,對整個項目來說就是一個非常大的貢獻,希望集合眾人的力量,讓項目走的更好,能夠為更多的人服務。