Title: Application Development with Java Enterprise Edition (J2EE)
1Application Development with Java Enterprise
Edition (J2EE)
- Mihkel Nõges
- Tartu University IT department
- mihkel.noges_at_ut.ee
2 The Context of Development
- Customer Needs
- are turned into
- Customer Solutions
2
3Customer NeedsA Good Information System should
be
- Functional
- Understandable
- Beautiful
- All in one place
- Fast
- Growing with my needs
- Cheap
- Accessible
- Secure
- Flexible
- Transparent
- Learning from users
- Doing all my work
- ...
3
4Everything is possible!
- Imagination is the first form of Application
4
5Why isnt it already so?The Development Problems
- Speed of Development
- Code Manageability
- System Extensibility and Integration
- Security
- Platform Dependency
- Software Quality
- Roundtrip Engineering
5
6How can we get there?The Development Appliances
- Standards
- Patterns
- Architectures
- Technologies
- Platforms Frameworks
- Tools
- Integrated Development Environments
6
7Standards - Examples
- TCP/IP (Transmission Control Protocol/Internet
Protocol) - SQL (Structured Query Language)
- HTML (Hypertext Markup Language)
- XML (Extensible Markup Language)
- UML (Unified Modeling Language)
- J2EE (Java 2 Platform, Enterprise Edition)
- Web Services
7
8Standards - Features
- Bring developers together into a Community
- Simplify Development
- Enable Integration and Cooperation of different
Platforms and Technologies - Can be open or closed
- Are in a sense the Patterns made official
8
9Patterns Examples
- Intercepting Filter
- Front Controller
- Session Façade
- Value List Handler
- Data Access Object
- Service Fail over
- Layered Caching
- Pluggable Services
9
10Patterns - Features
- Accepted solutions to recurring problems in some
context - Common language of developers
- Building blocks of Architectures
- Objects of discussion, that can encompass
boundaries of technologies and fields of
application
10
11Architectures - Examples
- Client-Server
- Thin Client
- MVC (Model-View-Controller)
- Distributed Computing
- Every application has its own more specific
architecture
11
12Architectures - Features
- Act as the skeleton of the application
- Standardize application building
- Help to understand, improve, extend and integrate
the application structures
12
13Technologies - Examples
- Platforms
- PC
- Windows 2000
- UNIX
- Macintosh
- Oracle iAS
- JBoss
- Frameworks
- MS .NET
- MFC (The Microsoft Foundation Classes)
- BC4J (Business Components For Java)
- UIX
- Struts 1.0 1.1
- JADE
13
14Technologies - Features
- Provide the environment for the applications to
run and communicate - Platforms usually implement Standards
- Frameworks usually support Architectures
14
15Tools - Examples
- Apache Ant (Java-based build tool)
- CVS (Concurrent Versions System)
- Bugzilla (Bug Tracking System)
- ArgoUML (UML Modeling Tool)
- Rational Rose, Clear Case, Unified Process
- Oracle SCM (Software Configuration Manager)
15
16Tools - Features
- Simplify application development tasks
- Help to adhere to standards, patterns and
architectures - Help to manage projects
- Help to work in a team
16
17Integrated Development Environments - Examples
- Oracle JDeveloper
- Microsoft VisualStudio .NET Rational XDE
- SUN Forte
- IntelliJ IDEA
- Borland JBuilder
- Borland Delphi
17
18Integrated Development Environments - Features
- Group a set of tools into a compact environment
- Pluggable Extensions
- Support the whole development process
- Visual Development
- Roundtrip Engineering
- Comprehensive Help and Documentation
18
19Practical ExamplesOracle JDeveloper UIX/BC4J
- Pure Java MVC Framework
- BC4J Model Layer
- Fast and efficient Oracle Database access
- Flexible Business Logic and Validation
- UIX View and Controller Layers
- XML-based declarative User Interface development
- Flexible integration with other technologies
- Built-in support for Internationalization and
automatic client-specific options
19
20Practical ExamplesOracle JDeveloper UIX/BC4J
- JDeveloper
- UML support
- Integrated Testing and Debugging
- Coding Aids Context-Sensitive Help
- Automatic deployment
20
21Practical ExamplesOracle JDeveloper - UML
Modeling
21
22Practical ExamplesOracle JDeveloper - Wizards
22
23Practical ExamplesOracle JDeveloper UIX editor
23
24Practical ExamplesOracle JDeveloper Running
J2EE
24
25Practical ExamplesOracle JDeveloper Tables
25
26Practical ExamplesStruts framework
26
27References
- J2EE Community Site http//www2.theserverside.com/
- Oracle Technology Network http//otn.oracle.com
- Struts Homepage http//jakarta.apache.org/struts
- Struts Tutorial http//j2ee.masslight.com/
27
28 Thank You!
- Create Enjoy!
- Questions to mihkel.noges_at_ut.ee