Spring Web MVC 5.3.6框架核心类库详解

版权申诉
5星 · 超过95%的资源 6 下载量 200 浏览量 更新于2024-10-22 收藏 874KB RAR 举报
资源摘要信息:"Spring Web MVC 是 Spring 框架的一部分,它提供了一个全面的、模块化的、可扩展的MVC实现,允许用户构建基于Web的应用程序。Spring Web MVC 5.3.6版本是该框架的特定迭代,其中包含了Spring MVC框架的所有相关类和资源。Spring MVC是一个实现了MVC设计模式的Web框架,它将Web层的模型(Model)、视图(View)和控制器(Controller)进行分离,旨在简化Web应用程序的开发并提高可测试性。 在Spring MVC中,DispatcherServlet是整个Web层的核心,负责将请求分发给不同的控制器。控制器处理请求并返回模型和视图的名称,然后由DispatcherServlet负责找到相应的视图并进行渲染。 Spring MVC框架相关特性包括: 1. 国际化支持:提供了多语言处理能力,使Web应用程序能够支持多种语言,并根据用户的区域设置提供适当的本地化内容。 2. 标签库:Spring MVC提供了丰富的标签库,允许在JSP页面中使用自定义标签来简化视图层的开发。 3. 主题:提供了视图层的主题支持,允许开发者改变应用程序的外观,如应用不同的CSS样式和布局。 4. 视图技术整合:Spring MVC支持多种视图技术,包括但不限于FreeMarker、JasperReports、Tiles、Velocity和XSLT。这允许开发者根据项目需求选择合适的视图技术来渲染模型数据。 5. 非侵入式:Spring MVC的设计允许开发者使用POJOs(普通的Java对象)作为控制器,而不是强制要求继承特定的框架类或实现特定的接口。 6. 强大的表达式语言:Spring MVC使用了强大的表达式语言(如Spring表达式语言(SpEL))来访问和操作对象图。 7. 注解支持:Spring MVC支持使用注解来简化控制器的开发,例如使用@Controller注解来标记一个类作为控制器,使用@RequestMapping注解来映射请求到特定的方法。 8. 测试支持:Spring提供了丰富的测试支持,包括模拟控制器和集成测试。 在依赖管理方面,spring-webmvc包依赖于spring-web包,这意味着如果直接使用spring-webmvc,spring-web会被隐式添加。因此,开发者无需再单独添加spring-web依赖。 对于已经采用独立MVC框架(如JSF、Struts2等)的应用程序,可能不需要Spring MVC中的任何类,因为这些独立框架可能提供了自己的核心功能实现。 压缩包中包含的文件名为“spring-webmvc5.3.6.jar”,这个文件名表明了它是一个版本号为5.3.6的Spring Web MVC的可执行JAR文件。JAR文件是一个压缩文件格式,用于在Java平台上发布和打包应用程序或库。 开发者在使用Spring Web MVC进行Web应用开发时,需要确保有相应的Java开发环境和Spring框架支持。Spring Web MVC的引入为开发过程带来了模块化和灵活性,但也需要开发者有良好的Java知识和对Spring框架的理解。"

Field error in object 'admin' on field 'id': rejected value [null]; codes [typeMismatch.admin.id,typeMismatch.id,typeMismatch.java.lang.Integer,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [admin.id,id]; arguments []; default message [id]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.lang.Integer' for property 'id'; nested exception is java.lang.NumberFormatException: For input string: "null"] at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:157) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:124) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:161) [spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:131) [spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:871) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:777) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:978) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:881) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:652) [servlet-api.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:855) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE]

2023-05-31 上传

java.lang.IllegalStateException: Optional int parameter 'money' is present but cannot be translated into a null value due to being declared as a primitive type. Consider declaring it as object wrapper for the corresponding primitive type. at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.handleNullValue(AbstractNamedValueMethodArgumentResolver.java:263) ~[spring-web-5.3.25.jar:5.3.25] at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:116) ~[spring-web-5.3.25.jar:5.3.25] at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122) ~[spring-web-5.3.25.jar:5.3.25] at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179) ~[spring-web-5.3.25.jar:5.3.25] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146) ~[spring-web-5.3.25.jar:5.3.25] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1071) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:964) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.25.jar:5.3.25] at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909) ~[spring-webmvc-5.3.25.jar:5.3.25]此错误是什么原因引起的?如何修改

2023-06-06 上传