Java OSS Web

streakconvertingΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 6 μήνες)

75 εμφανίσεις

Java OSS Web
Technologies

By Dave Ford

Introduction

Purpose


Describe Java’s relationship to the OSS
community


Describe OSS tools used on recent project


Highlight a few of those tools

Tools I used for a recent
project


Apache Jakarta Tomcat


Jakarta Taglibs (JSTL)


Struts


Hibernate


Apache Maven


IntelliJ (not OSS)


JUnit


mySql (not Java)

What Exactly is Java?

Java is 3 sets of specifications

Language Spec

Binary Format (VM Spec)

Platform/API Specs

J2SE

J2EE

Other Sun APIs

The Language

Statically Typed and Dynamic

Object
-
Oriented from the Start

General Purpose


You can write servlets with Java


You can write a word processor with Java

Multi
-
Threaded

Implementation Versus
Specification

Java’s Web Stack

Servlet

JSP (Java Server Pages)

JSTL (JSP Standard Tag Lib)

JSF (Java Server Pages)

Code and Knowledge are Portable

Implementations

Open Source

Apache Jakarta Tomcat (Servlet/JSP)

Jetty

Enhydra

Commercial

IBM Web Sphere

BEA Web Logic

Oracle 9iAS

Caucho Resin

Orion

J2EE Stack

Java/J2SE

J2EE

Other Sun API’s

3
rd

Party and OSS

Tomcat

Implements Servlet Spec/JSP Spec

Stable and Fast Enough

Great Support

HTTP Server

Relationship to Apache “Classic”

Beyond Java’s Web
Stack

From Servlet Only

To JSP Only

To Servlet
-
> JSP

To Servlet
-
> Action
-
> JSP (MVC)

Web Frameworks and Struts

Struts

Front Controller (Master Servlet)

Action (handles request)

Form Bean (screen buffer)

Mapping (request uri
-
>action class)

JSP Tag Lib (renders the Form Bean)


Validation and Converters

Screen Re
-
Populations


Pros and Cons

http://jakarta.apache.org/struts/




Hibernate

OOP and Database Programming

Classes: Data + Responsibilities

Structs (Transfer Objects)

JDBC in 2003


For most projects use Object Persistence
layer


not JDBC direct.

Hibernate is an O/R Mapping

Transparent Persistence

Best online support I’ve ever seen

www.hibernate.org