发表于: 2017-10-26 23:17:17

2 752


今天完成的事情:

1.使用ajax返回参数,对比服务端内的验证码和用户输入的验证码

$(document).ready(function () {
   $("#btn").click(function () {
       var obj = {};
       obj['email'] = $("#email").val();
       $.ajax({
                      type:"POST",
           url:"${ctx}/email/code",
           dataType:"json",
           contentType:"application/json",
           data:JSON.stringify(obj),
           success:function(result){
                              alert("验证码发送成功!");
               $("#code").val(result);
           }
       });
   });
});


<input name="code" id="code" type="text" value="" hidden>

控制器返回信息时,改变上面input中的value,放入返回的验证码


响应控制器:

 //提交email注册表单
   @RequestMapping(value = "/email/user", method = RequestMethod.POST)
   public ModelAndView registerByEmail(HttpServletRequest request, User user) {
       ModelAndView mv = new ModelAndView();

       //获取JSP参数
/*        String username = request.getParameter("username");
       String password = request.getParameter("password");*/
       String code = request.getParameter("code");
       String userCode = request.getParameter("userCode");
       String username = user.getUsername();
       String password = user.getPassword();

       //防止重复的用户名,以及用户名、密码为空,并要求用户名要不小于2,验证验证码
       if (userService.selectUserByName(username) == null && !username.equals("")
               && !password.equals("") && username.length() >= 2 && code.equals(userCode)) {
           //插入数据库前对密码加盐
           user.setPassword(userService.setPasswordBySalt(username, password));
           userService.insertUser(user);

           mv.addObject("username", user.getUsername());
           mv.addObject("email", user.getEmail());
           mv.setViewName("registerSuccess");
           return mv;
       }
       mv.setViewName("registerFail");
       return mv;
   }


效果:


注:手机短信功能只有我一个手机号码能收到,其他人无法测试


2.然后是漫长的jsp页面编写时间……

不太熟练,写的有点慢

长长长长的代码就不放了,直接放github链接

https://github.com/QingDongz/Task7

描述一下功能

展示所有用户——》用户详情——》数据:头像(验收标准没要求做,就没做了,姑且放了个img链接)、邮件、手机号码——》修改数据——》可修改头像(上传)、手机号码、邮件地址


注:上传的方式要改成覆盖上传


这个折腾了半天,用表单提交的话,若将上传文件功能去掉,可以使用put方法,加上上传文件功能,浏览器会提示“post不响应当前提交”

最后选择直接使用post方式提交


服务器效果展示:http://www.summerwaves.cn:8080/


明天计划的事情:

延期了啊啊啊啊啊啊啊啊,明天做完配置文件更改云存储,完善下功能就可以交任务了


遇到的问题:

1.不够熟练,集成项目小问题不断,JSP还有什么DAO之类的,每个解决十几二十分钟,累计下来,一天就过去了

2.上传文件不能使用PUT方法,或许使用ajax提交表单可以解决这个问题,现在的方案是使用了POST方式提交


收获:

学到了上传文件的方法,还有如何使用AJAX接收调用控制器后返回的值


进度:

任务7开始时间:2017.10.18

预计demo时间:2017.10.26

已延期,延期至2017.10.27

再次延期风险:无

禅道

http://task.ptteng.com/zentao/project-task-350.html






返回列表 返回列表
评论

    分享到