Struts2 ajax+json账户唯一性验证
来源:互联网 发布:云杉网络 营收 编辑:程序博客网 时间:2024/06/05 13:34
Struts2 ajax+json账户唯一性验证
本节使用struts2框架,通过ajax+json,在页面不刷新的情况下实现账户唯一性验证。
使用struts2框架——json的核心包和依赖包如下:
当我们导入了以上两个包时,就可以在struts.xml定义我们的<package>
<pre name="code" class="html"><package name="json" namespace="/" extends="json-default" ><action name="empJudgement" class="org.great.action.emp.EmpAction" method="judgement"><result type="json"><param name="root">flag</param></result></action></package>
我们可以在struts2-json-puugin的jar包里面的xml看到它的定义
接下来,看jsp代码:
<body> <form action="emp_Emp_add" method="post"> <label>姓名:</label><input id="ename" type="text" name="emp.ename" onblur="judgement()"><span id="sp"></span><br/> <label>工作:</label><input type="text" name="emp.job"><br/> <input type="submit" value="提交"> </form> </body> <script type="text/javascript"> function judgement(){ var ename = $("#ename").val(); $.ajax({ type:"post", url:"empJudgement", data:"ename="+ename, cache:false, error : function(){ alert("请重试"); }, success: function(data){ alert(data); if(data){ $("#sp").text("可以注册"); }else{ $("#sp").text("账户已存在"); } } }) } </script>
struts.xml配置:当我们ajax的访问路径为empJudgement时,就会跳转到org.great.action.emp.EmpAction类下的judgement方法中,并且返回的参数为flag。
<package name="json" namespace="/" extends="json-default" ><action name="empJudgement" class="org.great.action.emp.EmpAction" method="judgement"><result type="json"><param name="root">flag</param></result></action>
org.great.action.emp.EmpAction下的judgement方法:
public String judgement(){EmpBean bean = DaoFactory.getEmpDao().findEmpBean_ByName(ename);if(null == bean){flag = true;}else{flag = false;}return "success";}
当获取到ajax传来的ename,就会在数据库就行查询,如果查询出来的是null,即原先账户不存在,就返回一个flag为true,说明账户没有被注册,如果返回的bean是存在的,就返回一个flag为false说明不能注册此账户。当然,flag要定义好,并且给他get、set方法,不然struts框架取不到值
private PreparedStatement pre = null;private ResultSet rs = null;public EmpBean findEmpBean_ByName(String ename) {EmpBean empBean = null;Connection conn = DBUtils.getConn();String sql = "select * from emp where ename = ?";try {pre = conn.prepareStatement(sql);pre.setString(1, ename);rs = pre.executeQuery();if(rs.next()){empBean = new EmpBean();empBean.setEmpNo(rs.getInt(1));empBean.setEname(rs.getString(2));empBean.setJob(rs.getString(3));empBean.setMgr(rs.getInt(4));empBean.setHireDate(rs.getString(5));empBean.setSal(rs.getInt(6));empBean.setComm(rs.getInt(7));empBean.setDeptNo(rs.getInt(8));}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();} finally{DBUtils.close(conn, pre, rs);}return empBean;}
接下来看演示结果:
1 0
- Struts2 ajax+json账户唯一性验证
- Ajax实战项目3 验证用户的唯一性 环境(Ajax+Jquery+Json+struts2)
- ajax 验证唯一性
- Struts2&ajax实现用户名唯一验证案例
- AJAX验证用户唯一性
- ajax验证用户唯一性
- Ajax实战项目1 验证用户的唯一性 环境(Ajax+struts2)
- Ajax实战项目2 验证用户的唯一性 环境(Ajax+Jquery+struts2)
- Struts2 Jquery Json 实现AJax表单验证
- Struts2 Jquery Json 实现AJax表单验证
- Ajax 验证用户名唯一性数据校验
- Ajax用户唯一性的验证
- ajax邮箱、用户名唯一性验证
- Struts2+jquery+ajax+json实现无刷新登陆验证.
- ssh+ajax 注册验证 以及struts2+json注意事项
- 用户名邮箱唯一验证 ---ajax
- 资费名称唯一性校验(struts2+jsp+json+jquery)
- 11级_Java_曹建波 03.13 Struts2&ajax实现用户名唯一验证案例
- JAVA设计原则与设计模式
- js实现页面定时跳转
- Launcher2的桌面预设【1】
- Sorting Railway Cars
- php面向对象-关键字的合理运用,public,private,
- Struts2 ajax+json账户唯一性验证
- Xcode DEBUG模式和RELEASE模式使用总结
- mac os x下的软件包管理神器---homebrew
- SHELL笔记之网络(六)
- Linux syslog介绍
- bzoj 3504(神题,网络流)
- 错误:ORA-12705: Cannot access NLS data files or invalid environment specified
- cocoaPods安装、使用及常见问题
- Android中获取应用程序(包)的信息-----PackageManager的使用(一)