在spring mvc中添加css

我已经在这个网站和许多其他人看到了很多解决方案,但这对我来说似乎没什么用。 所以我再次提出这个常见问题如何使用spring mvc配置css

这是我的配置

web.xml中

   log4jConfigLocation classpath:log4j.xml   contextConfigLocation  /WEB-INF/spring-servlet.xml /WEB-INF/security-context.xml    org.springframework.web.context.ContextLoaderListener   org.springframework.web.util.Log4jConfigListener    springSecurityFilterChain org.springframework.web.filter.DelegatingFilterProxy   springSecurityFilterChain /*   spring org.springframework.web.servlet.DispatcherServlet 1   spring /   default *.css   index.html index.htm index.jsp default.html default.htm default.jsp   

为spring-servlet.xml

              classpath:hibernate.cfg.xml   org.hibernate.cfg.AnnotationConfiguration    ${jdbc.dialect} true              

我的css文件位置

 src/main/webapp/css/test.css 

jsp代码

          Login    

test

test.css

 body {color:blue;} h1 {color:#00ff00;} 

请告诉我在哪里犯错误谢谢

假设您使用最新版本的spring删除了AnnotationMethodHandlerAdapter的定义,并将其替换为 。 在其旁边添加 。 在您的web.xml中,删除到*.cssdefault servlet的映射。

   

如果您将css文件移动到旁边的WEB-INF文件夹中,请添加元素到您的配置。 (从web.xml中删除默认映射后的行为)。

必须从web.xml删除以下部分,这将由

  default *.css  

其他改进
其他一些改进(与您的问题无关,但清理您的配置)。

  1. 已经由隐含
  2. 直接使用而不是PropertyPlaceholderConfigurer
  3. LocalSessionFactoryBean替换为AnnotationSessionFactoryBean然后可以删除configurationClass的显式设置。
  4. 而不是UrlBasedViewResolver使用InternalResourceViewResolver并删除viewClass的显式设置。

离开这样的事情

             ${jdbc.dialect} true             

你也有重复bean的问题。 ContextLoaderListenerDispatcherServlet加载了spring-servlet.xml文件,导致复制那里的所有bean。 通常,您应该拆分常规bean(服务,dao,基础结构)和Web相关bean(处理程序,视图),并分别使用ContextLoaderListenerDispatcherServlet加载它们。

spring-servlet.xml添加

    

web.xml删除

  default *.css  

最后在serurity-context.xml添加

  

出于安全原因,您应该将源移动到WEB-INF:WEB-INF / css / test.css

在spring-servlet.xml中

   

在你的JSP中