`
zjh0588
  • 浏览: 65126 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

AJAX JSON-RPC + MYSQL 数据库登陆和查询操作

    博客分类:
  • java
阅读更多

第一步: 建立mysql 数据库,创建noteuser表和增加1条信息

sql 代码
  1. CREATE TABLE `noteuser` (   
  2.   `userid` int(5) NOT NULL auto_increment,   
  3.   `username` varchar(16) character set utf8 default NULL,   
  4.   `passwordvarchar(16) character set utf8 default NULL,   
  5.   `regtime` datetime default NULL,   
  6.   `NickName` varchar(16) character set utf8 default NULL,   
  7.   `Sex` int(1) unsigned default NULL,   
  8.   `Email` varchar(15) character set utf8 default NULL,   
  9.   `age` int(2) unsigned default NULL,   
  10.   PRIMARY KEY  (`userid`)   
  11. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;   
  12.   
  13.   
  14. INSERT INTO noteuser(username,password,regtime,NickName,Sex,Email,age) VALUES ('YuKy','11',now(),'Zoo.YuKy',1,'zjh588@gmail.com',21);   
  15. //可以添加更多信息  

第二步:1.下载jsonrpc-1.0.jar , http://oss.metaparadigm.com/jsonrpc-dist/json-rpc-java-1.0.zip

             2.在C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\ 建立新文件夹json_Test,然后把json-rpc-java-1.0.zip里的jsonrpc.js放在...\webapps\json_Test\js的文件夹里面.在js文件夹里增加aa.js.

//--把下面的代码复制到aa.js

 

js 代码
  1. function clrscr()   
  2. {   
  3.     resultNode.value = "";   
  4. }   
  5.   
  6. function print(s)   
  7. {   
  8.     resultNode.value += "" + s;   
  9.     resultNode.scrollTop = resultNode.scrollHeight;   
  10. }   
  11.   
  12.   
  13. function onLoad()   
  14. {   
  15.     resultNode = document.getElementById("result");   
  16.   
  17.     try {   
  18.     jsonrpc = new JSONRpcClient("JSON-RPC");   
  19.     } catch(e) {   
  20.     if(e.message) alert(e.message);   
  21.     else alert(e);   
  22.     }   
  23. }   
  24.   
  25. function loginUser(){   
  26.     var user = document.getElementById("username").value;   
  27.     var pass = document.getElementById("password").value;   
  28.   
  29.     if(user == null || pass == null ||user == "" || pass == ""){   
  30.         alert("Please enter username and password!");   
  31.         }else{   
  32.             var ss = jsonrpc.user.loginUser(user,pass);   
  33.             alert(ss);   
  34.             }   
  35.     }   
  36.        
  37. function dogetUserInfo(){   
  38.     clrscr();   
  39.      print("Running user\n\n");   
  40.       try {   
  41.             print("user.getUserInfo()");   
  42.             print(" returns " + jsonrpc.user.getUserInfo() + "\n");   
  43.           } catch(e) {   
  44.     print(" Exception: \n\n" + e);   
  45.     }   
  46. }   

第三步:编写JAVA程序,jsonTest.java

java 代码
  1. package com.metaparadigm.jsonrpc.test;   
  2.   
  3. import java.io.Serializable;   
  4. import java.sql.*;   
  5. public class jsonTest /*extends dbManager*/ implements Serializable   
  6. {   
  7.     private final static long serialVersionUID = 1;   
  8.     private String strSql;   
  9.     private ResultSet rs;   
  10.     private Statement stmt = null;   
  11.     private Connection conn = null;   
  12.        
  13.     public Connection getConnection(){   
  14.         try{   
  15.             Class.forName("org.gjt.mm.mysql.Driver");   
  16.             conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8","root","root");   
  17.         }catch(Exception ex){   
  18.             ex.printStackTrace();   
  19.         }   
  20.         return conn;   
  21.     }   
  22.        
  23.     public String[] getUserInfo(){   
  24.         String[] row = null;   
  25.         try{   
  26.             strSql = "select username from noteuser";   
  27.             conn = getConnection();   
  28.             stmt = conn.createStatement();   
  29.             rs = stmt.executeQuery(strSql);   
  30.             int i = 0;             
  31.             while(rs.next()){   
  32.                 i++;   
  33.             }   
  34.             System.out.println(i);   
  35.             rs = stmt.executeQuery(strSql);   
  36.             row = new String[i];   
  37.             i =0;    
  38.                
  39.             while(rs.next()){      
  40.                 row[i] = rs.getString(1);   
  41.                 i++;   
  42.             }   
  43.         }catch(Exception e){   
  44.             e.printStackTrace();   
  45.         }   
  46.         for(int j=0; j<row.length; j++)   
  47.             System.out.println(row[j]);   
  48.            
  49.         return row;   
  50.     }   
  51. }  

第四步: 写JSP页面:cc.jsp

xml 代码
  1.   
  2. <%@   
  3. page contentType="text/html; charset=UTF-8" %><%@   
  4. page language="java" %><%@   
  5. page import="com.metaparadigm.jsonrpc.test.jsonTest"  
  6. %>  
  7. <jsp:useBean id="JSONRPCBridge" scope="session" class="com.metaparadigm.jsonrpc.JSONRPCBridge" />  
  8. <jsp:useBean id="user" scope="session" class="com.metaparadigm.jsonrpc.test.jsonTest"/>  
  9. <%JSONRPCBridge.registerObject("user", user); %>  
  10.   
  11. <script language="javascript" type="text/javascript" src="js/jsonrpc.js"></script>  
  12. <script type="text/javascript" src="js/aa.js"></script>  
  13. <head>  
  14. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  
  15. <title>JSON查询MYSQL</title>  
  16. </head>  
  17.   
  18. <body onLoad="onLoad()">  
  19.   <p>请输入你的用户名字和密码</p>  
  20.                     <p>用户名:   
  21.                       <input type="text" id="username">  
  22.                   </p>  
  23.                     <p>密 &nbsp; 码:    
  24.                       <input type="password" id="password" >  
  25.                   </p>  
  26.                     <p>  
  27.                       <input type="button" onClick="loginUser()" value="登陆" ></p>  
  28.                          
  29. <textarea wrap="off" id="result" cols="80" rows="20"></textarea>  
  30.        <a href="javascript:dogetUserInfo();">查看</a>  
  31.         
  32. </body>  
  33. </html>  

第五步:配置WEB-INF(自己创建以下的文件夹,在这里不一一说明有什么作用)
      1.添加web.xml,在..\webapps\json_Test\WEB-INF文件夹,在\WEB-INF\添加web.xml,把以下代码复制进去

xml 代码
  1. <?xml version="1.0" encoding="ISO-8859-1"?>    
  2. <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">  
  3. <web-app>  
  4. <servlet>    
  5. <servlet-name>com.metaparadigm.jsonrpc.JSONRPCServlet</servlet-name>    
  6. <servlet-class>com.metaparadigm.jsonrpc.JSONRPCServlet</servlet-class>    
  7. </servlet>    
  8. <servlet-mapping>    
  9. <servlet-name>com.metaparadigm.jsonrpc.JSONRPCServlet</servlet-name>    
  10. <url-pattern>/JSON-RPC</url-pattern>    
  11. </servlet-mapping>  
  12. </web-app>  

2.添加jsonrpc-1.0.jar,把json-rpc-java-1.0.zip内的jsonrpc-1.0.jar复制到..\webapps\json_Test\WEB-INF\lib\里

      3.添加jsonTest.class,把jsonTest.java编译好的class文件在..\webapps\json_Test\WEB-

INF\classes\com\metaparadigm\jsonrpc\test\文件夹里.


第六步:测试,运行Tomcat,在地址栏输入http://localhost:8080/json_Test/cc.jsp,然后输入用户名yuky,密码11,看是否能登陆成功.

分享到:
评论

相关推荐

    jsp开发插件

    这个驱动使得JSP应用能够连接到MySQL数据库,执行SQL查询,进行数据的增删改查操作。 6. **struts数据连接池.rar**:Struts是MVC(Model-View-Controller)架构的一个开源实现,用于构建企业级Java Web应用。数据...

    ThinkPHP 3.1.2 - PHP的开发框架MVC - 含Core,Extend,Example

    AJAX支持:内置和客户端无关的AJAX数据返回方法,支持JSON、XML和EVAL类型 返回客户端,而且可以扩展返回数据格式,系统不绑定任何AJAX类库,可随意使 用自己熟悉的AJAX类库进行操作。 SAE支持:提供了新浪SAE平台...

    Ajax dwr 判断用户是否存在

    本教程将详细解释如何利用Ajax和DWR来判断用户是否存在,同时结合MySQL数据库进行数据验证。首先,我们需要理解Ajax的基本原理:它允许在不刷新整个网页的情况下与服务器进行异步数据交换,提供更流畅的用户体验。 ...

    网络第一份struts2.0学习文档

    - JSON-RPC:远程过程调用的一种实现。 - **JSON示例**: - 在Action中生成JSON数据。 - **Struts2与JSON示例**: - 使用Struts2插件处理JSON请求。 #### 十三、集成Hibernate - **系统设计**: - 总体设计...

    最新Python3.5零基础+高级+完整项目(28周全)培训视频学习资料

    mysql 连接查询 mysql 事务与索引 mysql python交互 sqlalchemy orm介绍 sqlalchemy 常用语法 sqlalchemy 外键关联 sqlalchemy 多外键关联 sqlalchemy 多对多关联 作业之学员管理系统开发 第13周 堡垒机框架开发...

    liferayPortal

    - 支持多层集群,在多个层级(如呈现、服务、业务逻辑和数据库)进行集群部署。 - Terracotta DSO集成:提供内存共享机制,提高集群环境下的性能。 - 高级缓存:包括页面缓存、负载均衡、会话复制和分布式缓存等机制...

    网络聊天室

    服务器端通常会设计一套消息协议,如自定义的文本协议、JSON-RPC或WebSocket,用于客户端和服务器之间的数据交互。 前端部分,HTML、CSS和JavaScript是构建用户界面的基础。随着Web技术的发展,现代的聊天室往往...

    python入门到高级全栈工程师培训 第3期 附课件代码

    01 python操作数据库pymysql 02 数据库之事务 03 mysql事务之savepoint 第49章 01 http协议之请求协议 02 http协议之响应协议 03 web框架的概念 04 做一个最简答web框架 05 MVC模式和MTV模式 06 django的一个简单...

    PHP 5 In Practice

    另一个关键特性是PDO(PHP Data Objects),这是一个数据库访问层,支持多种数据库系统,如MySQL、SQLite和PostgreSQL。PDO提供了一种统一的接口来执行SQL查询和处理结果,提高了代码的可移植性和安全性。 PHP 5还...

    JavaEE求职简历-姓名-JAVA开发工程师.docx

    6. **数据库管理**:熟悉MySQL和Oracle数据库,能够编写标准SQL语句,进行数据操作,并懂得一些SQL优化技巧,以提高查询性能。 7. **Redis缓存**:使用Redis作为分布式缓存,可以加速数据读取,减轻数据库压力,...

    demo工程列表说明1

    【标题】"Demo工程列表说明1"涉及到的IT知识点涵盖了多个方面,主要集中在Web开发、框架使用、数据库连接池、并发处理、模板引擎、JSON处理、文件操作、前端库和框架等多个领域。以下是对这些知识点的详细说明: 1....

    JAVA上百实例源码以及开源项目源代码

    数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写的...

    VehicleInspectionReports:用于访问丹麦运输局车辆检查报告的API。 通过抓取他们的官方网站来工作。 个人好玩的项目,而且很不完整

    ServiceStack是一个高性能的开源.NET Web服务框架,支持多种不同的API样式,包括RESTful、SOAP和JSON-RPC。在这个项目中,ServiceStack被用作后端服务,用于处理客户端请求并返回车辆检查报告的数据。这涉及到了...

    计算机必懂的53个英文单词和缩写

    18. **SQL (Structured Query Language)**:结构化查询语言,用于管理和操作数据库。 19. **AI (Artificial Intelligence)**:人工智能,模拟人类智能的计算机系统。 20. **ML (Machine Learning)**:机器学习,AI...

    javascript搜索自动提示功能的实现第1/3页

    这个文件通常会连接到MySQL数据库,根据接收到的查询字符串执行SQL查询,找出匹配的建议项,然后将这些数据以适当的格式(如JSON或HTML)返回给前端。在PHP中,可能需要使用`$_POST['queryString']`来获取JavaScript...

    simple-tags

    Add some tools for taxonomies : Terms suggestion, Mass Edit Terms, Auto link Terms, Ajax Autocompletion, Click Terms, Auto terms, Advanced manage terms, Advanced Post Terms, Related Posts by Terms, ...

Global site tag (gtag.js) - Google Analytics