zoukankan      html  css  js  c++  java
  • SSH_框架整合5--验证用户名是否可用

    SSH_框架整合5--验证用户名是否可用

    1 emp-input.jsp中编写ajax验证用户名是否可用: 

     1 <script type="text/javascript" SRC="scripts/jquery-1.7.2.js"></script>
     2 <script type="text/javascript">
     3 $(function(){
     4     $(":input[name=lastName]").change(function(){
     5             var val = $(this).val();
     6             val = $.trim(val);
     7             var $this = $(this);
     8             
     9             if(val != ""){
    10                 //把当前节点后面的所有 font 兄弟节点删除
    11                 $this.nextAll("font").remove();
    12                 
    13                 var url="emp-validateLastName";
    14                 var args={"lastName":val,"time":new Date()};
    15                 $.post(url,args,function(data){
    16                     //姓名可用
    17                     if(data == "1"){
    18                         $this.after("<font color='green'>LastName可用!</font>");
    19                     }
    20                     //不可用
    21                     else if(data == "0"){
    22                         $this.after("<font color='red'>LastName不可用!</font>");                        
    23                     }
    24                     //服务器错误
    25                     else{
    26                         alert("服务器错误!");
    27                     }
    28                 });
    29             }else{
    30                 alert("lastName不能为空!");
    31                 $(this).val("");
    32                 //$(this).focus();
    33             }
    34         });
    35     })
    36 </script>
    View Code

    2  完善类:底层编写代码实现验证的方法:

      (1)EmployeeDao.java

    1 //4 校验注册的姓名是否可用
    2     public Employee getEmployeeByLastName(String lastName){
    3         String hql = "FROM Employee e WHERE e.lastName = ?";
    4         Query query = getSession().createQuery(hql).setString(0, lastName);
    5         Employee employee = (Employee) query.uniqueResult();
    6         //System.out.println("***"+employee.getDepartment().getClass().getName());
    7         return employee;
    8     }
    View Code

      (2)EmployeeService.java

    1 //4 校验注册的姓名是否可用
    2     public boolean lastNameIsValid(String lastName){
    3         //在数据库中查完结果为null,说明没有被注册过
    4         return employeeDao.getEmployeeByLastName(lastName) == null;
    5     }
    View Code

      (3)EmployeeAction.java  

     1 //5 校验注册的姓名是否可用
     2     private String lastName;
     3     
     4     public void setLastName(String lastName) {
     5         this.lastName = lastName;
     6     }
     7     
     8     public String validateLastName() throws UnsupportedEncodingException{
     9         if(employeeService.lastNameIsValid(lastName)){
    10             inputStream = new ByteArrayInputStream("1".getBytes("UTF-8")); 
    11         }else{
    12             inputStream = new ByteArrayInputStream("0".getBytes("UTF-8")); 
    13         }
    14         return "ajax-success";
    15     }
    16     
    View Code

      其中delete()方法的return修改为:return "ajax-success";

    3 applicationContext.xml中修改为只读:

      <tx:method name="lastNameIsValid" read-only="true"/>

  • 相关阅读:
    sublime 2/3 for mac link to command
    语言设计中的鸭子类型风格
    Android布局分析工具HierarchyView的使用方法
    自定义的圆形ProgressBar
    自动移动的ImageView
    Shape 各种属性详解
    用GridLayout实现计算器的布局
    Toast的用法(可以设置显示时间,自定义布局的,线程中的Toast)
    Shape画圆形控件
    用ImageSwitcher实现显示图片(更改图片时有动画效果)
  • 原文地址:https://www.cnblogs.com/noaman/p/5886791.html
Copyright © 2011-2022 走看看