错误:jsp放在src/main/resources目录,SpringMVC反回视图正确,但浏览器报404

问题描述

  1. 个人学习临时搭的一个Maven管理的SpringMVC项目,试着把jsp文件放在src/main/resources/jsp/目录,Maven配置的是Tomcat7服务器插件,通过Maven build运行后,访问该项目,浏览器报404错误,但 SpringMVC没有报错,打印显示的映射路径和转发到的物理视图都无异常。 
  2. 项目打成war包布署到Tomcat7 和 8服务器上运行,浏览器或以正常访问到src/main/resources/jsp/目录下的jsp文件。
  3. jsp移到webapp/WEB-INF/jsp/目录下,修改视图的物理路径的前辍到该目录,使用Maven build运行,浏览器访问正常。

因素排除:

  1. 视图路径的前后辍配置确定正常。
  2. Controller层的映射路径正确。
  3. 浏览器访问的路径正确。

此问题还未找到具体原因,未能解决

阅读更多

Spring MVC报错:java.lang.NullPointerException at org.apache.jsp.WEB_002dINF.jsp.index_jsp._jspInit(index_jsp.java:31)

  报错:访问Maven管理的SpringMVC 项目jsp页面,错误:at org.apache.jsp.WEB_002dINF.jsp.index_jsp._jspInit(index_jsp.java:31)

  原因:是项目的servlet-apijsp-api两个jar包与Tomcat自带的包冲突导致。

  解决:在pom.xml文件,将这两个jar包添加<scope>provided</scope>控制,只在编译和测试有效。

阅读更多

Spring(二):Spring AOP 理解与应用

  AOP:面向切面编程,是一种对OOP思想再增强的编程思想。它是使用动态代理的技术对一些公共的代码进行统一管理,在需要增强时,使用动态代理对业务方法进行增强。

  AOP 适合那些具有横切逻辑的应用场合,如性能监控,访问控制,事务管理及日志记录,通过横向抽取机制为这类无法通过纵向继承体系进行抽象的重复性代码提供解决方案。

  AOP 将分散在各个业务逻辑代码中的相同代码通过横向切割的方式抽取到一个独立的模块中。

阅读更多

Spring MVC参数校验Validation使用

  Web 应用都应该要求对输入数据和请求数据做数据校验,将异常和非法数据过滤掉,确保系统的健壮性。

  数据校验分客户端校验和服务端校验,客户端校验主要在页面通过JavaScript来实现,过滤正常用户的误操作,仅做初步过滤;服务端校验是整个应用阻止非法数据的最后防线,客户端校验绝不能替代服务端的校验,客户端校验可以降低服务器的负载。

阅读更多

Spring MVC-Formatter数据格式化

  项目中有一些数据是有一定的格式的(如:时间,日期,货币),或同类型的数据会有不同显示格式,这时需要对数据进行格式化。Spring提供了格式化框架,位于org.springframework.format包,Formatter<T>是其中最重要的接口。

阅读更多

Spring MVC-Converter数据转换器

  后台接收前端传过来的数据往往与后台定义的实体类的属性类型并不匹配,就需要用到数据类型转换,若在每个代码文件中手动去转就非常麻烦。Spring MVC提供了默认转换器,也提供了接口用于实现自定义的类型转换器。  

阅读更多