Presentation is loading. Please wait.

Presentation is loading. Please wait.

Making Text for the Web part 6

Similar presentations


Presentation on theme: "Making Text for the Web part 6"— Presentation transcript:

1 Making Text for the Web part 6
Barb Ericson Georgia Institute of Technology March 2006 Georgia Institute of Technology

2 Georgia Institute of Technology
Doing a Join Query Add aliases for the table names Picture as pict, Person as per, PicturePerson as pictPer Use the alias in front of the field name per.FirstName, pict.FileName Use And to join conditions Where per.firstName = 'Jennifer' And pictPer.PersonID = per.PersonID And pict.PictureID = pictPer.PictureID Georgia Institute of Technology

3 Georgia Institute of Technology
Finding Jennifer /* main for testing */ public static void main(String[] args) { // create the database manager for an Access database DatabaseManager dbManager = new DatabaseManager("sun.jdbc.odbc.JdbcOdbcDriver", "jdbc:odbc:person"); // create the database manager for a MySQL database // new DatabaseManager("com.mysql.jdbc.Driver", // "jdbc:mysql://localhost:3306/person"); // test a query dbManager.testQuery("Select per.FirstName, " + "pict.FileName From " + "Picture as pict, Person as per, " + "PicturePerson as pictPer " + "Where per.FirstName = 'Jennifer' And " + "pictPer.PersonID = per.PersonID And " + "pict.PictureID = pictPer.PictureID", 2); } Georgia Institute of Technology

4 Getting a String for a Query
/** * Method to execute a query and return a string of the * first result query the query to execute the first result of the query, or null if none */ public String getStringForQuery(String query) { String result = null; // try the following try { // open the connection to the database Connection connection = DriverManager.getConnection(this.urlStr); // create a statement Statement statement = connection.createStatement(); // execute the query ResultSet rs = statement.executeQuery(query); // print out the results if (rs.next()) { result = rs.getString(1); } // close everything rs.close(); statement.close(); connection.close(); } catch (SQLException ex) { SimpleOutput.showError("Trouble with the database " + urlStr); ex.printStackTrace(); return result; Georgia Institute of Technology

5 Adding Database Info to a Homepage
Now we can use a database to get information for an HTML page Modify the writeHomepage method to get the person's age from the database Use the DatabaseManager class to get it Georgia Institute of Technology

6 Write Homepage with Database Info
/** * Method for writing a homepage for the passed * first name that displays her/his interests and age name the person's first name interests a list of the person's interests */ public void writeHomepageV5(String name, String interests) { // Get a DatabaseManager object DatabaseManager dbManager = new DatabaseManager("sun.jdbc.odbc.JdbcOdbcDriver", "jdbc:odbc:person"); // get this person's age String age = dbManager.getStringForQuery( "Select Age From Person " + "Where FirstName='" + name + "'"); // try the following try { // open a file for writing BufferedWriter writer = new BufferedWriter(new FileWriter(name + ".html")); // write the start writeStart(writer); // write the header writeHead(writer,name + "'s Homepage"); // write the body writeBody(writer,"<h1>Welcome to " + name + "'s Homepage</h1>" + "<p> I am interested in " + interests + ".</p><p>I am " + age + " years old</p>"); // end the page writeEnd(writer); // close the writer writer.close(); } catch (Exception ex) { ex.printStackTrace(); } Georgia Institute of Technology

7 Testing the Homepage Writer
public static void main(String[] args) { WebPageWriter writer = new WebPageWriter(); writer.writeHomepageV5("Matthew", "playing video games"); } Georgia Institute of Technology

8 Georgia Institute of Technology
Exercise Create a writeHomepageV6 method that looks up the person's name in the database and adds thumbnails of pictures of that person to the page Add information to the database for your pictures Add to the Person table Add to the Picture table Add to the PicturePerson table Use the writeHomepage method to generate a homepage for you With your pictures on it Georgia Institute of Technology

9 Georgia Institute of Technology
Servlets and JSP Some database access is done through JavaServer Pages (JSPs) HTML pages with special tags that allow Java code to be executed JSP pages are translated into servlets Small programs like applets But they run on the server Servlets connect to the database and get information Which is displayed in the HTML Georgia Institute of Technology

10 Georgia Institute of Technology
Summary HTML is the language of the Web Not a programming language You can use Java programs to create HTML Helper methods are often private methods that are used by other public methods To break a task into parts (procedural abstraction) Throwing an exception A method can throw an exception using the throws keyword followed by the exception name The Unnamed Package All classes are put in a package. If you don't specify a package the "unnamed" one is used Georgia Institute of Technology

11 Georgia Institute of Technology
Summary Continued Maps store key and value pairs Map is an interface HashMap, Hashtable, and TreeMap are classes that implement Map Generics allow you to declare the types of things in collection classes and eliminate the need to downcast when you take items back out of a collection Iterators let you walk through each item in a collection Using classes in the java.sql package you can access information in a database SQL is the standard language to use to communicate with a database Georgia Institute of Technology


Download ppt "Making Text for the Web part 6"

Similar presentations


Ads by Google