Home| New Wiki | | Login | User registry | Home Tree PDF
Common jdbc routines
Owner:, Version: 2, Date:Sun 18, September 2005,

Its very common to write sql, but the code is always the same. Of course you can use Hybernate and other frameworks for persistence but is not always comfortable.

Here I have the common functions that I use for small apps. I use them so often after all that I rather have them here at hand.

Listing 1: Database access functions.

 // Functions for update
 private int dbUpdate(String sql, Object args[]) throws SQLException {
   PreparedStatement ps = conn.prepareStatement(sql);
   if (args != null)
     for (int i = 0; i < args.length; i++)
       ps.setObject(i + 1, args[i]);
   int rows = ps.executeUpdate();
   ps.close();    
   return rows;
 }  
 private int dbUpdate(String sql, int arg) throws SQLException {
   return dbUpdate(sql, new Object[] { new Integer(arg)});
 }
 private int dbUpdate(String sql, String arg) throws SQLException {
   return dbUpdate(sql, new Object[] { arg });
 }
 
 // Functions for retrieval
 private int getInt(String sql) throws SQLException {
   Number n = (Number) getResult(sql, null);
   if (n == null)
     return 0;
   return n.intValue();
 }  
 private List getList(String sql, Object args[]) throws SQLException {
   PreparedStatement ps = conn.prepareStatement(sql);
   if (args != null)
     for (int i = 0; i < args.length; i++)
       ps.setObject(i + 1, args[i]);
   ResultSet rs = ps.executeQuery();
   ArrayList list = new ArrayList();
   while (rs.next())
     list.add(rs.getObject(1));
   rs.close();
   ps.close();
   return list;
 }
 private Object getResult(String sql, Object args[]) throws SQLException {
   PreparedStatement ps = conn.prepareStatement(sql);
   if (args != null)
     for (int i = 0; i < args.length; i++)
       ps.setObject(i + 1, args[i]);
   ResultSet rs = ps.executeQuery();
   Object r = null;
   if (rs.next())
     r = rs.getObject(1);
   rs.close();
   ps.close();
   return r;
 }
 


Edit - History - Extract PDF - Extract Tree as PDF

Last Modified

Thu, Nov 19 Sat, Oct 3 Fri, Sep 25 Mon, Aug 3 Mon, Apr 27 Sat, Mar 28 Mon, Jan 19 Tue, Jan 6

Home| New Wiki