Spring+Mybatis之注册功能demo

  这次先注册功能的是基于登录之后,所以很多配置,实体类等就不再赘述了。

首先也不是直接在地址栏输入一个网页就可以到注册页面的。而是需要通过后台发送一个请求从而跳转到注册页面

先写注册页面,body部分

 1     <form action="registin.do" onsubmit="return result()" method="post">
 2         <fieldset style=" 50%">
 3             <legend>注册</legend>
 4             用户:<input id="user_name" type="text" name="user_name" onfocus="clean()" onblur="checkName()"/>
 5             <span id="name_msg" style="color: red"></span><br/>
 6                 
 7             密码:<input id="password" type="password" name="password">
 8             <span id="pwd_msg" style="color: red"></span><br/>
 9             <input type="submit" value="提交"/>
10         </fieldset>
11     </form>

然后写JavaScript部分,需要注意的是,这主要是为了验证用户名

 1 <script type="text/javascript">
 2 //验证密码是否为空
 3 function checkpwd(){
 4 var flag=true;
 5 var password=$('#password').val();
 6 if(password.trim()==""){
 7 $("#pwd_msg").html("密码不能为空");
 8 flag=false;
 9 return flag;
10 } 
11 return flag;
12 }
13 //验证用户名是否可用
14 function checkName(){
15 var flag=true;
16 var name=$('#user_name').val();
17 if(name.trim()==""){
18 $("#name_msg").html("用户名不能为空");
19 flag=false;
20 return flag;
21 }
22 $.ajax({
23 url:'check.do',
24 type:'post',
25 data:{'user_name':name},
26 dataType:'text',
27 success:function(data){
28 if(data=="error"){
29 $("#name_msg").html('用户名已经存在');
30 flag=false;
31 }else{
32 $("#name_msg").html('用户名可以使用');
33 flag=true;
34 }
35 },
36 async:false
37 })
38 return flag;
39 } 
40 //清空提示框
41 function clean(){
42 $("#name_msg").html("");
43 }
44 //返回用户名与密码验证结果
45 function result(){
46 return checkpwd()&&checkName();
47 }
48 </script>

由前台网页可以看出,注册有两个请求,在提交请求之前还有一个验证用户名是否存在的请求发给后台

然后在到com.controller下的usercontroller类中新写一个验证用户名的方法

 

其实这个验证用户名本质也是跟登录一样,所以可以调用同一个查询用户名的接口与sql语句

当用户名与密码都符合要求的时候则可以注册

注册需要写一个注册的接口

然后在usercontroller中写一个前台发送注册请求的方法

在该方法中是直接调用注册的接口与sql语句的,没有其他的业务逻辑在里面,因此并没有用到service层

然后就是sql语句了,注意其ID名要与接口中的名字一致

这样的话,一个注册就完成了,其实自我感觉用这框架比较好的是,不再需要写接口的实现类了。直接sql语句与接口对应上即可

原文地址:https://www.cnblogs.com/bad-guy/p/7154678.html