Program: JDAdmin

The JDAdmin program lets a privileged user view and administer the user database for the JabaDot web site shown in Section 18.13. It doesn’t use the accessors that we so carefully built up in this chapter, as it needs to be able to make any change at all to the database, including recovering from corrupted data introduced by potential bugs in future versions of the accessor. Instead, it makes extensive use of the PreparedStatement class (see Section 20.7).

The user interface (shown in Figure 20-3) is a simple JTable controlled by the MyTableModel class defined at the end of the source. This controls the display of the fields and allows and handles the editing of the password field.

JDAdmin user interface

Figure 20-3. JDAdmin user interface

The Schema class used here simply defines public constants for the fields within the database. These field numbers begin at one; I subtract one from the field number when I need Java-origin numbers.

Example 20-13 shows the first working version of the program. It allows you to reset the password of a forgetful user and to delete a defunct account. One plausible extension is to add a text field and a button to allow you to execute an arbitrary SQL statement, as in Section 20.11.

Example 20-13. JDAdmin.java

package jabadot; import java.util.*; import java.sql.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.table.*; ...

Get Java Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.