Introduction to J2EE Part 2-Introduction to Java Programming-Lecture Slides, Slides of Java Programming

This is an Introductory course of Java Web Programming focusing on writing maintainable extensible code, methods of debugging, logging and profiling. The Java Technology used is J2EE an Enterprise Application Development tool. This lecture includes: Trends, Client, HTML, Multitier, Architecture, Object, Monolithic, Component, Container, Community, Vendor, Portability, Application, Servlet, Dynamic

Typology: Slides

2011/2012

Uploaded on 08/09/2012

dhanyaa
dhanyaa 🇮🇳

4.7

(3)

60 documents

1 / 15

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Trends
Fall 2010cs42022
`
Moving from single-tier or two-tier to multi-tier
architecture
`
Moving from monolithic model to object-based
application model
`
Moving from application-based client to HTML-
based client
Sobasedonthisevolution,wecanobserveafewtrends.First,movingfromasingletierortwotiermodelto
multitiermodel.Second,movingfromthemonolithiccodetoobjectbasedapplicationmodel.Lastly,HTML
browserbasedclientsaretakingsomestronghold.

docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Introduction to J2EE Part 2-Introduction to Java Programming-Lecture Slides and more Slides Java Programming in PDF only on Docsity!

Trends

22 cs420 Fall 2010

Moving from single-tier or two-tier to multi-tier architecture Moving from monolithic model to object-based application model ` Moving from application-based client to HTML- based client

So based on this evolution, we can observe a few trends. First, moving from a single tier or two‐tier model to multi‐tier model. Second, moving from the monolithic code to object‐based application model. Lastly, HTML browser based clients are taking some strong hold.

Comparison

23 cs420 Fall 2010

Multi-tier

z No separation among presentation, business logic, database z Hard to maintain

z Separation among presentation, business logic, database z More flexible to change, i.e. presentation can change without affecting other tiers

Single tier

Now let's compare the single‐tier model against multi‐tier model. In a single tier model or even two‐tier model, there is no separation among presentation, business, and data access logic, which makes it harder to maintain the code while in multi‐tier model, there are separation among those three functionality. And because they are separated, a change in one area should not impact the others, which provides much more flexible way of maintaining the code.

Outstanding Issues & Solution

25 cs420 Fall 2010

` Complexity at the middle tier server still remains

` Duplicate system services still need to be

provided for the majority of enterprise

applications

Concurrency control, Transactions Load-balancing, Security ` Resource management, Connection pooling

` How to solve this problem?

**Commonly shared container** that handles the above system services Proprietary versus Open-standard based

Now the issue of “middle tier still need to deal with system level issues such as concurrency control and resource management” still remains the same. Furthermore, since every application has to deal with these issues, there could be duplication among the applications in the area of system services.

So what could be the solution? The solution is to come up with an architecture or framework where the common container which can be shared among all applications provide system services mentioned above.

And that is where next evolution has occurred, initially with proprietary form and later on based on an open‐ standard.

Proprietary Solution

26 cs420 Fall 2010

` Use " component and container " model

Components captures business logic Container provides system services

` The contract between components and

container is defined in a well-defined but with

proprietary manner

` Problem of proprietary solution: Vendor lock-in

` Example: Tuxedo, .NET

So in both proprietary and standard based model, the idea is to use component and container model in which business logic is captured as components and the container provide host execution environment where system services are also provided. Of course, the proprietary model locks you in a single product and single vendor and the examples are good old Ttuxedo and of course .NET is another prime example of this.

Slide 28

Why J2EE?

Fall 2010 cs420 28

Slide 29

Platform Value to Developers

29 cs420 Fall 2010

Can use any J2EE implementation for development and deployment Use production-quality standard implementation which is free for development/deployment Use high-end commercial J2EE products for scalability and fault-tolerance Vast amount of J2EE community resources Many J2EE related books, articles, tutorials, quality code you can use, best practice guidelines, design patterns etc. Can use off-the-shelf 3rd-party business components

First, let's talk about J2EE platform value to developers.

Now with J2EE, developers do not have to be tied up with particular vendor platform because they can use any J2EE‐compliant implementation as their development platform while application portability is still guaranteed. For example, you can use freely available J2EE implementations such as Sun Java System App Server Platform Edition for development while you might want to use high‐end commercial platforms for actual production deployment especially when scalability, reliability, fault‐tolerance, and high‐performance are important factors.

Second,J2EE is, for that matter, Java, is all about community. There is vast amount of J2EE community resource that be leveraged by J2EE developers, for example, books, articles, tutorials, and quality code that you can use, best practice guidelines and design patterns people have spent time to develop. If you think about it, these are very significant value.

Thirdly, because J2EE is based on component model, that is, 3rd party components can be used to build enterprise applications thus saving time and money.

Slide 31

Platform Value to Business Customers

31 cs420 Fall 2010

` Application portability

` Many implementation choices are

possible based on various requirements

` Price (free to high-end), scalability (single

CPU to clustered model), reliability,

performance, tools, and more

` Best of breed of applications and platforms

` Large developer pool

Now what about the business customers? First and foremost, to customers, application portability is guaranteed, which means they can choose best of breed applications as well as best of breed platforms based on many criteria, for example, price, scalability, reliability, and performance, and tools, and so on.

There are large developer pool they can tap with. And then they can use many quality open source implementations such Tomcat, Struts, Cocoon, and Axis and so on, over the J2EE platform

Slide 32

Fall 2010 cs420 32

J2EE APIs and

Technologies?

Slide 34

Java EE 5

34 cs420 Fall 2010

` JAX-WS 2.0 & JSR 181

Java Persistence EJB 3. JAXB 2. JavaSever Faces 1.2 – new to Platform ` JSP 2.1 – Unification w/ JSF 1.

For J2EE 5. http://java.sun.com/javaee/sdk/features.jsp

Slide 35

35 cs420 Fall 2010

Servlet & JSP