Her er et lille eksempel der virker med en mySQL DB:
public class Person {
public Person () {
}
private String fornavn = "";
private String efternavn = "";
private String adresse = "";
public String getFornavn() {
return fornavn;
}
public void setFornavn(String fornavn) {
this.fornavn = fornavn;
}
public String getEfternavn() {
return efternavn;
}
public void setEfternavn(String efternavn) {
this.efternavn = efternavn;
}
public String getAdresse() {
return adresse;
}
public void setAdresse(String adresse) {
this.adresse = adresse;
}
public void skriveTilDb (){
DbHandler db = new DbHandler();
db.open("org.gjt.mm.mysql.Driver","jdbc:
mysql://localhost/test","","");
db.doQuery("insert into navn values ('"+fornavn+"')");
}
}
---------------------------------------
public class Testklasse {
public static void main(String[] args) {
Person p = new Person();
p.setFornavn("per");
p.setEfternavn("hansen");
p.setAdresse("dyrevej 4");
p.skriveTilDb();
}
}
------------------------------------------------------
import java.sql.*;
public class DbHandler
{
private Connection con=null;
/** Creates new DataBase */
public DbHandler()
{
}
public boolean open(String dbDriverName, String dbClassName, String user, String pass)
{
try
{
if(con==null)
{
Class.forName(dbDriverName).newInstance();
con = DriverManager.getConnection(dbClassName, user, pass);
}
}
catch (SQLException e)
{
e.printStackTrace(System.out);
return false;
}
catch (ClassNotFoundException e)
{
e.printStackTrace(System.out);
return false;
}
catch (InstantiationException e)
{
e.printStackTrace(System.out);
return false;
}
catch (IllegalAccessException e)
{
e.printStackTrace(System.out);
return false;
}
return true;
}
public void close()
{
if(con!=null)
{
try
{
con.close();
con=null;
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
}
public int doUpdate(String sql)
{
if(con!=null)
{
try
{
long time=System.currentTimeMillis();
Statement stat=con.createStatement();
System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms "+sql);
return stat.executeUpdate(sql);
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
return 0;
}
public ResultSet doQuery(String sql)
{
if(con!=null)
{
try
{
long time=System.currentTimeMillis();
Statement stat=con.createStatement();
System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms "+sql);
return stat.executeQuery(sql);
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
return null;
}
}
Jeg har bruge Disky's velkendte DbHandler.