//*************************************************************************** // (c) Copyright IBM Corp. 2007 All rights reserved. // // The following sample of source code ("Sample") is owned by International // Business Machines Corporation or one of its subsidiaries ("IBM") and is // copyrighted and licensed, not sold. You may use, copy, modify, and // distribute the Sample in any form without payment to IBM, for the purpose of // assisting you in the development of your applications. // // The Sample code is provided to you on an "AS IS" basis, without warranty of // any kind. IBM HEREBY EXPRESSLY DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR // IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Some jurisdictions do // not allow for the exclusion or limitation of implied warranties, so the above // limitations or exclusions may not apply to you. IBM shall not be liable for // any damages you suffer as a result of using, copying, modifying or // distributing the Sample, even if IBM has been advised of the possibility of // such damages. //*************************************************************************** // // SOURCE FILE NAME: Applt.java // // SAMPLE: A Java applet that use JDBC JCC driver to access a database // // // This sample shows how to write a Java Applet that uses the // JDBC Type 4 driver to access a DB2 database. // // This sample uses JDBC Type 4 driver to connect to // the "sample" database. Run this sample using the // following steps: // 1. Create and populate the "sample" database with the following // command: db2sampl // // 2. Customize Applt.html with your server, port, user ID, and // password. Refer to Applt.html for details. // // 3. Compile the program with the following command: // javac Applt.java // // Alternatively, you can compile the program with the following // command if you have a compatible make/nmake program on // your system: // make/nmake Applt // // 4. Ensure that your working directory is accessible by your web // browser. If it is not, copy Applt.class and Applt.html into // a directory that is accessible. // // 5. Copy sqllib\java\db2jcc.jar on // Windows or sqllib/java/db2jcc.jar on UNIX, into the same // directory as Applt.class and Applt.html. // // 6. To run this sample, start your web browser (which must support // Java 1.3) and load Applt.html on your client machine. // You can view it locally with the following command: // appletviewer Applt.html // // // SQL Statements USED: // SELECT // UPDATE // // None //*************************************************************************** // // For more information on the sample programs, see the README file. // // For information on developing Java applications see the Developing Java Applications book. // // For information on using SQL statements, see the SQL Reference. // // For the latest information on programming, compiling, and running DB2 // applications, visit the DB2 Information Center at // http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp //**************************************************************************/ import java.sql.*; import java.awt.*; import java.applet.Applet; public class Applt extends Applet { Connection con; public void init() { try { // get parameter values from the html page String server = getParameter("server"); String port = getParameter("port"); // construct the URL (sample is the database name) String url = "jdbc:db2://"+server+":"+port+"/sample"; String userid = getParameter("userid"); String password = getParameter("password"); // use driverType=4 Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance(); // connect to the 'sample' database with userid and password con = DriverManager.getConnection(url, userid, password); } catch(Exception e) { e.printStackTrace(); } } public void paint(Graphics g) { try { // retrieve data from database g.drawString( "First, let's retrieve some data from the database...", 10, 10); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM employee"); g.drawString("Received results:", 10, 25); // display the result set // rs.next() returns false when there are no more rows int y = 50; int i = 0; while (rs.next() && (i < 2)) { i++; String a= rs.getString(1); String str = rs.getString(2); String oneLine = " empno= " + a + " firstname= " + str; g.drawString(oneLine, 20, y); y = y + 15; } stmt.close(); // update the database g.drawString("Now, update the database...", 10, 100); stmt = con.createStatement(); int rowsUpdated = stmt.executeUpdate( "UPDATE employee SET firstnme = 'SHILI' WHERE empno = '000010'"); // display the number of rows updated String msg = "Updated " + rowsUpdated; if (1 == rowsUpdated) { msg = msg +" row."; } else { msg = msg +" rows."; } y = y + 40; g.drawString(msg, 20, y); stmt.close(); // rollback the update y = y + 40; g.drawString("Now, rollback the update...", 10, y); con.rollback(); y = y + 15; g.drawString("Rollback done.", 10, y); } catch(Exception e) { e.printStackTrace(); } } } // Applt