Skip to content
WangZhen edited this page May 24, 2016 · 8 revisions

wechat4j

##What is wechat4j? wechat develop framework for java(微信开发框架JAVA版,最简单易用微信开发框架)

##wechat4j可以用来干什么? wechat4j是一个帮助你开发微信应用的jar包,使用它,你开发微信公众号应用只需要几秒钟的时间,完全不用关注太细节的东西。

##wechat4j快速开始 可以去下载wechat4j示例项目,然后在其基础之上修改即可。如果你要自己搭建,那么使用wechat4j只需要两步就可以搭建微信开发环境。

  1. 创建一个web工程,导入jdk和相关的web工程jar包。
  2. 下载wechat4j.jar包,下载地址wechat4j下载
  3. 创建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 {
!!!!!!!!!!EEEEERRRRRRRR!!!!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
  • 支持邮件 [email protected]
  • wechat4j暂无论坛,欢迎开通论坛交流版块,如果开通请邮件,我会添加到这里。

##贡献代码

  1. 如果你觉得本项目不错,希望你能够点击一下右上角的star
  2. 如果你希望参与改进本项目,那么请点击右上角的fork,修改之后pull request即可。如果你的贡献不错,你就会收到加入sword开源社区的邀请。
  3. 如果你发现了一个bug,请你创建一个issue来报告。 非常非常欢迎你能够参与本项目的建设,每人做出一点点贡献,对整个项目来说就是一个非常大的贡献,希望集合众人的力量,让项目走的更好,能够为更多的人服务。

###贡献者列表