SpringMVC-JSON数据交换

   在上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中静态资源。

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

原文地址:https://www.cnblogs.com/Black-YeJing/p/9131123.html