Ajax(6) Ajax向servlet请求数据库操作 并显示到当前页面 这个未经测试
假设:
1、你的页面在Web-Root下,内容为: <div id="showMsg"></div><input type="text" id="userName" />,所用编码为utf-8
2、你的servlet为: HelloWorldServlet.java 映射路径为 servlet/helloWorldServlet
步骤:
1、引入jquery-1.6.4.min.js
2、编写id为userName的输入框的点击触发函数:
$("#userName").keyup(function(){
$.ajax({
type: "post",
url: "servlet/helloWorldServlet?userName="+$(this).val(),
dataType: "json",
success: function(data){
$("#showMsg").html(data.msg);//修改id为showMsg标签的html
}, error: function(){
alert("请求出错");
}
})
})
3、后台处理接收到的内容:
request.setCharactorEncoding("utf-8");
String userName = request.getParameter("userName");
response.setCharactorEncoding("utf-8");
PringWriter out = response.getWriter();
out.print("{\"msg\":\"你好~~"+userName+"!\"}"); 注意事项:
1、这里的编码统一为utf-8
2、请求路径servlet/helloWorldServlet为相对路径,因此你的页面必须在项目的Web-Root下(也就是默认的web文件夹下,名字可能因项目配置不同而改变)
3、没了,记得给分哦,打字很辛苦的~
servlet返回ajax请求数据
问题描述: 在前台(jsp)用ajax提交数据, 后台(servlet)处理后返回"1"或者"0". 可是前台获得的返回数据是长度为3的字符串, 即"1__"或"0__"(_表示一个空白字符).
环境: tomcat-7.0.29 + MySQL 5.5 + jquery 1.7
其他: 以为是UTF-8 + BOM的问题, 可是把所有文件都改为UTF-8了,问题依旧.
这是后台处理请求的Validate.java文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.sql.*; public class Validate extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String user_name = new String(request.getParameter( "userName" ).getBytes( "ISO-8859-1" ), "UTF-8" ); String user_pwd = new String(request.getParameter( "password" ).getBytes( "ISO-8859-1" ), "UTF-8" ); PrintWriter out = response.getWriter(); String driver = "com.mysql.jdbc.Driver" ; String dbUser = "root" ; String dbPwd = "3306" ; String db = "appbase" ; String url = "jdbc:mysql://localhost:3306/" + db + "?user=" + dbUser + "&password=" + dbPwd; ResultSet rs = null ; String sqlString = "select * from client where login_account='" + user_name + "' and password='" + user_pwd + "'" ; try { Class.forName(driver).newInstance(); Connection conn = DriverManager.getConnection(url); Statement ps = conn.createStatement(); rs = ps.executeQuery(sqlString); if (rs.next()) out.println( "1" ); else out.println( "0" ); } catch (ClassNotFoundException e) { out.println( "ClassNotFoundException" ); } catch (SQLException ex) { out.println( "SQLException" ); } catch (Exception exe) { out.println( "OtherException" ); } } } |
这是前台ajax提交数据的代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$(document).ready( function () { $( "#_submit" ).click( function () { var user_name = $( "#_user_name" ).val(); var user_pwd = $( "#_user_pwd" ).val(); $.ajax({ url: "login/validate" , data: { userName: user_name, password: user_pwd }, type: "GET" , datatype: "html" , success: function (data){ alert(data.length); } }); }); }); |
Ajax(6) Ajax向servlet请求数据库操作 并显示到当前页面 这个未经测试的更多相关文章
- ajax前置处理实现异步请求session过期时跳转登录页面
第一篇博文,mark一下zhq[0]. 问题描述:用户页面,当session过期或都session注销后,普通页面后端都会有过滤器,session过期Redirect到登录页面,但是ajax请求后端只 ...
- ajax向php传参数对数据库操作
刚入门php,要求要对多用户进行批量删除(当然实际中是不可能的),在这就以此为例. 大意就是通过对数据库中用户查询,将用户信息显示在页面表格中,在进行多项选择后将所选行参数通过ajax传入后台php文 ...
- Oracle数据库操作总是显示运行中无法成功,删除表时报错 resource busy and acquire with NOWAIT specified
1.直接运行以下语句: select t2.username,t2.sid,t2.serial#,t2.logon_timefrom v$locked_object t1,v$session t2wh ...
- ajax调用WebService实现数据库操作
首先说下测试环境和思路: 前端收集数据转换成json格式传输到后端,处理并存入数据库 1.数据库操作: [WebMethod] public string InsertPoint(string dat ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- PHP学习笔记(15)PDO数据库操作+AJAX无刷新技术删除用户
pdo.php <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- 深入理解ajax系列第四篇——请求实例
前面的话 在使用ajax的过程中,常用的请求方式是GET和POST两种.本文将以实例的形式来详细说明这两种请求方式 GET GET是最常见的请求类型,最常用于向服务器查询某些信息.必要时,可以将查询字 ...
- 原生JS实现Ajax及Ajax的跨域请求
前 言 如今,从事前端方面的程序猿们,如果,不懂一些前后台的数据交互方面的知识的话,估计都不太好意思说自己是程序猿.当然,如今有着许多的框架,都有相对应的前后台数据交互的方法. ...
- {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)
Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 一 Ajax简介 ...
随机推荐
- web漏洞详解及修复建议
1.漏洞描述 跨站脚本攻击(Cross-site scripting,通常简称为XSS)发生在客户端,可被用于进行窃取隐私.钓鱼欺骗.偷取密码.传播恶意代码等攻击行为. 恶意的攻击者将对客户端有危害的 ...
- 安装scrapy框架
前提安装好python.setuptools. 1.安装Python 安装完了记得配置环境,将python目录和python目录下的Scripts目录添加到系统环境变量的Path里.在cmd中输入py ...
- Redis 总结
Redis官网下载地址: https://redis.io/ Redis 客户端可视化:https://redisdesktop.com/download 一.Redis 是什么? 1.key-val ...
- django搭建的站点,通过localhost能访问,但是通过ip不能访问
问题:使用ip访问不了django站点,只能用127.0.0.1访问 解决方法:启动服务时ip使用0.0.0.0 使用gunicorn启动 gunicorn -w4 -b0.0.0.0:8 ...
- leetcode 数组类型题总结
1,removeDuplicates(I) int removeDuplicatesI(vector<int>& nums){ // 重新组织数组,同 removeDuplicat ...
- Mysql 5.7 弱密码限制,及创建用户无密码用户
一.介绍 1.haproxy Mysql 需要一个无密码登录的mysql用户. 2.Mysql 5.7 版本默认安装了 validate_password 插件,作用:要求密码的复杂度. 3.创建用户 ...
- 【转】以太网最大帧和最小帧、MTU
根据rfc894的说明,以太网封装IP数据包的最大长度是1500字节,也就是说以太网最大帧长应该是以太网首部加上1500,再加上7字节的前导同步码和1字节的帧开始定界符,具体就是:7字节前导同步码 + ...
- Python: 调用youtube_dl实现视频下载
研究PySide与youtube_dl结合实现视频下载,抽丝剥蚕,步步维艰,却也颇有意思. 记录初始心得.界面以PySide之Qt编写,调用youtube_dl下载,回调出下载进度,代码如下: # e ...
- 项目总结07:JS图片的上传预览和表单提交(FileReader()方法)
JS图片的上传预览和表单提交(FileReader()方法) 一开始没有搞明白下面这块代码的,今天有时间简单整理下 核心点:FileReader()方法 以下是代码(以JSP文件为例) <!DO ...
- swift 数组 的一些快速方法
1. filter (过滤器):返回符合条件的一个数组 let arr = [1,5,6,7,10,0] //写法1 let arr1 = arr.filter { (item) -> Bool ...