zoukankan      html  css  js  c++  java
  • java之spring mvc之ajax

    1.可以使用servletAPI来实现 ajax

    Controller 类

    @Controller
    public class AjaxController {
        @RequestMapping("/ajax.do")
        public String ajax(HttpServletResponse resp) throws IOException{
            resp.getWriter().print("ajax hello");
            return null;
        }
    }

    Jsp

    <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
    <script type="text/javascript">
    $(function(){
        $('#btn').click(function(){
            $.post("ajax.do",function(data){
                alert(data);
            });
        });
    });
    </script>
    </head>
    <body>
    <button id="btn">异步获取数据信息</button>
    </body>

    2. 使用 springmvc 提供的组件来实现 ajax

    导入 jackson 的相关包:

     

    Controller 处理

    @RequestMapping("/json.do")
        @ResponseBody//将返回内容插入页面中
        public List<User> list(){
            List<User> list = new ArrayList<User>();
            list.add(new User(1,"张三",22));
            list.add(new User(2,"李四",32));
            return list;
        }

    配置文件

    <!-- json配置 -->
         <bean id="stringConverter"  
            class="org.springframework.http.converter.StringHttpMessageConverter">  
            <property name="supportedMediaTypes">  
                <list>  
                    <value>text/plain;charset=UTF-8</value>  
                </list>  
            </property>  
        </bean>  
        <bean id="jsonConverter"  
            class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean>  
        <bean  
            class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  
            <property name="messageConverters">  
                <list>  
                    <ref bean="stringConverter" />  
                    <ref bean="jsonConverter" />  
                </list>  
            </property>  
        </bean>  

    Jsp 页面

    <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
    <script type="text/javascript">
    $(function(){
        $('#btn').click(function(){
            $.post("json.do",function(data){
                var html="";
                for(var i=0;i<data.length;i++){
                    html+="<tr><td>"+data[i].id+"</td><td>"+data[i].name+"</td><td>"+data[i].age+"</td></tr>"
                }
                $("#content").html(html);
            });
        });
    });
    </script>
    </head>
    <body>
    <button id="btn">异步获取数据信息</button>
    <table width="80%" align="center">
        <tr>
            <td>编号</td>
            <td>姓名</td>
            <td>年龄</td>
        </tr>
    <tbody id="content"></tbody>
    </table>
    </body>
    </html>

    配置优化 

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:p="http://www.springframework.org/schema/p"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xsi:schemaLocation="
            http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc.xsd">
        <!-- 配置视图解析器 -->
        <bean id="viewResolver"
            class="org.springframework.web.servlet.view.UrlBasedViewResolver">
            <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
               <!-- 为响应的视图名称加上前缀  -->
            <property name="prefix" value="/WEB-INF/jsp/"/>
            <!-- 为响应的视图名称加上后缀  -->
            <property name="suffix" value=".jsp"/>
        </bean>
        <mvc:annotation-driven/>
        <context:component-scan base-package="cn.sxt.controller"/>
    </beans>

     github地址:https://github.com/Vincent-yuan/springmvc_ajax

  • 相关阅读:
    [cf 599A]Patrick and Shopping
    [APIO2014] [Uoj103] [Bzoj3676] Palindromes回文串 [Manacher,后缀数组]
    [Hdu3068]最长回文[Manacher]
    [hdu2222] [AC自动机模板] Keywords Search [AC自动机]
    [Bzoj3940] [AC自动机,USACO 2015 February Gold] Censor [AC自动机模板题]
    [Poj3261] [Bzoj1717] [后缀数组论文例题,USACO 2006 December Gold] Milk Patterns [后缀数组可重叠的k次最长重复子串]
    [Poj1743] [后缀数组论文例题] Musical Theme [后缀数组不可重叠最长重复子串]
    [UOJ#35] [UOJ后缀数组模板题] 后缀排序 [后缀数组模板]
    [Bzoj4196] [NOI2015] 软件包管理器 [树链剖分,线段树]
    [Bzoj4195] [NOI2015] 程序自动分析 [并查集,哈希,map] 题解
  • 原文地址:https://www.cnblogs.com/Vincent-yuan/p/11279971.html
Copyright © 2011-2022 走看看