Building J2EE Web Applications with Eclipse

advertisement
Building a J2EE Web Application with Eclipse
Eclipse is an open source IDE (Integrated Development Environment)
for developing applications in Java, C/C++, HTML, Cobol, Perl, etc.
The official Eclipse web site (eclipse.org) says, “Eclipse is a kind of
universal tool platform -- an open extensible IDE for anything and
nothing in particular.”
Building a J2EE Web Application with Eclipse
Eclipse:
• Provides a consistent feature set on most platforms
• Supports more than just Java or any single language
• Open source and free, yet fully supported
• Truly extensible and configurable
• Industrial strength
Overview of a Typical Web Application
Recall the typical dynamic web application consists of a web browser,
web server, html pages, server pages, and a database
Eclipse can be used to create the HTML pages, Server Pages,
Database Tables, and test it all using a Web Server and a internal
web browser.
HTML
HTML
Web browser
Scripted page
Web server
request
database
Eclipse support for creating an Testing Web Applications
The following components are used:
Apache Jakarta Tomcat servlet engine
Derby
JavaServer Pages Standard Tag Library (JSTL)
WTP (Web Tools Project Plugin)
HTML
HTML
Web browser
Scripted page
Web server
request
database
Eclipse support for creating an Testing Web Applications
The following components will be used:
Apache Jakarta Tomcat servlet engine
Derby
JavaServer Pages Standard Tag Library (JSTL)
WTP
JavaServer Pages
Standard Tag
Library (JSTL)
HTML
HTML
Web browser
Scripted page
Derby
database
Web server
request
Internet Explorer,
Firefox, or internal
browser
Apache Jakarta Tomcat servlet engine
Building J2EE Web Applications with Eclipse
When Eclipse is started, it asks you to choose a workspace. The workspace
is the location on the filesystem (folder, directory) where your files will be
stored. Afterwards you are presented with the Welcome screen if this is your
first time using this workspace.
Building J2EE Web Applications with Eclipse
On the welcome screen there is an Overview…
Building J2EE Web Applications with Eclipse
… Tutorials
Building J2EE Web Applications with Eclipse
… Samples
Building J2EE Web Applications with Eclipse
And a section on What’s New.
Building J2EE Web Applications with Eclipse
Eclipse is divided into Perspectives and Views. A Perspective is the set of screens
and functionality for a particular development scenerio (Java, C++).
To build a Web Application, first set the perspective to J2EE by selecting Window ->
Open Perspective -> Other
Building J2EE Web Applications with Eclipse
Select J2EE.
Building a J2EE Web Application with Eclipse
Next Create a Dynamic Web Project by selecting New -> Dynamic Web Project
Building a J2EE Web Application with Eclipse
Type in a name for the Project. In this case it is FirstWebProject and press
Finish.
(May be asked to configure a Server)
Building a J2EE Web Application with Eclipse
A folder will be created for your Project, appearing under Dynamic Web Projects
Eclipse support for creating an Testing Web Applications
The following components will be used:
Apache Jakarta Tomcat servlet engine
Derby
JavaServer Pages Standard Tag Library (JSTL)
WTP
JavaServer Pages
Standard Tag
Library (JSTL)
HTML
Web browser
Scripted page
Derby
database
Web server
request
Internet Explorer,
Firefox, or internal
browser
Apache Jakarta Tomcat servlet engine
DERBY
http://db.apache.org/derby
- Relational Database implement in Java
- Open source version of IBM Cloudscape
- Small footprint
- Provides an embedded driver
Using the Derby Database for Persistent Data
Adding the Apache Derby Nature to the project makes the class files and tools for
Derby available to the Project.
Using the Derby Database for Persistent Data
Start the Derby Server by right-clicking on the Project and selecting Apache
Derby -> Start Derby Network Server. Select Ok when the dialog box appears.
Using the Derby Database for Persistent Data
To create a Database, create a script file and execute it. To create the file, rightmouse click on the project and choose New -> File
Using the Derby Database for Persistent Data
Type in the name of an sql script file.
Using the Derby Database for Persistent Data
Type the SQL for creating the table and inserting data.
Using the Derby Database for Persistent Data
To execute the script, right-mouse click on the script file, choose Apache Derby ->
Run SQL Script using ‘ij’
Using the Derby Database for Persistent Data
The console shows the results of executing the script file.
There is a Database Explorer for further manipulating the database.
Eclipse support for creating an Testing Web Applications
The following components will be used:
Apache Jakarta Tomcat servlet engine
Derby
JavaServer Pages Standard Tag Library (JSTL)
WTP
JavaServer Pages
Standard Tag
Library (JSTL)
HTML
HTML
Web browser
Scripted page
Derby
database
Web server
request
Internet Explorer,
Firefox, or internal
browser
Apache Jakarta Tomcat servlet engine
UML Class Diagram
addaccount
main
<< link >>
<< link >>
showaccounts
UML Class Diagram
addaccount
<<builds>>
addaccountToDB
<<submits>>
accountInfo
confirmanAdd
Creating HTML Pages / Server Pages
To create a HTML page, right-click on the project and select New -> HTML
Creating HTML Pages / Server Pages
Type a filename and press Finish.
Creating HTML Pages / Server Pages
Type a filename and press Finish.
Creating HTML Pages / Server Pages
Enter HTML for the main menu page.
Creating HTML Pages / Server Pages
Enter HTML for the main menu page.
Creating HTML Pages / Server Pages
To view the page in a web browser, choose right-mouse click on the editor and
choose Run As -> Run on Server. This will start Tomcat (if it is not started) and
open the file in the browser.
(May have to choose Server and select Projects to add to the Server)
Creating HTML Pages / Server Pages
The page displays in Eclipse’s internal Web browser.
Creating HTML Pages / Server Pages
To change the web browser Eclipse uses, choose Window -> Preferences ->
General -> Web Browser -> Use External browser, and choose the browser you
would like used to display the pages (IE, Firefox, etc).
Creating HTML Pages / Server Pages
Let’s create the addaccount.html
Creating HTML Pages / Server Pages
Creating HTML Pages / Server Pages
Creating HTML Pages / Server Pages
Creating HTML Pages / Server Pages
Here’s what we have so far, viewed with the internal web
browser. Selecting the Add Account hyperlink takes us to
the addaccount.html page.
Creating HTML Pages / Server Pages
Here it is viewed with Internet Explorer.
UML Class Diagram
addaccount
<<builds>>
addaccountToDB
<<submits>>
accountInfo
confirmanAdd
addaccountToDB
confirmanAdd
<<builds>>
<<submits>>
accounts
Eclipse support for creating an Testing Web Applications
The following components will be used:
Apache Jakarta Tomcat servlet engine
Derby
JavaServer Pages Standard Tag Library (JSTL)
WTP
JavaServer Pages
Standard Tag
Library (JSTL)
HTML
HTML
Web browser
Scripted page
Derby
database
Web server
request
Internet Explorer,
Firefox, or internal
browser
Apache Jakarta Tomcat servlet engine
JSTL (JavaServerPages Standard Tag Library)
The JSP Standard Tag Library (JSTL) is a collection of custom tag libraries that
implement general-purpose functionality common to Web applications, including
iteration and conditionalization, data management formatting, manipulation of XML,
and database access.
• Core Tag Library – looping, expression evaluation, basic input/output
• Formatting/Internationalization Tag Library – parsing data, such as dates.
• Database Tag Library – tags that can be used to access SQL databases
• XML Tag Library – tags can be used to access XML elements
JSTL (JavaServerPages Standard Tag Library)
Core Tag Library Example
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<html>
<head>
<title>Count to 10 Example (using JSTL)</title>
</head>
<body> <c:forEach var="i" begin="1" end="10" step="1">
<c:out value="${i}" />
<br />
</c:forEach>
</body>
</html>
JSTL (JavaServerPages Standard Tag Library)
Database Tag Library
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<sql:query var="cities">
SELECT CITY_NAME, COUNTRY, AIRPORT FROM APP.CITIES ORDER BY \
CITY_NAME, COUNTRY
</sql:query>
<c:forEach var="city" items="${cities.rows}">
<c:out value="${city.airport}” />
<c:out value=“${city.city_name}” />
<br/>
</c:forEach>
Let’s create the addAccountToDB page. Select New -> JSP
Type in a name
Default page
Type JSTL
Here’s what we have when
viewed with the internal
web browser
. . . And with Internet Explorer
Download