Spring 集成 JFinal 获取微信公众号用户信息

首先导入必须的jar包:

<dependency>
    <groupId>com.jfinal</groupId>
    <artifactId>jfinal</artifactId>
    <version>3.2</version>
</dependency>
<dependency>
	<groupId>com.jfinal</groupId>
	<artifactId>jfinal-weixin</artifactId>
	<version>1.9</version>
</dependency>


再web.xml加载JFinal:

<filter>
	<filter-name>jfinal</filter-name>
	<filter-class>com.jfinal.core.JFinalFilter</filter-class>
	<init-param>
		<param-name>configClass</param-name>
		<param-value>com.ymkj.bxld.common.weixin.WeixinConfig</param-value>
	</init-param>
</filter>
<filter-mapping>
	<filter-name>jfinal</filter-name>
	<url-pattern>/weixin/*</url-pattern>
</filter-mappin


配置完成后,要修改javen_config.txt文件:

appId=wx1d1e14713044b6aa
appSecret=83e11994830347419b05ec3f5075fc72
上面两个key的值在微信公众号测试平台去扫二维码会给你生成。


修改完配置文件,修改加载此配置文件的类,根据自己的需求修改:

路径:jfinal-weixin-demo\src\main\java\com\javen\common\APPConfig.java


以上配置完,可以通过JFianl-weixin的api去调用微信公众号接口。

例如:获取公众号用户信息接口

ApiResult ar = UserApi.getUserInfo(openId);
通过以上代码就可以后去到用户信息。


注意的几点:

1、赋值appId合appSecret的时机,这两个参数在调用接口之前事必须要设置的,好多地方都可以设置,我是在调用方法之前和之后会做处理,写一个拦截器,在sping中配置,代码如下:

public class MyApiInterceptor implements HandlerInterceptor {

	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
			throws Exception {
		ApiConfig  apiConfig = new ApiConfig();
		apiConfig.setAppId(PropKit.get("appId"));
		apiConfig.setAppSecret(PropKit.get("appSecret"));
		ApiConfigKit.putApiConfig(apiConfig);
		return true;
	}

	@Override
	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
			ModelAndView modelAndView) throws Exception {
	}

	@Override
	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
			throws Exception {
		ApiConfigKit.removeApiConfig(PropKit.get("appId"));
	}
	
}

preHandle方法中设置appId和appSecret;

afterCompletion方法中清空appId,否则第二次进入,access_token生成会有问题。因为appId是放到ThreadLocal中的,具体的代码看demo。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值