springmvc配置文件(springmvc配置文件解析器)
本篇文章给大家谈谈springmvc配置文件,以及springmvc配置文件解析器对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、springmvc配置文件springmvc-servlet.xml
- 2、面试 springmvc配置文件怎么配置
- 3、前后端分离SpringMVC配置
- 4、application.properties有哪些配置springmvc
springmvc配置文件springmvc-servlet.xml
你好!
spring mvc 的
mvc:resources mapping="***" location="***"
标签是用来进行配置静态资源访问的。
mapping就是表示你的请求路径,在你这个例子里就是相对路滑余径为/statics的请求
location就是表示mapping请求的最终位置,即mapping的请求最后指向的位置
举个栗子:
现在有个请求 :端口/项目名/statics/test.js
当springmvc拦截后,会去项目的static目录找test.js这个文件
因为是同名所以可能会看不清楚,可以更换下配置,比如:
mvc:resources mapping="/javascript/**" location="/statics/javascript/"/
mvc:resources mapping="/styles/**" location="/statics/css/"/
mvc:resources mapping="/images/**"档乎 location="/statics/images/"/
springmvc遇到:端口/项目名/javascript/test.js,会到项目下statics
目录下的javascript目录找test.js,同理访问..../styles/xxx.css会到项目下statics
目录下的css目录找信蠢滚xxx.css,images也同样。
希望对你有帮助!
面试 springmvc配置文件怎么配置
现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了。不过要想灵活运用Spring MVC来应对大多数的Web开发,就必须要掌握它的配置及原理。
一、Spring MVC环境搭散宴纤建:(Spring 2.5.6 + Hibernate 3.2.0)
1. jar包引入
祥型 Spring 2.5.6:spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar
Hibernate 3.6.8:hibernate3.jar、hibernate-jpa-2.0-api-1.0.1.Final.jar、antlr-2.7.6.jar、commons-collections-3.1、dom4j-1.6.1.jar、javassist-3.12.0.GA.jar、jta-1.1.jar、slf4j-api-1.6.1.jar、slf4j-nop-1.6.4.jar、相应数据库的驱动jar包
SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请求给相应的Handler,Handler处理以后再返回相应的视图(View)和模型(Model),返回的视图和模型都可以不指定,即可以只返回Model或只返回View或都不返回。
DispatcherServlet是继承自HttpServlet的,既然SpringMVC是基于DispatcherServlet的,那么我们先来配置一下DispatcherServlet,好让它能够管理我们希望它管理的内容。HttpServlet是在web.xml文件中声明的。
!-- Spring MVC配置 --
!-- ====================================== --
servlet
servlet-namespring/servlet-name
servlet-classorg.springframework.web.servlet.DispatcherServlet/冲仿servlet-class
!-- 可以自定义servlet.xml配置文件的位置和名称,默认为WEB-INF目录下,名称为[servlet-name]-servlet.xml,如spring-servlet.xml
init-param
param-namecontextConfigLocation/param-name
param-value/WEB-INF/spring-servlet.xml/param-value 默认
/init-param
--
load-on-startup1/load-on-startup
/servlet
servlet-mapping
servlet-namespring/servlet-name
url-pattern*.do/url-pattern
/servlet-mapping
!-- Spring配置 --
!-- ====================================== --
listener
listenerclass
org.springframework.web.context.ContextLoaderListener
/listener-class
/listener
!-- 指定Spring Bean的配置文件所在目录。默认配置在WEB-INF目录下 --
context-param
param-namecontextConfigLocation/param-name
param-valueclasspath:config/applicationContext.xml/param-value
/context-param
spring-servlet.xml配置
spring-servlet这个名字是因为上面web.xml中servlet-name标签配的值为spring(servlet-namespring/servlet-name),再加上“-servlet”后缀而形成的spring-servlet.xml文件名,如果改为springMVC,对应的文件名则为springMVC-servlet.xml。
?xml version="1.0" encoding="UTF-8"?
beans xmlns=""
xmlns:xsi="" xmlns:p=""
xmlns:context=""
xsi:schemaLocation="
a href="";/a"
!-- 启用spring mvc 注解 --
context:annotation-config /
!-- 设置使用注解的类所在的jar包 --
context:component-scan base-package="controller"/context:component-scan
!-- 完成请求和注解POJO的映射 --
bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /
!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀 --
bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp" /
/beans
DispatcherServlet会利用一些特殊的bean来处理Request请求和生成相应的视图返回。
关于视图的返回,Controller只负责传回来一个值,然后到底返回的是什么视图,是由视图解析器控制的,在jsp中常用的视图解析器是InternalResourceViewResovler,它会要求一个前缀和一个后缀
在上述视图解析器中,如果Controller返回的是blog/index,那么通过视图解析器解析之后的视图就是/jsp/blog/index.jsp。
前后端分离SpringMVC配置
之前用到的前后端分离都是通过nginx进行代理与反向代理的方式。最近在公司做一些小型的内部使用的管理系统,vue+SpringBoot,vue使用history模式,在部署的时候希望除去nginx层。即tomcat既做为rest server也作为web static server。
最简单的方式就是放入到classpath中,SpringMVC默认的几个resouce路径可以自行百度。然后流程就是:
启动成功,访问静态文件成功,但这样一个笑如培过程是有问题的,有点和前后端分离背道而驰,正所谓分久必合合久必分......当前端修改一点点东西,前端需要build服务端也需要跟着restart,那我们可以选择指定静态文件的路径。于是乎各种baidu google下搜到了可以通过继承 WebMvcConfigurerAdapter 重写 addResourceHandlers 来指定静态文件路径。
第一版大概长成这个样子:
后来各种服务无响应,自信的认为是 \ 和 / 的问题,然后各种排列组合。嗯很明显失败了。。。
再后来看到配置classpath需要 classpath:/xxx 才碰唯想起来应该改成 file:/f:/static/
嗯,果然是这样,然后将路径提取到配置文件。。。嗯没什么技术含量,但是是容易忽视的小橡仿坑。。。
vue中路由模式默认是hash,但是由于使用的是history模式,所以需要SpringMVC进行配置支持,很简单将所有的静态文件404都返回index.html。
SpringMVC最终配置:
目前设置关闭缓存,后期添加文件hash判读。
内容很简单,没什么可总结的······当个备忘录。。。
[img]application.properties有哪些配置springmvc
1) 应用配置 (SpringApplication)
# 运行时显示的横幅(Banner)
spring.banner.charset=UTF-8 # banner 文件编码
spring.banner.location=banner.txt # banner 文件位置
spring.main.banner-mode=console # 横幅(banner)的模式,可选值:off、console、log
spring.config.name=application # 配置文件名
spring.config.location= # 配置文件位置
spring.aop.auto=true # AOP 切面,衡神搏添加 @EnableAspectJAutoProxy
spring.aop.proxy-target-class=false # 是否要创建基于子类(CGLIB)的代理(true),而不是基于标准的基于Java接口的代理(false)
spring.autoconfigure.exclude= # 自动配置类排除
spring.beaninfo.ignore= true # 跳过搜索BeanInfo类
2) Spring 缓存配置
spring.cache.cache-names= # 由底层缓存管理器支持的要创建的缓存名称的逗号分隔列表
spring.cache.ehcache.config= # 用于初始化 EhCache 的配咐祥置文件瞎高的位置
spring.cache.guava.spec= # 用于创建缓存的规范,检查 CacheBuilderSpec 有关规格格式的更多细节
spring.cache.hazelcast.config= # 用于初始化 Hazelcast的 配置文件的位置
spring.cache.infinispan.config= # 用于初始化 Infinispan 的配置文件的位置
spring.cache.jcache.config= # 用于初始化缓存管理器的配置文件的位置
spring.cache.jcache.provider= # 用于检索符合 JSR-107 的缓存管理器的 CachingProvider 实现的完全限定名称
spring.cache.type= # 缓存类型,默认情况下根据环境自动检测
3) Redis 配置 (RedisProperties)
spring.redis.database=0 # 连接工厂使用的数据库索引
spring.redis.host=localhost # Redis 服务器主机
spring.redis.port=6379 # Redis 服务器端口
spring.redis.password= # 登录 Redis 服务器的密码
spring.redis.timeout=0 # 连接超时(毫秒)
spring.redis.pool.max-active=8 # 给定时间池可以分配的最大连接数,使用负值为无限制
spring.redis.pool.max-idle=8 # 池中 “空闲” 连接的最大数量,使用负值来表示无限数量的空闲连接
spring.redis.pool.max-wait=-1 # 连接分配在池耗尽之前在抛出异常之前应阻止的最大时间量(以毫秒为单位),使用负值无限期地阻止
spring.redis.pool.min-idle=0 # 定义池中维护的最小空闲连接数,此设置只有在正值时才有效果
spring.redis.sentinel.master=
spring.redis.sentinel.nodes=
关于springmvc配置文件和springmvc配置文件解析器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。