Web-项目_云笔记-注册模块

js部分的代码

<script type="text/javascript">
$(function(){
	//登陆功能事件绑定
	$("#login").click(userLogin);
	//注册功能时间绑定
	$("#regist_button").click(function(){
		//获取参数
		var name = $("#regist_username").val().trim();//trim()去掉空格
		var nick = $("#nickname").val().trim();
		var password = $("#regist_password").val().trim();
		var final_password = $("#final_password").val().trim();
		//进行数据格式的检测
		//检查用户
		var ok = true;//ok是状态值,如果走进if,将其设为false,即不发送
		if(name == ""){
			ok=false;
			$("#warning_1 span").html("用户名不能为空");//设置用户名后span的值
			$("#warning_1").show();//让它显示出来
		}
		//检测密码 1-非空 2-不能小于6位
		if(password == ""){
			ok=false;
			$("#warning_2 span").html("密码不能为空");
			$("#warning_2").show();
		}else if(password.length>0 && password.length<6){
			ok=false;
			$("#warning_2 span").html("密码不能小于6位");
			$("#warning_2").show();
		}
		//检测确认密码 1-非空 2-是否与密码一致
		if(final_password != password){
			ok=false;
			//$("#warning_3 span").html("输入密码不一致");
			$("#warning_3").show();//后面已经写好了,其实用不到上面那句代码。
		}
		
		//状态值ok为true时,执行发送
		if(ok){
			$.ajax({
				url:base+"/user/add.do",
				type:"post",
				data:{"name":name,"nick":nick,"password":password},
				dataType:"json",
				success:function(result){
					//注册成功
					if(result.status == 0){
						alert(result.msg);
						alert("注册成功!请直接登陆!");
					//返回登陆页面
						$("#back").click();
					}else if(result.status == 1){//用户名被占用
						$("#warning_1 span").html(result.msg);
						$("#warning_1").show();
					}
				},
				error:function(){
					alert("注册失败");
				}
			});
		}
	});
});
</script>

然后controller部分:

package cn.tedu.cloud_note.controller;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import cn.tedu.cloud_note.service.UserService;
import cn.tedu.cloud_note.util.NoteResult;

@Controller
@RequestMapping("/user")
public class UserRegistController {
	@Resource
	UserService userService;
	
	@RequestMapping("/add.do")
	@ResponseBody
	public NoteResult<Object> execute(String name,String password,String nick){
		NoteResult<Object> result = userService.addUser(name, password, nick);
		
		return result;
	}
}

Service部分:

//注册
	public NoteResult<Object> addUser(String name,String password,String nick){
		NoteResult<Object> result = new NoteResult<Object>();
		//用户检测
		User hasUser = userDao.findByName(name);
		if(hasUser != null) {//用户名已存在
			result.setStatus(1);
			result.setMsg("用户名已被占用");
			return result;
		}
		
		//创建用户
		User user = new User();
			//设置用户名
		user.setCn_user_name(name);
			//设置用户密码
		String md5Password = NoteUtil.md5(password);
		user.setCn_user_password(md5Password);
			//设置用户昵称
		user.setCn_user_nick(nick);
			//创建用户id
		String id = NoteUtil.createId();
			//设置用户id
		user.setCn_user_id(id);
		//插入用户
		userDao.save(user);
		
		//构建返回结果
		result.setStatus(0);//0代表成功
		result.setMsg("注册成功");
		return result;
	}

Mapper映射文件部分:

  	 <select id="save" parameterType="cn.tedu.cloud_note.entity.User">
  	 	INSERT INTO cn_user(cn_user_id,
  	 						cn_user_name,
  	 						cn_user_password,
  	 						cn_user_nick,
  	 						cn_user_token) 
  	 						VALUES(#{cn_user_id},
  	 							   #{cn_user_name},
  	 							   #{cn_user_password},
  	 							   #{cn_user_nick},
  	 							   #{cn_user_token})
  	 </select>

然后更改一下Dao部分,增加一个方法

package cn.tedu.cloud_note.dao;

import cn.tedu.cloud_note.entity.User;

public interface UserDao {
	//登陆方法
	public User findByName(String name);
	//注册方法
	public void save(User user);
}

猜你喜欢

转载自blog.csdn.net/qq_41782582/article/details/81631769