LIST OF PROGRAMS AND SCRIPTS... IX TABLE OF FIGURES... XIII PREFACE... XVII
Table of Contents
LIST OF PROGRAMS AND SCRIPTS ................................................................................... IX TABLE OF FIGURE...
LIST OF PROGRAMS AND SCRIPTS ................................................................................... IX TABLE OF FIGURES ........................................................................................................ XIII PREFACE....................................................................................................................... XVII WHY THIS BOOK ................................................................................................................. XVII WHOM THIS BOOK IS FOR ................................................................................................... XVIII HOW THIS BOOK IS ORGANIZED ............................................................................................ XVIII SOFTWARE AND HARDWARE ................................................................................................ XVIII HOW TO USE THIS BOOK ....................................................................................................... XIX TYPOGRAPHIC CONVENTIONS.................................................................................................. XIX HOW TO REACH THE AUTHOR ................................................................................................ XIX THE BOOK’S WEB SITE .......................................................................................................... XIX ACKNOWLEDGEMENTS ................................................................................................. XXI PART I SETTING THE STAGE .............................................................................................. 1 1
INTRODUCTION TO SPRING FRAMEWORKS ............................................................. 3 1.1
INVERSION OF CONTROL (IOC) AND DEPENDENCY INJECTION (DI)....................................... 3
1.2
SPRING MODULES ..................................................................................................... 4
1.2.1
Core Container ................................................................................................. 4 i
II
CONTENTS
1.2.2
Data Access and Integration ............................................................................ 5
1.2.3
Web .................................................................................................................. 5
RECOMMENDED READING .......................................................................................... 36 SELF-REVIEW EXERCISES .............................................................................................. 36 PART II SPRING ESSENTIAL ELEMENTS FOR BUILDING ENTERPRISE JAVA APPLICATIONS 37 3
SPRING CORE CONCEPTS ....................................................................................... 39 3.1
THE IOC CONTAINER ................................................................................................ 39
RECOMMENDED READING .................................................................................................... 180 SELF-REVIEW EXERCISES ...................................................................................................... 181 APPENDIX A SPRING RESOURCES ................................................................................. 183 A.1 SPRING TUTORIALS ....................................................................................................... 183 A.2 SPRING DOCUMENTATIONS ............................................................................................ 184 APPENDIX B MYSQL ..................................................................................................... 187 B.1 SETTING UP A MYSQL ENVIRONMENT .............................................................................. 187 B.2 CREATING SOBA DATABASE ON MYSQL .......................................................................... 188 B.3 EXPORTING AND IMPORTING SOBA DATABASE .................................................................. 192 APPENDIX C SQL SERVER 2008 R2 ................................................................................ 193 C.1 SETTING UP A SQL SERVER 2008 R2 ENVIRONMENT .......................................................... 193 C.2 CREATING SOBA DATABASE ON SQL SERVER 2008 R2....................................................... 195 APPENDIX D ORACLE 11G R2 ........................................................................................ 199
CONTENTS
VII
APPENDIX E BUILDING SOBA WITH MAVEN 3 .............................................................. 201 E.1 INTRODUCTION TO MAVEN ............................................................................................. 201 E.2 SETTING UP MAVEN ...................................................................................................... 202 E.3 ENABLING MAVEN ON ECLIPSE ........................................................................................ 202 E.4 IMPORTING SOBA ........................................................................................................ 205 E.5 BUILDING SOBA WITH MAVEN ....................................................................................... 206 E.6 SOBA’S POM.XML CONFIGURATION FILE .......................................................................... 207 APPENDIX F A SIMPLER SAMPLE BUILT WITH SPRING, HIBERNATE, MYSQL AND MAVEN 3 .................................................................................................................................... 213 F.1 CREATING THE SAMPLE DATABASE ................................................................................... 213 F.2 CREATING THE SAMPLE WITH MAVEN ............................................................................... 214 F.3 SAMPLE IMPLEMENTATION HIGHLIGHTS ............................................................................ 226 F.3.1 The Hibernate Piece .......................................................................................... 226 F.3.2 The Service Layer .............................................................................................. 227 F.3.3 The Controller Layer ......................................................................................... 227 F.4 PROGRAMMATIC LOGIC FLOWS ....................................................................................... 227 APPENDIX G DEPLOYING SOBA ON LINUX .................................................................... 229 G.1 INSTALLING A JDK ........................................................................................................ 229 G.2 INSTALLING TOMCAT ..................................................................................................... 230 G.3 INSTALLING MYSQL ..................................................................................................... 230 G.4 DEPLOYING SOBA........................................................................................................ 232 APPENDIX H SOBA ON MAC OS X ................................................................................. 233 H.1 INSTALLING A JDK ........................................................................................................ 233 H.2 INSTALLING TOMCAT ..................................................................................................... 234 H.3 INSTALLING MYSQL ..................................................................................................... 234 H.4 INSTALLING ECLIPSE AND MAVEN .................................................................................... 237 H.5 IMPORTING AND BUILDING SOBA ................................................................................... 237 H.6 DEPLOYING SOBA........................................................................................................ 238 INDEX ........................................................................................................................... 239