栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

AJAX Jquery JSON 【笔记+案例】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

AJAX Jquery JSON 【笔记+案例】

版本一 1. SelectUserServlet
package web.servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.Serial;


@WebServlet(name = "SelectUserServlet", value = "/selectUser")
public class SelectUserServlet extends HttpServlet {
  @Serial private static final long serialVersionUID = 7592892756611769375L;

  @Override
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    // 1.接收参数
    String username = request.getParameter("username");
    // 2.调用service查询user对象
    boolean flag = true;

    // 3.响应标记
    response.getWriter().write("" + flag);
    // 然后去注册页面找username的id
  }

  @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {}
}

2. jsp页面 --AJAX


3. jsp页面 --注册部分
 

Create an account

--------------主要看这一块-------------------------------------------
此用户名已存在 ---------------------------------------------------------------------

版本二

2. jsp页面 2.1 根据ajax实现
<%--
  Created by IntelliJ IDEA.
  User: xiaomi
  Date: 2021/3/4
  Time: 17:02
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

  
    $Title$
  
  

  
  

index.jsp

username:
2.2 根据jquery实现
<%--
  Created by IntelliJ IDEA.
  User: xiaomi
  Date: 2021/3/4
  Time: 17:02
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

  
    $Title$
  
  
  
  
  

jquery_ajax.jsp

username:
3. TestServlet
package servlet;

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

@WebServlet(urlPatterns = "/testuname")
public class TestServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
         //1.接收参数
        String username = req.getParameter("username");
        resp.setContentType("text/html;charset=utf-8");
        PrintWriter writer = resp.getWriter();

        if("admin".equals(username)){
            writer.println("账户已被注册");
        }else{
            writer.println("账户可用");
        }
    }
}

JSON 1. JSON的存值取值



    
    Title

    





2. JSON与JAVA对象之间的转换

实体类
package bean;

//实体类
public class Users {
    private Integer uid;
    private String username;
    private String password;
    private Double money;

    @Override
    public String toString() {
        return "Users{" +
                "uid=" + uid +
                ", username='" + username + ''' +
                ", password='" + password + ''' +
                ", money=" + money +
                '}';
    }

    public Users() {
    }

    public Users(Integer uid, String username, String password, Double money) {
        this.uid = uid;
        this.username = username;
        this.password = password;
        this.money = money;
    }

    public Integer getUid() {
        return uid;
    }

    public void setUid(Integer uid) {
        this.uid = uid;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public Double getMoney() {
        return money;
    }

    public void setMoney(Double money) {
        this.money = money;
    }
}

JSON与JAVA的转换
package test;

import bean.Users;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import java.util.ArrayList;


public class Demo {
    public static void main(String[] args) {
    
        //java->json
        Users users = new Users(11,"aaa","123456",123.456);
        JSONObject jsonObject = JSONObject.fromObject(users);
        System.out.println(jsonObject);//json

        //json-java
        String str="{"money":123.456,"password":"123456","uid":11,"username":"aaa"}";
        JSONObject jsonObject1 = JSONObject.fromObject(str);
        Object o = JSONObject.toBean(jsonObject1, Users.class);
        System.out.println("o="+o);

        //java集合->json
        ArrayList arrayList = new ArrayList();
        arrayList.add(new Users(1,"张三","123",12.34));
        arrayList.add(new Users(2,"张三2","12322",1244.34));
        arrayList.add(new Users(3,"张三3","12333",1255.34));
        JSONArray jsonArray = JSONArray.fromObject(arrayList);//json
        System.out.println(jsonArray);

        //json->java集合
        String str2="[{"money":12.34,"password":"123","uid":1,"username":"张三"},{"money":1244.34,"password":"12322","uid":2,"username":"张三2"},{"money":1255.34,"password":"12333","uid":3,"username":"张三3"}]";
        JSONArray jsonArray2 = JSONArray.fromObject(str2);

        Object[] o1 = (Object[])JSONArray.toArray(jsonArray2, Users.class);
        for (Object o2 : o1) {
            System.out.println("o2="+o2);
        }

    }
}

json和AJAX案例

通过id回显用户信息

1. GetUsersServlet
package servlet;

import bean.Users;
import net.sf.json.JSONObject;

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

@WebServlet(urlPatterns = "/getuser")
public class GetUsersServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
         //1.接收参数
        String uid = req.getParameter("uid");
        int userid=Integer.parseInt(uid);
        Users users=null;
        switch (userid){
            case  1:
                users=new Users(1,"张三","abc",11.22);
                break;
            case  2:
                users=new Users(2,"张三2","abc2",222.1);
                break;
            case  3:
                users=new Users(3,"张三3","abc3",33.2);
                break;
            case  4:
                users=new Users(4,"张三4","abc4",44.4);
                break;
            default:
                users=new Users();
        }

        //java->json
        JSONObject jsonObject = JSONObject.fromObject(users);//json

        resp.setContentType("text/html;charset=utf-8");
        PrintWriter writer = resp.getWriter();
        writer.print(jsonObject);

    }
}

2. jsp页面
<%--
  Created by IntelliJ IDEA.
  User: xiaomi
  Date: 2021/3/5
  Time: 11:22
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title




    uid:
name:
pass:
money:

如果启动tomcat 报错显示找不到类,就把lib里的东西复制到tomcat的lib里面

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/677941.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号