在上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. python脚本中selenium启动浏览器报错os.path.basename(self.path), self.start_error_message) selenium.common.excep

    在python脚本中,使用selenium启动浏览器报错,原因是未安装浏览器驱动,报错内容如下: # -*- coding:utf-8 -*-from selenium import webdrive ...

  2. Unity3D_(游戏)卡牌03_选关界面

      启动屏界面.主菜单界面.选关界面.游戏界面 卡牌01_启动屏界面 传送门 卡牌02_主菜单界面 传送门 卡牌03_选关界面 传送门 卡牌04_游戏界面    传送门 选关界面效果 (鼠标放在不同关 ...

  3. [DTOJ3996]:Lesson5!(DP+拓扑+线段树)

    题目描述 “最短的捷径就是绕远路,绕远路就是我最短的捷径” 转眼就$Stage\ X$了,$Stage\ X$的比赛路线可以看做一个$n$个点$m$条边的有向无环图,每条边长度都是$1$.杰洛$\cd ...

  4. java web项目启动时浏览器路径不用输入项目名称方法

    http://blog.csdn.net/qq542045215/article/details/44923851

  5. How to correctly use preventDefault(), stopPropagation(), or return false; on events

    How to correctly use preventDefault(), stopPropagation(), or return false; on events I’m sure this h ...

  6. laravel 使用不同账号发送邮件的问题

    业务背景: 公司自己做的oa系统,不同的模块需要用不同的邮箱发送信息给收件人.比如:员工离职的时候用离职的邮箱发送离职邮件通知,员工入职的时候用入职的邮箱发送入职邮件通知.发邮件是一件耗时的任务,如果 ...

  7. Quartz.Net任务调度总结

    Quartz.Net使用经验总结: 学习参考的例子不错,分享一下: (1)https://www.cnblogs.com/jys509/p/4628926.html,该博文介绍比较全面 (2)http ...

  8. linux的awk使用

    awk统计password文件中,登陆shell为“/sbin/nologin”的用户个数 [root@localhost ~]# cat passwd | grep "/sbin/nolo ...

  9. leetcode 215 第K个最大的元素

    此问题可转化为Top K问题进行考虑,当用小顶堆选出K个最大值时,堆顶的元素即为第k大的元素 class Solution { public: int findKthLargest(vector< ...

  10. leetcode 51 N皇后问题

    代码,由全排列转化而来,加上剪枝,整洁的代码: 共有4个变量,res(最终的结果),level,当前合理的解,n皇后的个数,visit,当前列是否放过皇后,由于本来就是在新的行方皇后,又通过visit ...