E-Book, Englisch, 920 Seiten
Chakraborty / Ditt / Vukotic Pro Spring 2.5
1. ed
ISBN: 978-1-4302-0506-7
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
E-Book, Englisch, 920 Seiten
ISBN: 978-1-4302-0506-7
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
Pro Spring 2 is the perfect, simple answer for your lightweight, alternative Java EE development needs! Put simply, this book brings J2EE/Java EE 'down to earth.' Without the hassles of using the EJB 3 specification and similar, you can build lighter, better-performing agile enterprise Java-based applications using Spring Framework 2. The Spring framework can also integrate other noteworthy and hot open source tools like Apache Struts, Hibernate, OpenJPA, GlassFish, and many more. You'll work through a real, scalable enterprise application and build it from the ground up with Spring, using all the multiple web views and frameworks.
Anirvan Chakraborty is a developer at Cake Solutions Limited. Since becoming a member of the Cake team in 2006, Anirvan has worked on the more complex projects, including the U.K. government knowledge management system. Anirvan is a contributor to Lucene integration in the Spring Modules project. Prior to joining Cake, Anirvan completed his master's degree in Internet software systems at the School of Computer Science, University of Birmingham, United Kingdom. When not programming, Anirvan enjoys following sports like Cricket and Formula One. He also enjoys reading detective novels and watching movies.
Autoren/Hrsg.
Weitere Infos & Material
1;Contents at a Glance;5
2;Contents;7
3;Foreword;20
4;About the Authors;21
5;About the Technical Reviewer;22
6;Acknowledgments;23
7;Introduction;24
8;Getting Started with Spring;25
8.1;Introducing Spring;26
8.1.1;What Is Spring?;26
8.1.2;The Spring Project;33
8.1.3;The Sample Code;35
8.1.4;Summary;35
8.2;Getting Started;36
8.2.1;Obtaining the Spring Framework;36
8.2.2;Hello, World;47
8.2.3;Putting Spring Into “ Hello, World”;50
8.2.4;Summary;53
8.3;Introducing Inversion of Control;54
8.3.1;IoC and DI;54
8.3.2;Types of IoC;55
8.3.3;IoC in Spring;62
8.3.4;DI with Spring;62
8.3.5;Summary;95
8.4;Beyond the Basics;96
8.4.1;Spring’s Impact on Application Portability;97
8.4.2;Bean Life Cycle Management;97
8.4.3;Making Your Beans Spring Aware;110
8.4.4;Using Method Injection;114
8.4.5;Using FactoryBean;123
8.4.6;The BeanFactoryPostProcessor;126
8.4.7;JavaBeans PropertyEditor;133
8.4.8;The BeanPostProcessor;141
8.4.9;The Spring ApplicationContext;148
8.4.10;Summary;168
8.5;Introducing Spring AOP;169
8.5.1;AOP Concepts;170
8.5.2;Types of AOP;171
8.5.3;AOP in Spring;171
8.5.4;Advisors and Pointcuts in Spring;191
8.5.5;All About Proxies;213
8.5.6;Summary;218
8.6;Advanced AOP;220
8.6.1;@ AspectJ;220
8.6.2;@ AspectJ Aspects in Detail;224
8.6.3;Framework Services for AOP;249
8.6.4;Which Style Should You Use?;261
8.6.5;Working with Spring AOP Proxies;262
8.6.6;AspectJ Integration;267
8.6.7;Load- Time Weaving;272
8.6.8;Practical Uses of AOP;275
8.6.9;Summary;278
8.7;Spring Schemas and Namespaces;280
8.7.1;Why the New Configuration?;280
8.7.2;Schemas Included in Spring 2.5;283
8.7.3;Behind the Schema Scenes;289
8.7.4;Custom Schemas;291
8.7.5;IDE Configuration;295
8.7.6;Summary;298
8.8;Spring Patterns;299
8.8.1;Directory Structure;299
8.8.2;Design Patterns Introduction;302
8.8.3;Spring Application Patterns;313
8.8.4;Summary;335
9;Data Access;336
9.1;JDBC Support;337
9.1.1;Key JDBC Concepts;337
9.1.2;Concepts in Spring Data Access Support;345
9.1.3;JDBC Data Access Support;346
9.1.4;Using the JdbcTemplate;347
9.1.5;RdbmsOperation Subclasses;360
9.1.6;Large Binary Objects;376
9.1.7;JdbcDaoSupport;379
9.1.8;Simple Spring JDBC;382
9.1.9;Summary;389
9.2;iBATIS Integration;390
9.2.1;What Is iBATIS?;390
9.2.2;Mapping Files;392
9.2.3;Selecting Data;397
9.2.4;Updating Data;408
9.2.5;Deleting Data;410
9.2.6;Inserting Data;411
9.2.7;What’s Missing from iBATIS?;414
9.2.8;Overall Performance;414
9.2.9;Summary;415
9.3;Hibernate Support;416
9.3.1;Hibernate Primer;416
9.3.2;Packaging;417
9.3.3;Introduction to Hibernate Support;418
9.3.4;Using Hibernate in Enterprise Applications;430
9.3.5;Summary;458
10;Enterprise Application Components;459
10.1;Job Scheduling with Spring;460
10.1.1;Scheduling Jobs Using JDK Timer;461
10.1.2;Scheduling Jobs Using OpenSymphony Quartz;470
10.1.3;Job Scheduling Considerations;485
10.1.4;Summary;490
10.2;Mail Support in Spring;491
10.2.1;The Spring Mail API Structure;493
10.2.2;Sending Simple E- mails;493
10.2.3;Summary;523
10.3;Dynamic Languages;524
10.3.1;Supported Languages Primer;524
10.3.2;Using Dynamic Languages As Spring Beans;528
10.3.3;Refreshable Beans;534
10.3.4;BeanShell Beans;536
10.3.5;JRuby Beans;538
10.3.6;Groovy Beans;539
10.3.7;Typical Usage for Dynamic Languages in Spring Applications;539
10.3.8;Summary;543
11;Java EE 5;544
11.1;Using Spring Remoting;545
11.1.1;Spring Remoting Architecture;547
11.1.2;Remote Method Invocation;547
11.1.3;Web Services with JAX- RPC;556
11.1.4;Using JAX- WS Web Services;568
11.1.5;Creating Web Services with HTTP Invoker;575
11.1.6;Choosing a Remoting Architecture;585
11.1.7;Summary;586
11.2;Transaction Management;587
11.2.1;Exploring the Spring Transaction Abstraction Layer;587
11.2.2;Analyzing Transaction Properties;588
11.2.3;Exploring a Transaction Management Sample;591
11.2.4;Programmatic Transaction Management;600
11.2.5;Declarative Transaction Management;603
11.2.6;AOP Transaction Management;606
11.2.7;Working with Transactions Over Multiple Transactional Resources;611
11.2.8;Implementing Your Own Transaction Synchronization;613
11.2.9;Summary;622
11.3;Web Applications with Spring MVC;623
11.3.1;MVC Architecture;623
11.3.2;Spring MVC;625
11.3.3;Using Handler Mappings;626
11.3.4;Spring Controllers;628
11.3.5;Interceptors;633
11.3.6;Views, Locales, and Themes;634
11.3.7;Command Controllers;645
11.3.8;Handling Exceptions;659
11.3.9;Spring and Other Web Technologies;662
11.3.10;Spring Conventions Over Configuration;713
11.3.11;Using Annotations for Controller Configuration;717
11.3.12;Summary;721
11.4;Spring Web Flow;723
11.4.1;Introducing Spring Web Flow;724
11.4.2;Hello, Web Flow!;731
11.4.3;Exploring States;735
11.4.4;Working with Transitions;737
11.4.5;Advanced Concepts;739
11.4.6;Spring Web Flow Behind the Scenes;750
11.4.7;Integration with Spring MVC;758
11.4.8;Securing Flows with Spring Security;759
11.4.9;Problem Solver;764
11.4.10;Testing Flow Definitions;765
11.4.11;Summary;766
11.5;Spring and AJAX;768
11.5.1;DWR;769
11.5.2;Installing DWR;769
11.5.3;Spring Configuration for DWR;769
11.5.4;About the Complete Example;771
11.5.5;Testing the DWR Configuration;775
11.5.6;Running the Complete Example;776
11.5.7;DWR Scripting Basics;777
11.5.8;engine. js;778
11.5.9;util. js;779
11.5.10;Security in DWR;779
11.5.11;Advantages and Disadvantages of DWR;781
11.5.12;Summary;781
11.6;JMX with Spring;782
11.6.1;JMX Refresher;782
11.6.2;Exposing Your Beans;783
11.6.3;Controlling Object Names;787
11.6.4;Controlling the Management Interface;788
11.6.5;Remoting with Spring JMX;796
11.6.6;Notifications in Spring JMX;798
11.6.7;Summary;803
11.7;Testing with Spring;804
11.7.1;Unit Testing;804
11.7.2;Unit Tests;806
11.7.3;Integration Tests;811
11.7.4;Spring TestContext Framework;830
11.7.5;Test Coverage;837
11.7.6;Summary;838
11.8;Spring Performance Tuning;839
11.8.1;Performance vs. Responsiveness;839
11.8.2;Exploring Enterprise Application Performance Issues;840
11.8.3;Measuring Java EE Application Performance;840
11.8.4;Using Caching;859
11.8.5;Performance Testing;861
11.8.6;Monitoring Application Health and Performance;863
11.8.7;More Resources on Performance Tuning;865
11.8.8;Summary;865
12;Index;866




