浏览 4185 次
锁定老帖子 主题:extjs 登陆动态
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-06-15
我就做一个 很简单的用户例子 //这个是效果图 失败错误用户名和密码 ![]() 成功后 正确用户名和密码 ![]() 实用后台数据 Mysql /-----创建脚本 --------/ use test; DROP TABLE IF EXISTS `t_user`; CREATE TABLE `t_user` ( `id` int(11) NOT NULL auto_increment, `loginName` varchar(50) NOT NULL, `loginPassword` varchar(50) NOT NULL, `name` varchar(100) default NULL, `sex` int(11) default NULL, `address` varchar(100) default NULL, `email` varchar(30) default NULL, `phone` varchar(30) default NULL, `isFlag` int(11) default NULL, PRIMARY KEY (`id`), KEY `fk_t_user` (`roleId`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk; INSERT INTO `t_user` VALUES (1,'admin','123456','张三 ',1,'上海 ','www.xiaohewoai@163.com','7551713',0); INSERT INTO `t_user` VALUES (2,'xiaohezhang','123456','小张 ',1,'北京 ','www.xiaohewoai@163.com','7551713',1); /-------------------实体类--------------/ package com.mylogin.entity; import java.util.Date; public class User { private int id; private String name; private String password; private Date brithday; public Date getBrithday() { return brithday; } public void setBrithday(Date brithday) { this.brithday = brithday; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } private int sex; public int getSex() { return sex; } public void setSex(int sex) { this.sex = sex; } public String toString() { return "{id:" + id + "name" + name + "password" + password + "}"; } } /----------------------------数据库访问类------/ package com.base; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.SQLException; import org.junit.Test; public class ConnectionMySql { private static ConnectionMySql instrace; // 创建单例获取连接 public static Connection get_conn() { if (instrace == null) { instrace = new ConnectionMySql(); } return instrace._getConn(); } // 返回数据库连接 public Connection _getConn() { Connection conn = null; try { Class.forName("com.mysql.jdbc.Driver"); try { conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test", "root", "root"); } catch (SQLException e) { System.out.println("获取连接发生异常"); e.printStackTrace(); } } catch (ClassNotFoundException e) { System.out.println("加载驱动发生异常"); e.printStackTrace(); } return conn; } @Test public void testConnection() { System.out.println(this.get_conn()); } } /--------------------后台服务类--------------/ package com.mylogin.service; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.junit.Test; import com.base.ConnectionMySql; import com.mylogin.entity.User; /** * 用户服务类 * * @author god * */ public class UserService { // 根据用户密码查询用户 public User getUser(User user) throws SQLException { String sql = "select * from t_user where loginName=? and loginPassword=?"; PreparedStatement pstm = null; ResultSet rs = null; Connection conn = null; User u = null; // 获取连接 conn = ConnectionMySql.get_conn(); // 得到preparedStatment对象 pstm = conn.prepareStatement(sql); pstm.setString(1, user.getName()); pstm.setString(2, user.getPassword()); rs = pstm.executeQuery(); // 如果读到数据 则表示此用户存在 if (rs.next()) { u = new User(); u.setId(rs.getInt("id")); u.setName(rs.getString("loginName")); u.setPassword(rs.getString("loginPassword")); u.setSex(rs.getInt("sex")); rs.close(); pstm.close(); conn.close(); return u; } else { return u; } } } /----------------------后台Servlet-----------/ package com.mylogin.servlet; import java.io.IOException; import java.io.PrintWriter; import java.sql.SQLException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.mylogin.entity.User; import com.mylogin.service.UserService; public class LoginServlet extends HttpServlet { protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setCharacterEncoding("UTF-8"); req.setCharacterEncoding("UTF-8"); String pwd = req.getParameter("password"); String name = req.getParameter("name"); User u = new User(); u.setName(name); u.setPassword(pwd); UserService us = new UserService(); User user = null; try { user = us.getUser(u); } catch (SQLException e) { System.out.println("验证用户登陆失败"); e.printStackTrace(); } PrintWriter out = resp.getWriter(); if (user != null) { out.println("{success:true,msg:'ok'" + "}"); } else { out.println("{success:true,msg:'用户名或者密码错误'" + "}"); } out.flush(); out.close(); } protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } } /------------------web.xml 配置-----------/ <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>myextlogin</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <!-- 配置用户登陆servlet --> <servlet> <servlet-name>login</servlet-name> <servlet-class>com.mylogin.servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>login</servlet-name> <url-pattern>/login.do</url-pattern> </servlet-mapping> </web-app> /---------前台JS---------------/ Ext.onReady(function() { // alert("ok"); var myform = new Ext.form.FormPanel({ // absolute baseCls : 'x-plain', layout : "form", id : "myform", // title : "人员信息", frame : true, defaultType : 'textfield', defaults : { width : 200 }, items : [{ fieldLabel : "用户名", name : "name", emptyText : "请输入用户 ", allowBlank : false, selectFocus : true }, { fieldLabel : "密码", allowBlank : false, name : "password", inputType : "password" }] }); var win = new Ext.Window({ title : "<center>用户登陆</center>", width : 500, height : 400, items : [myform], closeAction : "hide", buttonAlign : "center", buttons : [{ text : "提交", type : "submit", handler : function() { // 如果通过验证 if (myform.form.isValid()) { // 自己做一个 进度条 Ext.MessageBox.show({ // 等待标题 title : "请等待正在登陆", // 允许进度条 progress : true, // 设置宽度 width : 300 }); // 设置进度条 次数 var f = function(v) { // 返回进度条 状态 return function() { // 到了11 隐藏 if (v == 12) { Ext.MessageBox.hide(); } else { var i = v / 11; Ext.MessageBox.updateProgress( i, Math.round(100 * i) + '%提交'); } }; }; // 循环 for (var i = 0; i < 13; i++) { // 定时器 setTimeout(f(i), i * 500); } myform.form.doAction('submit', { // 提交路径 我配置的一个Servlet url : "login.do", // 等待消息标题 // waitTitle : "等待中", // 提交方式 分为POST 和GET method : "POST", // 等待消息信息 // waitMsg : "正在提交请稍后......", // 成功之后 success : function(form, action) { // alert('aaa'); if (action.result.msg == 'ok') { // 我要 进入首页 可是我没有画 自己搞定 Ext.Msg.alert("首页提示", "哈哈进来吧"); } else { alert(action.result.msg); } } // 失败 }); } } }, { text : "重置", handler : function() { var one = Ext.getCmp('myform'); one.getForm().reset(); } }] }); win.show(); }); /---------------------前台HTML------------------/ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <link rel="stylesheet" type="text/css" href="js/resources/css/ext-all.css" /> <link rel="stylesheet" type="text/css" href="mycss/tree.css" /> <script type="text/javascript" src="js/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="js/ext-all.js"></script> <script type="text/javascript" src="js/adapter/ext/ext-lang-zh_CN.js"></script> <script type="text/javascript" src="gridPanel/forums.js"></script> </head> <body> </body> </html> //-------------------本人不提供 EXTJS 文件自己去下载 ------/ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |