You are on page 1of 16

Course Contents for JAVA For a Begginer

Introduction to Java Programming


Advantages of Java
Platform independence
Stand-alone applications and servlets
Structure of a Java program
Compiling source code into byte code
Overview of class libraries
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Object-Oriented Programming with Java
Te ob!ect paradigm
Ob!ect-oriented "OO# programming
$ncapsulation% ineritance and polymorpism
OO analysis and design& '(s a' and ')as a' relationsips
*esigning an OO application step by step
*iagramming ob!ect structure wit +nified ,odeling
-anguage "+,-#
Java's object-oriented features
(nstantiating ob!ects from classes
Aggregation and composition
$.tending e.isting classes
Overloading and overriding metods
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
tructure of the Java !anguage
-anguage synta.
*eclaring and initiali/ing variables
Statements and e.pressions
*eclaring and using arrays
+p casting% down casting and auto bo.ing
" F#ow contro#
(nvo0ing metods and passing parameters
Conditionals and loops
)andling e.ceptions wit try and catc
$efining c#asses
1ields "instance data#
,etods "functions#
Abstract classes and interfaces
Organi/ing classes wit pac0ages and visibility modifiers
Composition vs2 ineritance
Bui#ding the com%onents of a Java %rogram
3or0ing wit e.isting classes
-everaging generics wit te collections AP(
$.tending base classes
*eveloping new classes
Compiling and debugging
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
$eve#o%ing &'Is
Foundations of user interfaces
4asic 5+( widgets
$vent-driven programming
4enefits of a portable windowing library
Java Foundation C#asses (JFC)
Advantages of ligtweigt Swing components
$.ploring te Swing component library
Creating Swing components& buttons% te.t fields% drop-down
lists
Adding Swing components to containers
Arranging Swing components using layout managers
*ialogs and message bo.es
*vent hand#ing
6egistering event andlers
(nner classes and top-level classes
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
toring and +etrieving $ata with Fi#e I,O
Java streams
Streams% 6eaders and 3riters
Accessing files
Catcing and trowing e.ceptions
1ormatting te.t output
Fi#es and directories
6eading and writing files
Creating% deleting and renaming files
Obtaining directory and file information
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
-or.ing with +e#ationa# $atabases
J$BC database access
-everaging te J*4C AP(
Coosing database drivers
Connecting to a database
" (mproving performance wit prepared statements and stored
procedures
Submitting S7- statements
6etrieving and processing results
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Java $eve#o%ment /oo#s
Java *evelopment 8it "J*8#
Compiler "!ava c#
Java doc utility
Java Arcive "JA6# utility
Java (ntegrated *evelopment $nvironments "(des#
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Introduction and Overview
-eb a%%#ication deve#o%ment
Te re9uirements of a 3eb application
Components of an n-tier arcitecture
0e1 com%onents of Java ** for -eb deve#o%ment
Servlets
JSP
:,-
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
&enerating Content with erv#ets
&etting started with serv#ets
(ntegrating servlets into te 3eb application arcitecture
Configuring te servlet development environment
Avoiding common servlet pitfalls
'ti#i2ing the Java erv#et API
Servlet life cycle metods
Accessing servlet environment variables
Creating -eb-based forms for user in%ut
Adding te.t fields and drop-down lists
-in0ing forms to servlets
6etrieving form data in te servlet
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Accessing databases with erv#ets
$.tending servlets wit Java *atabase Connectivity "J*4C#
Connecting to te database
Submitting S7- statements
6etrieving and processing data
1ormatting database results
Constructing an )T,- table
Adding drill-down features
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
3aintaining tate in Java -eb A%%#ications
6eading and writing coo0ies to personali/e 3eb content
6etrieving coo0ies from a client re9uest
Sending coo0ies to te client
Circumventing coo0ie limitations
,anaging application state wit sessions
Creating a uni9ue session for eac user
Storing and retrieving Java ob!ects witin sessions
Controlling a session;s life span
Creating application and session event listeners
(mplementing a sopping cart
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Creating Java erver Pages (JP)
JSP fundamentals
*esign goals of JSP
+sing JSP script lets% e.pressions and declarations
Communicating wit te client using built-in JSP server
ob!ects
-everaging te JSP < $.pression -anguage "$-#
State management wit JSP
Accessing coo0ies and sessions
Storing common application data
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
$esigning JP and erv#et Architectures
(ntegrating JSP and Java4eans
Promoting ob!ect reuse
Separating application logic from te presentation
Calling JSP from servlets
1orwarding Java ob!ects to JSP
+sing Java4eans to transfer data
Servlet and JSP design patterns
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Integrating JP Custom /ags
-everaging te Tag $.tension mecanism
Te role of JSP custom tags
Applying te JSP Standard Tag -ibrary "JST-#
*eveloping custom tags
Creating custom tags wit JSP < tag files
Customi/ing tag beavior wit attributes
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
$eve#o%ing truts A%%#ication
Struts = framewor0 overview
Components of te Struts framewor0
,odel->iew-Controller ",>C# arcitecture
*eveloping Struts components
4uilding te Java4eans model
Presenting a view wit JSP
*ispatcing actions wit te controller
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
$e%#o1ing 4our Java -eb A%%#ication
*efining te deployment descriptor
Creating a 3eb Application Arcive "3A6# file
Adding role-based application secu
-auncing a Struts < application
*efining te need for a Struts < arcitecture
Specifying te application structure
Preparing te development environment
5etting started wit Struts <
(dentifying 0ey application components
(mplementing te re9uest processing cycle
-in0ing te flow by configurations
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Configuring truts 5
Actions% results and interceptors
Categori/ing re9uests wit namespaces and pac0ages
$.ploiting /ero configuration conventions
Setting te default features
(nspecting out of te bo. functionality
4uilding dependencies wit (nversion of Control
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Im%#ementing truts 5 Actions
Controlling application flow
+tili/ing te Action Support base class
$liminating redundant code wit ,odel *riven actions
Simplifying te development process
4est practices for unit testing your actions
(mproving maintainability troug message locali/ation
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
&athering and Va#idating 'ser In%ut
4uilding Struts < views
*efining an improved approac to page generation wit
Struts < tags
-everaging te Struts < On-*emand model for data access
5atering user data effortlessly
Controlling page flow wit model data
Struts < validation arcitecture
Positioning te Struts < validation model
$.ploring te built-in validation rules
Applying validation interceptors
$fficiently andling validation failures
$.tending te validation framewor0
Creating your own validation rules
Configuring validation troug Struts < annotations
(ntegrating custom validation wit built-in rules
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
*nter%rise -eb A%%#ication $eve#o%ment
*esign goals of a 3eb application
Components of an enterprise arcitecture
Struts 1undamentals
5etting started wit Struts
(nstalling and configuring Struts
(dentifying Struts core classes
(ntegrating Struts Custom Tag -ibraries
Struts development process
Analy/ing application flow
4uilding te Java4eans model
Presenting a view wit JSP
*ispatcing actions wit te controller
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
6and#ing A%%#ication +e7uests
*efining Action Classes
Configuring te Struts Controller
Processing re9uests wit Actions
,anaging application state
1orwarding business data to JSP view components
Processing )T,- forms
*efining Action 1orm beans
Populating Action 1orms wit form data
Creating wi/ard-style page flows
Preventing duplicate form submission
Allowing file uploads
(ntegrating business logic wit Java $$ design patterns
*ecoupling te business tier using te 4usiness *elegate
pattern
Transferring data using te >alue Ob!ect pattern
Advanced controller features
-everaging pre-defined Struts Actions
)andling e.ceptions& declarative and programmatic
approaces
$.tending Struts wit Plug-(ns
Creating a custom 6e9uest Processor
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
&enerating $1namic Views
(ntegrating JSP custom tags
Custom tag usage model
Configuring tag libraries
4uilding Struts views
)andling data input wit Struts )T,- tags
5enerating output wit Struts 4ean tags
,anipulating Ob!ect graps wit Struts ?ested tags
Streamlining JSP development
*efining JST- functionality
1ormatting output using JST--$-
Controlling page content using JST- logic tags
(nternationali/ing applications
Translating views to multiple languages
(ntegrating resource bundles wit Struts
Canging locale on te fly
TOP
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Java erver Faces
Creating views wit JS1 components
1aces re9uest processing life cycle
Comparing Struts and JS1
3oving Forward with truts 5
Analy/ing te enanced features of Struts <
Comparing and contrasting Struts = and Struts <
*nter%rise A%%#ication $eve#o%ment
$stablising te components of an enterprise arcitecture
Streamlining te development process wit Java $$ @
!everaging Java erver Faces (JF)
JS1 arcitecture
(dentifying te JS1 core components
$.ploring te re9uest processing cycle
,anaging application flow using te JS1 navigation model
Constructing a JS1 application
Creating views wit JS1 custom tags
)andling user events wit bac0ing beans
$nancing functionality using JS1 services
Applying server-side data validation
Ta0ing advantage of te +nified $.pression -anguage
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
&enerating +ich 'ser Interfaces ('I) with JF Com%onent
/echno#og1
4uilding views wit standard )T,- components
*efining te functionality of te )T,- component set
Arranging te +( component layout
-ocali/ing messages using 6esource 4undles
Creating custom +( components
*eveloping te custom component class
3riting te custom tag andler
*eploying te custom component
-everaging A!a. to improve te user e.perience
Sarpening response wit te asyncronous 3eb model
Combining A!a. functionality wit JS1
+tili/ing pre-built A!a.-enabled JS1 components
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Im%#ementing the Business /ier with *JB 8
Stateless and stateful beans
$ncapsulating scalable business logic wit Java4eans
Accessing session beans remotely
Constructing effective stateful services
Applying advanced strategies of session beans
Adding beaviors wit metod interceptors
-in0ing services wit annotation-based resource in!ection
Triggering timer-based services
Obtaining asyncronous communication wit J,S
*ecoupling client interaction wit te Java ,essage
Service
Transmitting and receiving messages wit J,S
+nleasing ,essage *riven 4eans ",*4#
Simplifying robust message receivers wit ,*4
5enerali/ing message reception wit Java connectors
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
O%ening Access with -eb ervices
Acieving interoperability wit JA:-3S
Coding and pac0aging a service endpoint
Pac0aging and deploying te service
Accessing services wit JA:-3S clients
Analy/ing te client contract
4inding and e.canging valid data types
)andling Comple. Ob!ect 6elationsips
$ffectively representing ob!ect associations
Capturing single and multi-valued associations
6epresenting Java collections
Coosing appropriate ineritance strategies
$mploying tecni9ues for class-to-database mapping
Auditing operations wit Callbac0s and -isteners
3or0ing wit JP7-
(nitiating data access wit te Java Persistence 7uery
-anguage "JP7-# and AP(
Selecting $ntity and relationsip properties
$nancing application structure and performance
(mproving structure wit named 9ueries
Augmenting JP7- wit native optimi/ed S7-
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Overview of 93! /echno#ogies
:,- in te enterprise
Te benefits of pairing Java and :,-
Styling for 4<4 transformation and 4<C presentation
Te well-formed :,- document
Te document root and prolog
Synta.
?amespaces
Content
$lements
Attributes
$ntities
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
*:changing and Va#idating $ata
*esigning :,- enterprise applications
*ata modeling wit :,-
4<4A4<C ob!ect modeling for Java
$nforcing validation in data e.cange
3riting *ocument Type *efinitions "*T*s#
$mbedding business rules into *T*s
*T* synta. and components
:,- scemas
-imitations of *T*s
-everaging Scema *ata types
3riting :,- to validate :,-
4uilding user-defined types
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
$O3 Parsing with Java
*O, synta. for Java
1itting *O, into :,-
$.tracting data troug te *O, tree view
3or0ing wit *O, nodes
Processing *O, data
>alidating *O,
*etermining wen to use validation
$nabling validation in te parser )andling *O, e.ceptions
Constructing Java ob!ects wit *O,
,apping :,- data into Java
4uilding a user-friendly 5+( from *O,
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
&enerating and '%dating 93! with $O3
$.tracting data wit Java *atabase Connectivity "J*4C#
$stablising te database connection
7uerying and modifying a database wit S7-
,odifying *O, data
(dentifying specific nodes
6estructuring te document tree
4uilding :,- documents from scratc
5enerating :,- from a J*4C 6esult Set
Creating element and te.t nodes
Outputting a document using a Seriali/er
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
Java ** and $esign Patterns
$nterprise system design
Comparing OO and Java $$ patterns
Te benefits of design patterns in Java $$
*istributed systems development
$.ploiting remote metod invocation
*esign patterns in distributed systems
---------------------------------------------------------------------------------------
-----------------------------------------------------------------
tructuring the -eb Presentation /ier
Separating control and presentation logic
Te role of JSPBs and servlets
Constructing ,odel >iew Control ",>C# arcitectures
1ront Controller
*ispatcer >iew
Service to 3or0er
Applying 3eb framewor0 support wit Struts
(nvestigating te Struts ,>C arcitecture
Planning and implementing comple. wor0flows
)andling duplicate form submission wit te Syncroni/er
To0en pattern
-ocali/ing disparate logic
(mproving maintainability of algoritms
(ntercepting 1ilter
>iew )elper
Composite >iew
6eusing page layout wit Tiles
3riting modular JSPs

You might also like