jfinal 学习3

原创
2016/01/26 16:50
阅读数 92

给follow表增加一个字段memo,使用beanGenerator重新生成model和base model

然后刷新项目,是文件的变化体现出来。

为了省得写页面,决定通过微信发送 备注(空格)备注名 的方式来更新备注,为model添加特殊更新方法

在TextMsgService类中添加方法

        private boolean changeMemo(String memo, String openid){
		
		return false;
	}

修改TextMsgService类中的mappingKeyword方法

public OutMsg mappingKeyword(InTextMsg inTextMsg) {
		String content = inTextMsg.getContent().trim();
		OutTextMsg outTextMsg = new OutTextMsg(inTextMsg);
		if (content.indexOf("备注") == 0) {
			if (content.split(" ").length == 2) {
				String memo = content.split(" ")[1];
				if (changeMemo(memo, inTextMsg.getFromUserName())) {
					outTextMsg.setContent("你的备注名已修改为:" + memo);
					return outTextMsg;
				} else {
					outTextMsg.setContent("你的备注名修改失败!");
					return outTextMsg;
				}
			}
		}
		outTextMsg.setContent("你输入的文字信息是:" + inTextMsg.getContent());
		return outTextMsg;
	}

使用微信发送信息测试,如图:

下面为model添加方法

        public boolean update(String memo, String openid){
		return Db.update("update follower set memo = ? where openid = ?",new Object[]{memo, openid}) == 1 ? true : false;
	}

返回到TextMsgService类中,为changeMemo方法补全

        private boolean changeMemo(String memo, String openid) {
		return Follower.dao.update(memo, openid);
	}

部署项目,测试

查看数据库内容,可以看到修改成功!

将FollowerService类的getFollowerInfo中奖memo初始化为昵称

        public void getFollowerInfo(String openid){
		ApiResult apiResult = UserApi.getUserInfo(openid);
		Follower follower = JsonUtils.parse(apiResult.getJson(), Follower.class);
		Follower follower2 = null;
		if ((follower2 = Follower.dao.findFirst("select * from follower where openid = ?",
				new Object[]{follower.getOpenid()})) == null) {
			follower.setMemo(follower.getNickname());
			follower.save();
		} else {
			follower2.setMemo(follower2.getNickname());
			follower2.setSubscribe(1);
			follower2.update();
		}
	}


展开阅读全文
打赏
1
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
1
分享
返回顶部
顶部