在上Springmvc-JSON数据交换的时候,老师提出了两个问题:

1、JSON数据交互两个注解的作用?

2、静态资源访问的几种配置方式,并简述?

老师刚提出这两个问题的时候我一头雾水的。JSON数据交互的两个注解是什么呢?静态资源访问的配置方式是哪几种呢?。于是各种翻书,各种百度。于是,终于得出了一份答案,如下:

(有什么问题,请在下方留言喔!我们互相讨论~)

一、请简述JSON数据交互两个注解的作用

答:JSON数据交互有两个注解:
       1、@RequestBody:这个注解是接受数据的,用户将请求体中的数据绑定到方法的形参中。该注解用在方法的形参上
       2、@ResponseBody:这个注解是响应数据的,用于直接返回return对象。该注解用在方法上。

二、请简述静态资源访问的几种配置方式

答:(在springmvc-config.xml配置)一共有三种方式:
       1、使用<mvc:resources location="/**/" mapping="/js/**"/>
          ①:location:用于定位需要访问的本地静态资源文件路径,具体到某个文件夹
          ②:mapping:匹配静态资源全路径,其中"/**"表示文件夹及子文件夹下的某个具体文件
       
       2、使用<mvc:default-servlet-handler>标签:在springmvc-config.xml配置后,会在springmvc上下文中定义一个Servlet请求处理器。它会像一个检察院,对进入DispatcherServlet的URL进行筛选。如果发现是静态资源的请求,就将该请求转由Web服务器默认的Servlet处理,默认的Servlet就会对这些静态资源方形。如果不是静态资源的请求,才由DispatcherServlet继续处理。
       
       3、激活Tomocat默认的Servlet来处理静态文件访问:激活Tomocat默认的Servlet时,需要在web.xml中添加以下内容。
          <servlet-mapping>
           <servlet-name>default</servlet-name>
           <url-pattern>*.js</url-pattern>
         </servlet-mapping>
          <servlet-mapping>
           <servlet-name>default</servlet-name>
           <url-pattern>*.css</url-pattern>
         </servlet-mapping>
           ...

总结:

·第一种和第三种配置方式可以选择性的释放静态资源。
       ·第二种配置方式配置相对简单,只需要一行代码,就可以释放所有静态资源。
       ·第二和第三种配置方式会导致项目移植性较差,需要根据具体的Web服务器来更改Servlet名称
       ·第三种配置方式运行效率更高,因为服务器启动时已经加载了web.xml中静态资源。

       在实际开发中,更经常使用第一种配置方式,这样就不必考虑服务器问题了。

SpringMVC-JSON数据交换的更多相关文章

  1. Js中JSON数据交换使用总结

    Json格式简介 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是JavaScript原 ...

  2. json 数据交换格式与java

    http://wiki.mbalib.com/wiki/数据交换 数据交换是指为了满足不同信息系统之间数据资源的共享需要,依据一定的原则,采取相应的技术,实现不同信息系统之间数据资源共享的过程. 数据 ...

  3. json数据交换

    1.1   为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据. 1.2   s ...

  4. SpringMVC JSON数据交互

    本节内容: @RequestBody @ResponseBody 请求json,响应json实现 前端可以有很多语言来写,但是基本上后台都是java开发的,除了c++(开发周期长),PHP和#Net( ...

  5. iOS 中 JSON 数据交换格式

         JSON (JavaScript Object Notation)是一种轻量级的数据交换格式. JSON 的详细教程,能够參见 JSON 中国:http://www.json.org.cn/ ...

  6. springmvc json 数据

    这里是controllor层 @RequestMapping("/traceupdatestatus") @ResponseBody public boolean traceupd ...

  7. Json数据交换一Gson

    Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库.可以将一个 JSON 字符串转成一个 Java 对象,或者反过来. 添加依赖 <depe ...

  8. Json数据交换一Jackson

    依赖 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>ja ...

  9. 使用 C++ 处理 JSON 数据交换格式

    一.摘要 JSON 的全称为:JavaScript Object Notation,顾名思义,JSON 是用于标记 Javascript 对象的,JSON 官方的解释为:JSON 是一种轻量级的数据传 ...

  10. springmvc json数据

    的 @RequestMapping("/getAllEdu") @ResponseBody public void getAllEdu(HttpServletRequest req ...

随机推荐

  1. 《Effective C++》结语

    九月的这三周把<Effective C++>重读了一遍,尽量以自己的理解,用最简单的(其实太深入也不会写)的语言把书里面的重点都写了下来. 由于之前找实习占用了大量的时间,写的博客都比较水 ...

  2. Codeforces Round #201 (Div. 2). E--Number Transformation II(贪心)

    Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Description You ar ...

  3. python学习之路(3)

    字符串和编码 因为python最早只支持ASCII编码普通的字符串'ABC'在Python内部都是ASCII编码的.Python提供了ord()和chr()函数,可以把字母和对应的数字相互转换 后来p ...

  4. 可滚动UIStackView 竖向居中 / 横向右对齐

    重点: 在scroll view和stack view之间加一个UIView. 竖向居中Tutorial: https://stackoverflow.com/questions/50766400/c ...

  5. 如何将浏览器上的JS文件屏蔽

    在学习自定验证时,需要在页面上进行调试运行结果,这时的JS会影响运行结果的显示,所以我们会将JS代码屏蔽掉,那么我们该如何做呢? 第一步: 在浏览器地址栏输入about:config  点击“我保证会 ...

  6. 浏览器端-W3School-HTML:HTML DOM Table 对象

    ylbtech-浏览器端-W3School-HTML:HTML DOM Table 对象 1.返回顶部 1. HTML DOM Table 对象 Table 对象 Table 对象代表一个 HTML ...

  7. Serializable 和 Parcelable 的区别?

    1.在使用内存的时候,Parcelable 类比 Serializable 性能高,所以推荐使用 Parcelable 类.2.Serializable 在序列化的时候会产生大量的临时变量,从而引起频 ...

  8. dvm 的进程和 Linux 的进程, 应用程序的进程是否为同一个概念?

    dvm 指 dalvik 的虚拟机. 每一个 Android 应用程序都拥有一个独立的 Dalvik 虚拟机实例,应用程序都在它自己的进程中运行.而每一个 dvm 都是在 Linux 中的一个进程,所 ...

  9. JavaEE-实验一 Java常用工具类编程

    该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1.  使用类String类的分割split 将字符串  “Solutions to selected exercises ca ...

  10. 二十一:jinja2之模板继承

    模板继承可以把有共性的一些代码抽出来放到父模板中,其他需要次特性的文件继承模板即可 在jinja2中,使用extends来继承定义好的模板,使用{% block 位置名%} {% endblock % ...