javaee SpringMVC中json的使用

jsp

html 复制代码
<%--
  Created by IntelliJ IDEA.
  User: 呆萌老师:QQ:2398779723
  Date: 2019/12/6
  Time: 15:55
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    String baseurl=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath();
    pageContext.setAttribute("baseurl",baseurl);
%>
<html>
<base href="${baseurl}" />
<head>
    <title>Title</title>
    <script src="${baseurl}/static/js/jquery1.11.3.min.js"></script>
    <script src="${baseurl}/static/js/reg.js"></script>
</head>
<body>
<from action="${baseurl}/users/reg" method="post">
    <pre>
    用户名:<input type="text" name="uname" /><span id="s1"></span>
    密码:<input type="password" name="pwd" />
    确认密码:<input type="password" name="repwd" />
    专业:<select id="major" >

         </select>
    <input type="submit" name="sub" value="注册" />
    </pre>
</from>
</body>
</html>

js

javascript 复制代码
$(function(){

    //给文本框做失去焦点事件
    $(":text[name='uname']").blur(function(){

          //1.获得用户名
        var uname=$(this).val();
        //2.通过ajax将用户名传到服务器端 判断 将结果返回
        $.get("http://localhost:8080/TestSpringMVC4/users/checkUname?uname="+uname,function(msg){

            //3.处理返回的结果
            if(msg=="exists")
                $("#s1").html("已存在");
            else
                $("#s1").html("可以使用");

        })
    })

    //加载所有的专业信息
    $("#major").click(function(){

        //通过ajax到服务器端取回所有的专业信息
        $.getJSON("http://localhost:8080/TestSpringMVC4/users/getMajorList2",function(arr){

            //清除之前的option
            $("#major").empty();

            $.each(arr,function(k,v){

                //返回的数据 组装成option添加到select中
                var option=$("<option></option>");

                option.val(v.id);

                option.html(v.name);

                $("#major").append(option);

            })

        })

    })

})

java

java 复制代码
package com.test.controller;

import com.alibaba.fastjson.JSON;
import com.test.pojo.Major;
import com.test.pojo.Users;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.List;

@Controller
@RequestMapping("/users")
public class UsersController {

    @RequestMapping("/loginUi")
    public String loginUi()
    {
        return "login";
    }

    @RequestMapping("/checkLogin")
    public String checkLogin(Users user, HttpServletRequest request)
    {
        if(user.getUname().equals("daimenglaoshi") && user.getPwd().equals("123"))
        {
            //存入session
            HttpSession session= request.getSession();

            session.setAttribute("loginUser",user);

            //重定向
            return "redirect:/index.jsp";

        }
        else
            return "login";

    }

    @RequestMapping("/regUi")
    public String regUi()
    {
        return "reg";
    }

    @RequestMapping("/checkUname")
    //返回响应体(响应的内容)  不做转发
    @ResponseBody
    public String checkUname(String uname)
    {
        if(uname.equals("daimenglaoshi"))
            return "exists";
        else
            return "not exists";
    }

    @RequestMapping("/getMajorList")
    @ResponseBody
    //框架会帮你转换成json字符串的
    public List<Major> getMajorList()
    {

        List<Major> majorList=new ArrayList<Major>();

        System.out.println("2222");

        majorList.add(new Major(1,"aaa"));

        majorList.add(new Major(2,"bb"));

        return majorList;
    }

    @RequestMapping(value="/getMajorList2",produces = "text/html;charset=utf-8")
    @ResponseBody
    public String getMajorList2()
    {

        List<Major> majorList=new ArrayList<Major>();

        majorList.add(new Major(1,"计算机"));

        majorList.add(new Major(2,"英语"));

        return JSON.toJSONString(majorList);
    }





}

项目结构

相关推荐
我命由我12345几秒前
充血模型与贫血模型
java·服务器·后端·学习·架构·java-ee·系统架构
重学一遍18 分钟前
Spring Security + JWT + Redis 的认证授权系统
java·redis·spring
daladongba27 分钟前
Spring Cloud Gateway
java·spring cloud·gateway
qq_3181215928 分钟前
互联网大厂Java面试故事:在线教育微服务架构、缓存优化与AI智能教学全流程解析
java·spring boot·redis·微服务·kafka·spring security·在线教育
sunddy_x38 分钟前
Java反射
java
资生算法程序员_畅想家_剑魔1 小时前
Java常见技术分享-分布式篇-分布式系统基础理论
java·开发语言·分布式
色空大师2 小时前
【Result<T>泛型接收转化失败】
java·泛型
Geoking.2 小时前
【设计模式】中介者模式(Mediator)详解
java·设计模式·中介者模式
大猫和小黄2 小时前
Java异常处理:从基础到SpringBoot实战解析
java·开发语言·spring boot·异常
hero.fei2 小时前
kaptcha 验证码生成工具在springboot中集成
java·spring boot·后端