精华内容
下载资源
问答
  • Json交互 一.415错误 检查ajax请求结构与拼写 $.ajax({ url:"${pageContext.request.contextPath}/Ajax/getJson.action", type:"POST", contentType:"application/json;charset=...

    Json交互

    一.415错误

    检查ajax的请求结构与拼写

    $.ajax({
    
    url:"${pageContext.request.contextPath}/Ajax/getJson.action",
    
    type:"POST",
    
    contentType:"application/json;charset=UTF-8",
    
    data:params,
    
    datatype:"json",
    
    success:function (data){
    
    alert(data);
    
    }
    
    

    检查传输的json格式是否标准

    Json字符串:
    
    Var json = ‘{“name”:”value”,”name”:number}’;
    
    Json对象:
    
    Var json = {“name”:”value”,”name”:number};
    
    Json对象转为json字符串
    
    JSON.stringify(jsonobject);

    检查服务器中对应请求的代码

    Java:

    @RequestMapping(value="/Ajax/getJson.action")
    
    public @ResponseBody Items getJsonItem(@RequestBody Items items) {
    
    
    
    
    
    //System.out.println(items);
    
    
    
    return items;
    
    
    
    
    
    
    
    }

    检查服务器中是否具有jar包

     

     

    缺少jar包,会有控制台Content type 'application/json;charset=UTF-8' not supported的报错。

    1. restful风格

    Java代码:

    @RequestMapping(value="/item/{id}.action")
    
    public String getItem(@PathVariable() Integer id,Model model) {
    
    Items item = itemService.GetItemById(id);
    
    
    
    model.addAttribute("item", item);
    
    return "item";
    
    
    
    }

    页面代码:

    Item.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    
        pageEncoding="UTF-8"%>
    
        <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    
    <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt"  prefix="fmt"%>
    
    <!DOCTYPE html>
    
    <html>
    
    <head>
    
    <meta charset="UTF-8">
    
    <title>Insert title here</title>
    
    </head>
    
    <body>
    
    <label>id:${item.id}</label>
    
    </body>
    
    </html>
    1. 拦截器

    3.1实现

    3.1.1类的编写

    package com.t.Interceptor;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.HandlerInterceptor;
    import org.springframework.web.servlet.ModelAndView;
    
    public class HandlerIntercaptor1 implements HandlerInterceptor {
    
    	//视图渲染后返回
    	//可以用来获得controller,异常记录日志
    	@Override
    	public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
    			throws Exception {
    		// TODO Auto-generated method stub
    		System.out.println(" afterCompletion ....");
    	}
    	//controller执行后,但视图未返回
    	//可以用来填充模型数据,或者公用信息,便于显示
    	@Override
    	public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
    			throws Exception {
    		// TODO Auto-generated method stub
    		System.out.println(" postHandle ");
    	}
    	//controller执行前调用此方法
    	//可以假如登录校验,权限校验等
    	@Override
    	public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception {
    		// TODO Auto-generated method stub
    		System.out.println(" preHandle ");
    		return true;
    	}
    
    }
    

    3.1.2springmvc xml文件的配置

    <?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-4.0.xsd
            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">
    
            
            
            <!-- 扫描@Controler  @Service   -->
            <context:component-scan base-package="com.t"/>
            
            <!-- 处理器映射器 -->
    <!--         <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> -->
            <!-- 处理器适配器 -->
    <!--         <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/> -->
            <!-- 注解驱动 -->
            <mvc:annotation-driven conversion-service="conversionServiceFactoryBean"/>
            
    <bean id="conversionServiceFactoryBean"
    	class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
    	<property name="converters">
    		<list>
    			<bean class="com.t.conversion.DateContverter"></bean>
    
    		</list>
    
    	</property>
    </bean>
           
           <!-- 拦截器 -->
    	<mvc:interceptors>
    		<mvc:interceptor>
    			<!-- 所有请求都进入拦截器 -->
    			<mvc:mapping path="/**" />
    			<bean class="com.t.Interceptor.HandlerIntercaptor1">
    
    			</bean>
    
    		</mvc:interceptor>
    		<mvc:interceptor>
    			<mvc:mapping path="/**" />
    			<bean class="com.t.Interceptor.HandlerIntercaptor2"></bean>
    		</mvc:interceptor>
    
    
    		<mvc:interceptor>
    			<mvc:mapping path="/item/**" />
    			<bean class="com.t.Interceptor.HandlerIntercaptor3"></bean>
    		</mvc:interceptor>
    	</mvc:interceptors>
           
           
           <!-- 文件上传 -->
           <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
           	<!-- 设置文件大小 -->
           	 <property name="maxUploadSize" value="500000"></property>
           
           </bean>
           
           
           <!-- 全局异常处理器 -->
           <bean id="customHandleException" class="com.t.utils.CustomHandleException">
           
           
           </bean> 
            
            
            <!-- 视图解释器 -->
            <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            	<property name="prefix" value="/WEB-INF/jsp/"/>
            	<property name="suffix" value=".jsp"/>
            </bean>
            
       </beans>

    3.2应用举例

    登录验证

    流程:编写登录的controller的url映射方法及页面,登录提交到的controller的方法和映射url。编写配置拦截器,在preHandler中设置如果session中,没有获得username的值,就重定向到登录页面

     

     

    展开全文
  • 1.可能是没到json转换包,或者包版本冲突 2.引用http://www.iteye.com/problems/137503:注册<mvc:annotation-driven />后,相当于自动装配了AnnotationMethodHandlerAdapter和...

    1.可能是没到json转换包,或者包的版本冲突

    2.引用http://www.iteye.com/problems/137503:注册<mvc:annotation-driven />后,相当于自动装配了AnnotationMethodHandlerAdapter和DefaultAnnotationHandlerMapping两个bean,所以不能重复定义,而且spring3.2后,这两个方法已经过期推荐使用RequestMappingHandlerMapping和RequestMappingHandlerAdapter两个类。
    这就是我遇到的问题,弄了很久才搞好,我的是把

    自定义属性编辑器


    注释掉就行了

    展开全文
  • SSM框架的JSON数据交互

    千次阅读 2018-07-15 20:52:16
     直接在代码中加上注解 @ResponseBody 用返回值方式 直接返回@Controller public class JsonController { @Resource(name = "userServiceImpl") private UserService userService; @...

    1. 导包


    2. 直接在代码中加上注解 @ResponseBody  用返回值的方式 直接返回

    @Controller
    public class JsonController {
        @Resource(name = "userServiceImpl")
        private UserService userService;
    
        @RequestMapping("responseDemo")
        public @ResponseBody Map responseDemo(@RequestBody QueryVo queryVo){
            System.out.println(queryVo);
            User user = userService.getUserById(10);
            Map<String,Object> map = new HashMap<>();
            map.put("user",user);
            map.put("code",1);
            map.put("msg","查询成功");
            return map;
        }
    }
    

    3. 包转换异常

     springMVC.xml中配置

     

    <?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-4.0.xsd
            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">
    
            <context:component-scan base-package="cn.hd.controller"></context:component-scan>
            <!--配置json的转换器-->
            <mvc:annotation-driven>
                    <mvc:message-converters>
                            <bean class="org.springframework.http.converter.StringHttpMessageConverter"/>
                            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
                    </mvc:message-converters>
            </mvc:annotation-driven>
    </beans>
    展开全文
  • 文章目录8.3 JSON数据交互8.3.1 Spring MVC中JSON交互形式8.3.2 应用实例JSON字符串交互实例 8.3 JSON数据交互 由于JSON格式简单,解析方便,所以JSON格式数据在接口调用,前后端传参非常常见。在Spring MVC中进行...

    项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm

    8.3 JSON数据交互

    由于JSON格式简单,解析方便,所以JSON格式的数据在接口调用,前后端传参非常常见。在Spring MVC中进行JSON交互,主要需要用到Spring MVC中的两个注解(RequestBody和ResponseBody)。

    8.3.1 Spring MVC中JSON交互形式

    Spring MVC和前端的数据交互主要有两种方式,一种是浏览器请求通过表单形式的K-V结构传参到后端。另外一种是浏览器通过JSON字符串(JSON格式的字符串,本质上里边也是K-V结构)传递参数到后端。在这里主要讲解第二种方式。前后端前后端交互形式图如图8-4所示。

    16181713_8-4
    图8-4 Spring MVC与前端的JSON数据交互

    8.3.2 应用实例

    RequestBody注解和ResponseBody注解在前面的5.2节中已经进行了讲解。在这里仅仅演示如何使用。使用User对象的JSPN字符串传入到Controller方法中,并且返回JSON字符串到页面中展示。注意MappingJackson2HttpMessageConverter转换器需要引入两个Jar包,也就是在5.2.3中添加的Jackson包。然后新建JsonController类,如代码清单8-25所示。

    JSON字符串交互实例

    代码清单8-25:JSON字符串交互实例

    /**
     * JSON数据交互演示
     */
    @Controller
    @RequestMapping("/json")
    public class JsonController {
        /**
         * JSON字符串转换为对象
         * 并且将对象转换成json格式数据返回到前端
         * @param user
         * @return
         */
        @PostMapping(value = "/user")
        @ResponseBody
        public User user(@RequestBody User user) {
            System.out.println("-----user=" + user);
            return user;
        }
    }
    

    在这里,选择Postman作为演示工具。访问 http://127.0.0.1:8080/json/user 。并且设置访问方式为POST,在Body中选择raw,填入JSON字符串,选择Content-Type为application/json。如图8-5所示。

    16181721_8-5
    图8-5 使用JSON数据进行访问

    返回的结果如图8-6所示。

    16181728_8-6
    图8-6 对象返回结果

    展开全文
  • SSM框架中前后台json数据交互的相关知识 @RequestBody注解实现接收http请求的json字符串,并将其转换为Java对象 @ResponseBody注解用于将Controller的方法返回的对象,通过HttpMessageConverter接口转换为指定...
  • ssm实现ajax前后端json数据交互

    千次阅读 2018-07-12 21:54:17
    这些天在写项目时候,一直被一个事情困扰,就是ajax和后端交互时候总是得不到json数据,自己在springboot测试却没有问题,在此记录一下有关于spring-mvc.xml配置。当然还有源码。 首先在pom.xml中配置json...
  • json数据交互.txt

    2020-06-20 11:56:57
    SSM框架中数据的交互json的处理等等。
  • 流程: 客户端-----》请求json ...但如果请求是key/value,不是json,那就不需要@RequestBody将json串转成java对象   请求是key/value,输出json串比较常用。 springmvc使用jackson包进行json转...
  • 二、json交互 1、页面引入 2、springmvc框架配置:即支持 3、controller要素 三、ssm框架异常处理思路 1、自定义异常处理器,继承HandlerExceptionResolver 接口 2、自定义错误页面 3、springmvc.xml...
  • 前端ajax和ssm后端使用json交互实践

    千次阅读 2018-07-26 18:15:30
    传统的ssm是使用jsp作为View层,后端将...采用ajax传递json数据实现前后端数据交互的方式可以降低前后端耦合度。  前端代码: &lt;form id="postFrom" action=""&gt; &lt;in...
  • 由于前后端数据分离强烈需要,现在越来越需要接口化开发,特别是服务器端开发和移动端后台开发,前后端的数据交互自然不能使用之前直接传数据方式,于是JSON便成了最佳选择,JSON的底层是HashMap,键值对...
  • 解决SSM下Ajax交互返回Json数据 POST 406 (Not Acceptable)问题 如果是以.html结尾,是不能响应json数据的,需要修改后缀名 //解决方案 &lt;servlet-mapping&gt; &lt;servlet-name&gt;springMVC&...
  • @RequestBody注解实现接收http请求的json数据,将json数据转换为java对象,注解加载方法参数前 @ResponseBody注解用于将Controller的方法返回的对象,通过HttpMessageConverter接口转换为指定格式的数据如:json,...
  • SSM框架增加JSON数据格式支持

    千次阅读 2018-04-26 19:00:48
    后台与前台的交互经常是通过JSON交互,并以此实现前后端分离,SSM框架工程增加JSON格式也很简单,因为学比较久,所以这一次记录一下,方便后面查找。增加JSON格式三部曲1.导包2.修改springMvc.xml配置文件3.加上@...
  • 最近项目上与安卓端做JSON数据交互,使用的SSM框架,刚开始的时候感觉很简单,想着不就是把安卓端的JSON数据封装为Bean类对象吗? 于是就这样写了  可是这样一直报400,百度原因是因为请求url中没有与...
  • SSM与android端数据交互

    千次阅读 2018-05-27 20:50:01
    最近第一次用ssm与安卓端实现了数据交互,我这里数据交互通过传送接受JSON数据来实现。实现了登录注册和对某些实体类数据增删改查。   二.后端具体实现 我们实体类数据和安卓端实体数据名字要是相同...
  • 1、JSON对象结构中,关键字key必须为()类型。 A、Object B、Array C、String D、Number 参考答案 :C 答案说明 : 2、下面不属于AJAX中属性是()。 A、data B、contentType C、dataType D、database 参考答案 :...
  • SSM整合-返回分页的json数据

    千次阅读 2018-08-22 13:07:23
    我们分页查询是从首页直接转到/emps请求,然后控制器收到请求,查出数据,然后转发到list.jsp页面遍历展示出来,现在这种做法只能适用于客户端是浏览器与服务器之间的交互,但是我们除了浏览器之外还有可能有Android...
  • 首先是在EmployeeController.java中,新建一个返回json数据的方法,注销掉原有getEmps方法。EmployeeController.javapackagecom.gong.curd.controller;importjava.util.List;importorg.springframework.beans....
  • SSM + Android 网络交互的那些事

    千次阅读 2016-12-14 17:58:36
    ssm做为后台与android交互,相信只要是了解过人都知道一些基本的数据交互,向json,对象,map交互就像喝水一样简单,这些基本交互也是学习ssm后台开发基本,但是好多人却是会忽略文件交互。毕竟大多数培训...
  • 首先我们要知道数据传输流程,在浏览器上,我们向服务器发送请求,服务器会return一个jsp页面,也可以是json数据,其实本质上都是数据,jsp页面使用浏览器解析展示页面,json解析然后保存在安卓本地。 ssm包整合,...
  • 小程序基于SSM数据交互

    千次阅读 2018-10-07 22:32:52
    springmvc框架写到现在终于牵扯到小程序了(所以别说我...小程序使用的是wx.request的api来提交和接收数据,最常见的就是接收后台传过来的json数据,并对其进行解析 先看运行结果: 这里总结springmvc框架的三...
  • ssm框架下,前台与后台的数据交互

    万次阅读 多人点赞 2017-02-22 19:21:57
    ssm框架下,js页面通过json数据发送到后台,后台处理之后,再将数据发送到前台。 在前台,要将用户名和邮箱发送到后台,先将用户名和和邮箱转成json形式的数据,在通过ajax发送到后台,其中url为后台要处理数据的...
  • 415、500错误都报过,看了很多解决办法,请教了很多人,花了半个周时间,最终解决,在此展示我认为对我帮助资料和心得体会 查考资料:http://blog.csdn.net/u012441222/article/details/56494931  ...
  • SSM编写http接口返回JSON格式数据

    万次阅读 2017-11-19 22:25:43
    由于现在前后端数据分离强烈需要,现在越来越需要接口化开发,特别是服务器端开发和移动端后台开发,前后端的数据交互自然不能使用之前直接传数据方式,于是JSON便成了最佳选择,JSON的底层是HashMap,键值对...
  • 从对安卓开发到一无所知,到第一次完成SSM与安卓应用通信也才三天时间(自信.jpg),其实我学安卓目的是项目答辩做出与众不同项目,我设想安卓应用特别简单,涉及到知识很少。对于初学者,我可以建议大家...
  • 这几天自己一直在琢磨着如何利用JQueryajax方法向服务器发送json数据,服务器接收到数据后进行数据库查询操作返回数据到ajaxsuccess方法内。在自己研究下后成功实现了。在这个过程中,自己不仅学习了相关SSM知识...

空空如也

空空如也

1 2 3 4 5 6
收藏数 116
精华内容 46
关键字:

ssm的json数据交互