没有合适的资源?快使用搜索试试~ 我知道了~
首页Spring框架参考指南
Spring框架参考指南
需积分: 10 1 下载量 14 浏览量
更新于2024-07-28
收藏 3.4MB PDF 举报
"Spring框架参考文档"
《Spring框架参考文档》是Spring Framework的官方技术手册,由Rod Johnson、Juergen Hoeller等多位贡献者编著。文档内容涵盖自2004年至2011年间的版本,是学习和深入理解Spring框架的重要资源。
文档的核心内容分为多个章节,首先对Spring Framework进行概述。Spring是一个开源的应用框架,其核心特性是依赖注入(Dependency Injection,DI)和控制反转(Inversion of Control,IoC)。这些设计模式允许开发者在不直接创建对象的情况下管理对象之间的关系,从而提高代码的可测试性和可维护性。
Spring Framework由多个模块组成,包括:
1. Core Container:这是Spring的基础,包含Bean Factory和ApplicationContext,负责管理和配置应用中的对象。
2. Data Access/Integration:提供了对数据库访问的支持,如JDBC抽象层、ORM集成(Hibernate、JPA等)以及对JMS、JTA等集成。
3. Web:支持Web应用程序的开发,包括Spring MVC和WebSocket等组件。
4. AOP and Instrumentation:面向切面编程(Aspect-Oriented Programming,AOP)模块提供了声明式事务管理和其他横切关注点的实现,而Instrumentation模块则用于类加载器和代理相关的功能。
5. Test:提供了Spring TestContext框架,支持单元测试和集成测试,与JUnit、Mockito等测试库结合使用。
文档中还讨论了Spring的使用场景,例如如何利用依赖管理来规范项目结构,以及如何遵循命名约定。Spring框架本身依赖于一些其他库,同时也有许多第三方库依赖于Spring。文档详细介绍了如何使用Maven和Ivy进行依赖管理,确保项目中所有组件的正确版本和依赖关系。
此外,文档还涉及了日志配置,说明了如何集成各种日志框架,如Log4j、Java Util Logging或SLF4J,以满足不同项目的日志需求。整个文档旨在提供全面、详细的Spring框架使用指南,帮助开发者更好地理解和运用Spring,构建高效、灵活的企业级应用。
16.11. Handling exceptions ...................................................................................477
HandlerExceptionResolver ............................................................................477
@ExceptionHandler ......................................................................................478
16.12. Convention over configuration support ........................................................478
The Controller ControllerClassNameHandlerMapping ....................................479
The Model ModelMap (ModelAndView) .......................................................480
The View - RequestToViewNameTranslator ..................................................481
16.13. ETag support ..............................................................................................483
16.14. Configuring Spring MVC ............................................................................483
Enabling MVC Java Config or the MVC XML Namespace .............................484
Customizing the Provided Configuration ........................................................485
Configuring Interceptors ...............................................................................486
Configuring View Controllers .......................................................................486
Configuring Serving of Resources .................................................................487
mvc:default-servlet-handler ...........................................................................489
More Spring Web MVC Resources ................................................................490
Advanced Customizations with MVC Java Config ..........................................490
Advanced Customizations with the MVC Namespace .....................................491
17. View technologies ...................................................................................................493
17.1. Introduction .................................................................................................493
17.2. JSP & JSTL .................................................................................................493
View resolvers .............................................................................................493
'Plain-old' JSPs versus JSTL ..........................................................................494
Additional tags facilitating development ........................................................494
Using Spring's form tag library ......................................................................494
Configuration .......................................................................................494
The form tag ........................................................................................495
The input tag ........................................................................................496
The checkbox tag ..................................................................................496
The checkboxes tag ..............................................................................498
The radiobutton tag ...............................................................................498
The radiobuttons tag .............................................................................499
The password tag ..................................................................................499
The select tag .......................................................................................499
The option tag ......................................................................................500
The options tag .....................................................................................500
The textarea tag ....................................................................................501
The hidden tag ......................................................................................501
The errors tag .......................................................................................502
HTTP Method Conversion ....................................................................504
HTML5 Tags .......................................................................................504
17.3. Tiles ............................................................................................................505
Dependencies ...............................................................................................505
How to integrate Tiles ...................................................................................505
UrlBasedViewResolver .........................................................................506
Spring Framework
3.1 Reference Documentation xvi
ResourceBundleViewResolver ..............................................................506
SimpleSpringPreparerFactory and SpringBeanPreparerFactory ................506
17.4. Velocity & FreeMarker .................................................................................507
Dependencies ...............................................................................................507
Context configuration ...................................................................................507
Creating templates ........................................................................................508
Advanced configuration ................................................................................508
velocity.properties ................................................................................509
FreeMarker ..........................................................................................509
Bind support and form handling .....................................................................509
The bind macros ...................................................................................510
Simple binding .....................................................................................510
Form input generation macros ...............................................................511
HTML escaping and XHTML compliance .............................................515
17.5. XSLT ..........................................................................................................516
My First Words ............................................................................................516
Bean definitions ...................................................................................516
Standard MVC controller code ..............................................................516
Convert the model data to XML ............................................................517
Defining the view properties ..................................................................518
Document transformation ......................................................................518
Summary .....................................................................................................518
17.6. Document views (PDF/Excel) .......................................................................519
Introduction .................................................................................................519
Configuration and setup ................................................................................519
Document view definitions ....................................................................519
Controller code .....................................................................................520
Subclassing for Excel views ..................................................................520
Subclassing for PDF views ....................................................................521
17.7. JasperReports ...............................................................................................522
Dependencies ...............................................................................................522
Configuration ...............................................................................................522
Configuring the ViewResolver ..............................................................523
Configuring the Views ..........................................................................523
About Report Files ...............................................................................523
Using JasperReportsMultiFormatView ...................................................524
Populating the ModelAndView ......................................................................525
Working with Sub-Reports ............................................................................525
Configuring Sub-Report Files ................................................................526
Configuring Sub-Report Data Sources ...................................................526
Configuring Exporter Parameters ...................................................................527
17.8. Feed Views ..................................................................................................527
17.9. XML Marshalling View ................................................................................528
17.10. JSON Mapping View ..................................................................................528
18. Integrating with other web frameworks .....................................................................530
Spring Framework
3.1 Reference Documentation xvii
18.1. Introduction .................................................................................................530
18.2. Common configuration .................................................................................531
18.3. JavaServer Faces 1.1 and 1.2 .........................................................................532
DelegatingVariableResolver (JSF 1.1/1.2) ......................................................532
SpringBeanVariableResolver (JSF 1.1/1.2) .....................................................533
SpringBeanFacesELResolver (JSF 1.2+) ........................................................533
FacesContextUtils ........................................................................................534
18.4. Apache Struts 1.x and 2.x .............................................................................534
ContextLoaderPlugin ....................................................................................535
DelegatingRequestProcessor .................................................................536
DelegatingActionProxy .........................................................................536
ActionSupport Classes ..................................................................................537
18.5. WebWork 2.x ...............................................................................................537
18.6. Tapestry 3.x and 4.x .....................................................................................538
Injecting Spring-managed beans ....................................................................539
Dependency Injecting Spring Beans into Tapestry pages .........................540
Component definition files ....................................................................541
Adding abstract accessors ......................................................................542
Dependency Injecting Spring Beans into Tapestry pages - Tapestry 4.x style
.............................................................................................................544
18.7. Further Resources .........................................................................................545
19. Portlet MVC Framework .........................................................................................546
19.1. Introduction .................................................................................................546
Controllers - The C in MVC ..........................................................................547
Views - The V in MVC .................................................................................547
Web-scoped beans ........................................................................................548
19.2. The DispatcherPortlet ...................................................................................548
19.3. The ViewRendererServlet .............................................................................550
19.4. Controllers ...................................................................................................551
AbstractController and PortletContentGenerator .............................................551
Other simple controllers ................................................................................553
Command Controllers ...................................................................................553
PortletWrappingController ............................................................................554
19.5. Handler mappings ........................................................................................554
PortletModeHandlerMapping ........................................................................555
ParameterHandlerMapping ............................................................................556
PortletModeParameterHandlerMapping .........................................................556
Adding HandlerInterceptors ..........................................................................557
HandlerInterceptorAdapter ............................................................................557
ParameterMappingInterceptor .......................................................................557
19.6. Views and resolving them .............................................................................558
19.7. Multipart (file upload) support ......................................................................558
Using the PortletMultipartResolver ................................................................559
Handling a file upload in a form ....................................................................559
19.8. Handling exceptions .....................................................................................562
Spring Framework
3.1 Reference Documentation xviii
19.9. Annotation-based controller configuration .....................................................563
Setting up the dispatcher for annotation support ..............................................563
Defining a controller with @Controller ..........................................................563
Mapping requests with @RequestMapping .....................................................564
Supported handler method arguments ............................................................565
Binding request parameters to method parameters with @RequestParam ..........567
Providing a link to data from the model with @ModelAttribute .......................568
Specifying attributes to store in a Session with @SessionAttributes .................568
Customizing WebDataBinder initialization .....................................................569
Customizing data binding with @InitBinder ...........................................569
Configuring a custom WebBindingInitializer ..........................................569
19.10. Portlet application deployment ....................................................................570
VI. Integration ......................................................................................................................571
20. Remoting and web services using Spring ..................................................................572
20.1. Introduction .................................................................................................572
20.2. Exposing services using RMI ........................................................................573
Exporting the service using the RmiServiceExporter .......................................573
Linking in the service at the client .................................................................574
20.3. Using Hessian or Burlap to remotely call services via HTTP ...........................575
Wiring up the DispatcherServlet for Hessian and co. .......................................575
Exposing your beans by using the HessianServiceExporter ..............................575
Linking in the service on the client ................................................................576
Using Burlap ................................................................................................576
Applying HTTP basic authentication to a service exposed through Hessian or
Burlap ..........................................................................................................577
20.4. Exposing services using HTTP invokers ........................................................577
Exposing the service object ...........................................................................577
Linking in the service at the client .................................................................578
20.5. Web services ................................................................................................579
Exposing servlet-based web services using JAX-RPC .....................................580
Accessing web services using JAX-RPC ........................................................580
Registering JAX-RPC Bean Mappings ...........................................................582
Registering your own JAX-RPC Handler .......................................................583
Exposing servlet-based web services using JAX-WS ......................................583
Exporting standalone web services using JAX-WS .........................................584
Exporting web services using the JAX-WS RI's Spring support .......................585
Accessing web services using JAX-WS ..........................................................585
20.6. JMS .............................................................................................................586
Server-side configuration ..............................................................................587
Client-side configuration ...............................................................................588
20.7. Auto-detection is not implemented for remote interfaces .................................589
20.8. Considerations when choosing a technology ...................................................589
20.9. Accessing RESTful services on the Client ......................................................590
RestTemplate ...............................................................................................590
Working with the URI ..........................................................................592
Spring Framework
3.1 Reference Documentation xix
Dealing with request and response headers .............................................593
HTTP Message Conversion ...........................................................................593
StringHttpMessageConverter .................................................................594
FormHttpMessageConverter ..................................................................594
ByteArrayHttpMessageConverter ..........................................................594
MarshallingHttpMessageConverter ........................................................594
MappingJacksonHttpMessageConverter .................................................595
SourceHttpMessageConverter ...............................................................595
BufferedImageHttpMessageConverter ...................................................595
21. Enterprise JavaBeans (EJB) integration ....................................................................596
21.1. Introduction .................................................................................................596
21.2. Accessing EJBs ............................................................................................596
Concepts ......................................................................................................596
Accessing local SLSBs .................................................................................597
Accessing remote SLSBs ..............................................................................598
Accessing EJB 2.x SLSBs versus EJB 3 SLSBs ..............................................599
21.3. Using Spring's EJB implementation support classes ........................................599
EJB 2.x base classes .....................................................................................599
EJB 3 injection interceptor ............................................................................601
22. JMS (Java Message Service) ....................................................................................603
22.1. Introduction .................................................................................................603
22.2. Using Spring JMS ........................................................................................603
JmsTemplate ................................................................................................603
Connections .................................................................................................604
Caching Messaging Resources ...............................................................605
SingleConnectionFactory ......................................................................605
CachingConnectionFactory ...................................................................605
Destination Management ...............................................................................605
Message Listener Containers .........................................................................606
SimpleMessageListenerContainer ..........................................................607
DefaultMessageListenerContainer .........................................................607
Transaction management ...............................................................................607
22.3. Sending a Message .......................................................................................608
Using Message Converters ............................................................................609
SessionCallback and ProducerCallback ..........................................................610
22.4. Receiving a message .....................................................................................610
Synchronous Reception .................................................................................610
Asynchronous Reception - Message-Driven POJOs ........................................610
The SessionAwareMessageListener interface .................................................611
The MessageListenerAdapter ........................................................................611
Processing messages within transactions ........................................................613
22.5. Support for JCA Message Endpoints ..............................................................614
22.6. JMS Namespace Support ..............................................................................616
23. JMX .......................................................................................................................621
23.1. Introduction .................................................................................................621
Spring Framework
3.1 Reference Documentation xx
剩余839页未读,继续阅读
2020-02-28 上传
2019-06-13 上传
2020-07-17 上传
2011-04-15 上传
2019-05-30 上传
2020-07-02 上传
2021-05-25 上传
Focus1988
- 粉丝: 1110
- 资源: 429
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 磁性吸附笔筒设计创新,行业文档精选
- Java Swing实现的俄罗斯方块游戏代码分享
- 骨折生长的二维与三维模型比较分析
- 水彩花卉与羽毛无缝背景矢量素材
- 设计一种高效的袋料分离装置
- 探索4.20图包.zip的奥秘
- RabbitMQ 3.7.x延时消息交换插件安装与操作指南
- 解决NLTK下载停用词失败的问题
- 多系统平台的并行处理技术研究
- Jekyll项目实战:网页设计作业的入门练习
- discord.js v13按钮分页包实现教程与应用
- SpringBoot与Uniapp结合开发短视频APP实战教程
- Tensorflow学习笔记深度解析:人工智能实践指南
- 无服务器部署管理器:防止错误部署AWS帐户
- 医疗图标矢量素材合集:扁平风格16图标(PNG/EPS/PSD)
- 人工智能基础课程汇报PPT模板下载
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功