ajax请求servlet小练习(一)

   在我们以往的工作中,发送ajax都是借助框架(比如SpringMVC)来实现的,最近在做公司的一个需求,就是在一个工程中查询数据库,但是这个工程没有引入Spring相关的框架,我不想用form表单提交的方式去实现,就想写一个简单的servelt,发送ajax请求访问这个servlet,servlet再去访问数据库,之后将查询到的结果返回到页面。我将此工作分为了两部。

   第一步,发送ajax请求到servlet并返回结果

   第二步,在servlet中查询数据库。

 

这篇文章先简述如何在一个html页面中发送ajax请求到servlet并返回结果

首先使用idea工具新建一个纯的maven工程

一。新建一个servlet.并配置web.xml

这一步比较简单,我在之前的博客中有写,可以去查看。

https://blog.csdn.net/liuying1802028915/article/details/85162021

下面直接贴上代码:

package com.taoj.demo.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public class QueryRoleServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        PrintWriter out = response.getWriter();
        String name = request.getParameter("name").trim();
        String type = "-1";
        try {
            response.setCharacterEncoding("UTF-8");
            response.setContentType("application/json; charset=utf-8");
//            out.println("Success---llll");
            out.append(type);
            out.close();
        } catch (Exception e){
            e.printStackTrace();
        }
    }

}

下面是web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  
  <servlet>
    <servlet-name>HelloWorld</servlet-name>
    <servlet-class>com.taoj.demo.servlet.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>HelloWorld</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>
  
  <servlet>
    <servlet-name>QueryRoleServlet</servlet-name>
    <servlet-class>com.taoj.demo.servlet.QueryRoleServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>QueryRoleServlet</servlet-name>
    <url-pattern>/queryRole</url-pattern>
  </servlet-mapping>
</web-app>

下面在一个简单的html页面中引入了jquery ,并写了一个简单的ajax请求,很简单,我这里直接贴一下代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ajax与servlet的练习</title>
    <script src="../js/jquery-1.10.2.min.js"></script>
</head>
<body>
    <div>
        我爱中国<br>
        <button id="btn">发送ajax</button>
    </div>
</body>
<script>
    $(function(){
        $("#btn").click(sendAjax);
    });

    function sendAjax(){
        var url = "http://127.0.0.1:8080/ser/queryRole";
        var name = "nb";
        alert("name:"+name+", url:"+url);
        var data = {
            name: name
        };
        $.ajax({
            type: "get",
            url: url,
            data: data,
            dataType: "json",
            success: function(result){
                alert("success--result:"+result);
            },
            error: function(){
                alert("error");
            }

        });
    }
</script>
</html>

点击按钮,就会发送ajax到queryRole的servlet,并返回一个结果。下一篇博文讲解如何在一个servlet中查询数据库。

不积跬步,无以至千里

不积小流,无以成江海

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值