使用Spring boot搭建Wechat(企业微信)Demo -图文教程 -02 Demo Starting

本文档是Spring Boot结合企业微信搭建Demo的教程,主要讲解了从项目初始化、配置Wechatsecret.properties、创建实体和控制器,到使用Properties解析类和工具类的全过程。文中还提醒注意应用权限、调用频率限制,并提供了部署到Linux服务器的注意事项。
摘要由CSDN通过智能技术生成

Spring Boot-Wachat Demo 【2】

在这里插入图片描述
Demo开始

本期的Wechat Demo主要是给大家一个思路,因为各人、各司的需求都不一样,规则根据实际需求拟定即可。本期内容仅包含获取Accesstoken、person-addnew、dept-addnew。如需其他接口可以再企业微信API官网拿来替换调试一下就可以了。另企业微信没有封装对应的JAR,所以内容较零散,根据个人的代码和尽量多的注释量来说明。

这里先给大家推一本书,内容比较有意思。更有意思的是这个思想比较早,现在才反应过来是个不错的书儿:领域驱动设计:软件核心复杂性应对之道

具体的书籍信息牵扯版权问题不好分享,大家可以在百度上欣赏一下。

1、新建好的项目上理一下思路

此Demo不含系统对接,暂时也不用Database,就以虚拟数据为准
在这里插入图片描述
其实和常用项目一致,首先确认好自己代码风格,把一些关键包、类名准备一下,养成一个好的习惯,某种意义上也是增强代码的可读性。

2、几个注意的点

(1)、新建应用(如何新建这里就不过多重复了),检查你的应用是否开通通讯录权限
(2)、准备agentid、corpid、secret
(3)、要注意企业微信的主动调用频率,其实普通应该都不会有影响,涉及到大密集的数据进入时可以参考一下官方文献,也算是准备工作。企业微信主动调用频率

3、准备好Wechatsecret.properties

已分享的Demo因为涉及隐私,这个文件不包含,但是可以根据代码块放上可以直接使用!

#--weixin --
weixin.agentid=
weixin.corpid=
weixin.corpsecret=

4、新建所需的实体

这里以AccessToken、Person、Department三个实体来应用,有点灌水,大家可根据所需字段自己写这部分,我这里分享一下Department供参考。

public class WechatDepartmentEntrty {
   

	/**
	 * 部门名称
	 */
	private String name;
	/**
	 * 部门英文名称
	 */
	private String name_en;
	/**
	 * 父部门编号
	 */
	private String parentid;
	/**
	 * 排序
	 */
	private Integer order;
	/**
	 * 编号
	 */
	private String id;
	
	
	public String getName() {
   
		return name;
	}

	public void setName(String name) {
   
		this.name = name;
	}

	public String getName_en() {
   
		return name_en;
	}

	public void setName_en(String name_en) {
   
		this.name_en = name_en;
	}

	public String getParentid() {
   
		return parentid;
	}

	public void setParentid(String parentid) {
   
		this.parentid = parentid;
	}

	public Integer getOrder() {
   
		return order;
	}

	public void setOrder(Integer order) {
   
		this.order = order;
	}

	public String getId() {
   
		return id;
	}

	public void setId(String id) {
   
		this.id = id;
	}
	

}

5、参数类

public class WechatConstants {
   
 
    // 获取access_token的url
    public static final String ACCESS_TOKER_URL = "https://qyapi.weixin.qq.com/cgi-bin/gettoken";
 
    // 根据code获取成员信息的url
    public static final String GET_OAUTH2_URL = "https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE&agentid=AGENTID";
 
    //获取创建部门 的url
    public static final String POST_department_URL = "https://qyapi.weixin.qq.com/cgi-bin/department/create?access_token=";
    
    //获取创建员工 的url
    public static final String POST_person_URL = "https://qyapi.weixin.qq.com/cgi-bin/user/create?access_token=";
}

6、控制器


/**
 * wechat控制器
 */

@RestController
public class WechatController {
   

    @RequestMapping("/testtoken")
    public String access_token() {
   
        WechatAccessTokenEntrty accessToken = WechatUtil.access_token();
        System.out.println("accessToken " + accessToken.toString());
        return accessToken.getAccess_token();
    }


    @RequestMapping("/testdept")
    public String testdept() {
   
        WechatAccessTokenEntrty accessToken = WechatUtil.access_token();
        // 加载token   7200毫秒
        System.out.println("accessToken " + accessToken.toString());

        //部门新增
        WechatDepartmentEntrty department = new WechatDepartmentEntrty();
        department.setName("测试部门");
        department.setName_en("ITtest");
        department.setParentid("1");
        department.setOrder(999);
        department.setId("555");
        WechatUtil.createDept(department,accessToken.getAccess_token());
        //String department_to = WeiXinQiYeUtil.createDept(department,accessToken.getAccess_token());
        //测试demo不处理department_to,返回参数插入中间表


        //人员新增
        WeChatPersonEntrty weChatPerson =new WeChatPersonEntrty();
        weChatPerson.setUserid("lierxiao");
        weChatPerson.setName("李二小");
        weChatPerson.setAlias("ellison");
        weChatPerson.setMobile("18800000000");
        weChatPerson.setDepartment("555");
        weChatPerson.setOrder(10);
        weChatPerson.setPosition
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值