在spring mvc中使用ajax json串来实现项目中的修改密码

1.首先使用ajax,json串来判断旧密码输入的是否正确,和数据库中的密码是否一致。首先就是在jsp界面中写代码。还有记得引入<script src="${pageContext.request.contextPath}/js/jquery-1.7.min.js"></script>。要不执行不了jQuery的代码。

<script>
	 $(function(){
		  $('#oldpwd').blur(function(){//设置一个鼠标离开的事件
			var oldpwd = $('#oldpwd').val();
            $.post("mmxglist",{oldpwd:oldpwd},function(ret){//执行mmxglist的方法,ret是controller中用来接收数据的
            	if(ret.mm == oldpwd){//判断数据库中的密码和文本框中输入的密码是否一致
            		$('#oldpwd2').text('密码输入正确');
            	}else{
            		if(oldpwd == "" || oldpwd == null){
            			$('#oldpwd2').text('原密码不能为空');
            		}else{
            			$('#oldpwd2').text('密码错误,请重新输入');
            		}
            	}
            },"json")
		})   
	})
</script>

2.在逻辑层调用业务层的方法

  //修改密码,根据id查询出对应的密码,然后对比
	@RequestMapping("/user/mmxglist")
	@ResponseBody//使用了ajax的注解
	public String mm(HttpSession httpSession) {
		@SuppressWarnings("unchecked")
		List<Map<String, Object>> userinfo = (List<Map<String, Object>>) httpSession.getAttribute("user");
		int emid = (Integer) userinfo.get(0).get("ID");//从session中获得员工编号
		String mm = userDao.mmxg(emid);//调用业务层的方法
		Map<String, Object> noMap = new HashMap<String, Object>();//创建一个集合
		noMap.put("mm", mm);//把取到的值放到集合中
		String str = JSON.toJSONString(noMap);//转化为json的串
		return str;//传到jsp文件中
	}
	
	//修改数据库中的密码
	@RequestMapping("/user/updatepwd")
	public String updatepwd(HttpSession httpSession,HttpServletRequest request) {
		@SuppressWarnings("unchecked")
		List<Map<String, Object>> userinfo = (List<Map<String, Object>>) httpSession.getAttribute("user");
		int emid = (Integer) userinfo.get(0).get("ID");//员工编号
		String qrmm = request.getParameter("qrpwd");//从前台获取到密码,作为参数
		userDao.updatepwd(qrmm, emid);//调用修改密码的方法
		return "redirect:/";//修改完密码之后重新登录
	}

3.在Dao文件中写查询旧密码,还有修改密码的方法

//查询出对应的emid,所对应的
	public String mmxg(Integer emid) {
		String sql = "select USER_PWD FROM task_user where TASK_EMPLOYEE_ID = ?";
		String mm = jt.queryForObject(sql, String.class,emid);
		return mm;	
	}
	
	//重新设置密码
	public void updatepwd(String qrmm,Integer emid) {
		String sql = "update task_user set USER_PWD=? WHERE TASK_EMPLOYEE_ID = ?";
		jt.update(sql,qrmm,emid);
	}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值