/* * Copyright 2001-2008 Geert Bevin <gbevin[remove] at uwyn dot com> * Licensed under the Apache License, Version 2.0 (the "License") * $Id: Basic.java 3918 2008-04-14 17:35:35Z gbevin $ */ package database; import com.uwyn.rife.database.*; import com.uwyn.rife.database.exceptions.DatabaseException; import com.uwyn.rife.database.queries.CreateTable; import com.uwyn.rife.database.queries.DropTable; import com.uwyn.rife.database.queries.Insert; import com.uwyn.rife.database.queries.Select; import com.uwyn.rife.rep.Rep; import com.uwyn.rife.resources.ResourceFinderClasspath; import java.sql.ResultSet; import java.sql.SQLException; public class Basic extends DbQueryManager { public Basic(Datasource datasource) { super(datasource); } public static void main(String[] args) { Rep.initialize("rep/unittests_participants.xml"); Basic example = new Basic(Datasources.getRepInstance().getDatasource("unittestspgsql")); try { example.doIt(); } catch (DatabaseException e) { e.printStackTrace(); } } public void doIt() throws DatabaseException { CreateTable create = new CreateTable(getDatasource()); create .table("example") .column("firstname", String.class, 50) .column("lastname", String.class, 50); executeUpdate(create); Insert insert = new Insert(getDatasource()); insert .into(create.getTable()) .fieldParameter("firstname") .fieldParameter("lastname"); DbPreparedStatement insert_stmt = getConnection().getPreparedStatement(insert); insert_stmt.setString("firstname", "John"); insert_stmt.setString("lastname", "Doe"); insert_stmt.executeUpdate(); insert_stmt.clearParameters(); insert_stmt.setString("firstname", "Jane"); insert_stmt.setString("lastname", "TheLane"); insert_stmt.executeUpdate(); Select select = new Select(getDatasource()); select .from(create.getTable()) .orderBy("firstname"); DbStatement select_stmt = executeQuery(select); Processor processor = new Processor(); while (fetch(select_stmt.getResultSet(), processor) && processor.wasSuccessful()) { System.out.println(processor.getFirstname()+" "+processor.getLastname()); } DropTable drop = new DropTable(getDatasource()); drop.table(create.getTable()); executeUpdate(drop); } class Processor extends DbRowProcessor { private String mFirstname = null; private String mLastname = null; public String getFirstname() { return mFirstname; } public String getLastname() { return mLastname; } public boolean processRow(ResultSet resultSet) throws SQLException { mFirstname = resultSet.getString("firstname"); mLastname = resultSet.getString("lastname"); return true; } } }