gitextract_caiphvtt/ ├── .gitignore ├── .mymetadata ├── LICENSE ├── README.md ├── pom.xml └── src/ ├── main/ │ ├── java/ │ │ └── org/ │ │ └── hamster/ │ │ └── weixinmp/ │ │ ├── config/ │ │ │ └── WxConfig.java │ │ ├── constant/ │ │ │ ├── WxMediaType.java │ │ │ ├── WxMediaTypeEnum.java │ │ │ ├── WxMenuBtnType.java │ │ │ ├── WxMenuBtnTypeEnum.java │ │ │ ├── WxMsgEventType.java │ │ │ ├── WxMsgEventTypeEnum.java │ │ │ ├── WxMsgRespType.java │ │ │ ├── WxMsgRespTypeEnum.java │ │ │ ├── WxMsgType.java │ │ │ └── WxMsgTypeEnum.java │ │ ├── controller/ │ │ │ ├── WxController.java │ │ │ └── util/ │ │ │ ├── WxJsonUtil.java │ │ │ └── WxXmlUtil.java │ │ ├── dao/ │ │ │ ├── entity/ │ │ │ │ ├── auth/ │ │ │ │ │ ├── WxAuth.java │ │ │ │ │ └── WxAuthReq.java │ │ │ │ ├── base/ │ │ │ │ │ ├── WxBaseEntity.java │ │ │ │ │ ├── WxBaseItemMediaEntity.java │ │ │ │ │ ├── WxBaseMsgEntity.java │ │ │ │ │ └── WxBaseRespEntity.java │ │ │ │ ├── item/ │ │ │ │ │ ├── WxItemImageEntity.java │ │ │ │ │ ├── WxItemMusicEntity.java │ │ │ │ │ ├── WxItemPicDescEntity.java │ │ │ │ │ ├── WxItemThumbEntity.java │ │ │ │ │ ├── WxItemVideoEntity.java │ │ │ │ │ └── WxItemVoiceEntity.java │ │ │ │ ├── menu/ │ │ │ │ │ └── WxMenuBtnEntity.java │ │ │ │ ├── msg/ │ │ │ │ │ ├── WxMsgEventEntity.java │ │ │ │ │ ├── WxMsgImageEntity.java │ │ │ │ │ ├── WxMsgLinkEntity.java │ │ │ │ │ ├── WxMsgLocEntity.java │ │ │ │ │ ├── WxMsgTextEntity.java │ │ │ │ │ ├── WxMsgVideoEntity.java │ │ │ │ │ └── WxMsgVoiceEntity.java │ │ │ │ ├── qr/ │ │ │ │ │ └── WxQrEntity.java │ │ │ │ ├── resp/ │ │ │ │ │ ├── WxRespImageEntity.java │ │ │ │ │ ├── WxRespMusicEntity.java │ │ │ │ │ ├── WxRespPicDescEntity.java │ │ │ │ │ ├── WxRespTextEntity.java │ │ │ │ │ ├── WxRespVideoEntity.java │ │ │ │ │ └── WxRespVoiceEntity.java │ │ │ │ └── user/ │ │ │ │ ├── WxGroupEntity.java │ │ │ │ └── WxUserEntity.java │ │ │ └── repository/ │ │ │ ├── auth/ │ │ │ │ ├── WxAuthDao.java │ │ │ │ └── WxAuthReqDao.java │ │ │ ├── item/ │ │ │ │ ├── WxItemImageDao.java │ │ │ │ ├── WxItemMusicDao.java │ │ │ │ ├── WxItemPicDescDao.java │ │ │ │ ├── WxItemThumbDao.java │ │ │ │ ├── WxItemVideoDao.java │ │ │ │ └── WxItemVoiceDao.java │ │ │ ├── menu/ │ │ │ │ └── WxMenuBtnDao.java │ │ │ ├── msg/ │ │ │ │ ├── WxBaseMsgDao.java │ │ │ │ ├── WxMsgEventDao.java │ │ │ │ ├── WxMsgImageDao.java │ │ │ │ ├── WxMsgLinkDao.java │ │ │ │ ├── WxMsgLocDao.java │ │ │ │ ├── WxMsgTextDao.java │ │ │ │ ├── WxMsgVideoDao.java │ │ │ │ └── WxMsgVoiceDao.java │ │ │ ├── resp/ │ │ │ │ ├── WxRespImageDao.java │ │ │ │ ├── WxRespMusicDao.java │ │ │ │ ├── WxRespPicDescDao.java │ │ │ │ ├── WxRespTextDao.java │ │ │ │ ├── WxRespVideoDao.java │ │ │ │ └── WxRespVoiceDao.java │ │ │ └── user/ │ │ │ ├── WxGroupDao.java │ │ │ └── WxUserDao.java │ │ ├── exception/ │ │ │ └── WxException.java │ │ ├── gson/ │ │ │ └── WxMenuBtnSerializer.java │ │ ├── model/ │ │ │ ├── WxAccessTokenJson.java │ │ │ ├── WxRespCode.java │ │ │ ├── menu/ │ │ │ │ ├── WxMenuCreateJson.java │ │ │ │ └── WxMenuGetJson.java │ │ │ ├── qr/ │ │ │ │ ├── WxQrActionInfoJson.java │ │ │ │ ├── WxQrCreateJson.java │ │ │ │ └── WxQrSceneJson.java │ │ │ ├── send/ │ │ │ │ ├── SendImageJson.java │ │ │ │ ├── SendItemPicDescJson.java │ │ │ │ ├── SendMusicJson.java │ │ │ │ ├── SendTextJson.java │ │ │ │ ├── SendVideoJson.java │ │ │ │ ├── SendVoiceJson.java │ │ │ │ └── item/ │ │ │ │ ├── SendItemArticleJson.java │ │ │ │ ├── SendItemImageJson.java │ │ │ │ ├── SendItemMusicJson.java │ │ │ │ ├── SendItemTextJson.java │ │ │ │ ├── SendItemVideoJson.java │ │ │ │ ├── SendItemVoiceJson.java │ │ │ │ └── wrapper/ │ │ │ │ └── WxSendItemArticleWrapper.java │ │ │ └── user/ │ │ │ ├── WxOpenIdListJson.java │ │ │ └── WxUserGetJson.java │ │ ├── service/ │ │ │ ├── WxAuthService.java │ │ │ ├── WxMediaService.java │ │ │ ├── WxMenuService.java │ │ │ ├── WxMessageService.java │ │ │ ├── WxQrService.java │ │ │ ├── WxStorageService.java │ │ │ ├── WxUserGroupService.java │ │ │ ├── WxUserService.java │ │ │ └── handler/ │ │ │ └── WxMessageHandlerIfc.java │ │ └── util/ │ │ └── WxUtil.java │ ├── resources/ │ │ ├── applicationContext-weixinmp.xml │ │ └── wx.properties │ └── webapp/ │ ├── META-INF/ │ │ └── MANIFEST.MF │ ├── MyHtml.html │ ├── WEB-INF/ │ │ ├── classes/ │ │ │ └── weixin/ │ │ │ └── popular/ │ │ │ └── example/ │ │ │ └── pay_example.jsp.jsp │ │ └── web.xml │ ├── default/ │ │ └── index.html │ └── index.jsp └── test/ ├── java/ │ └── org/ │ └── hamster/ │ └── weixinmp/ │ └── test/ │ ├── base/ │ │ ├── AbstractServiceTest.java │ │ └── AbstractWxServiceTest.java │ ├── controller/ │ │ └── WxControllerManualTest.java │ ├── service/ │ │ ├── WxGroupServceTest.java │ │ ├── WxMediaServiceTest.java │ │ ├── WxMenuServiceTest.java │ │ ├── WxQrServiceTest.java │ │ ├── WxServiceTest.java │ │ └── WxUserServiceTest.java │ └── xml/ │ └── WxXMLUtilTest.java └── resources/ ├── .gitignore ├── application.development.properties ├── applicationContext-test-weixinmp.xml ├── log4j.properties └── sql/ └── import-data.sql