java6有一个新的特性,当我们在简单项目和练习中需要使用数据库的时候,但是又不想去建oracle、mySQL、sqlserver等数据库,并且避免各种连接配置麻烦,可以使用java6自带的一个数据库derby简单方便使用。
首先安装jdk6,在默认安装的情况下,derby被安装到C:\Program Files\Sun\JavaDB并且在这里面有derby要使用的jar包,而jdk被安装到C:\Program Files\Java\jdk1.6.0_10,安装完毕。
简单demo测试一下,如:
public class JavaDBTest {
/**
* @param args
*/
public static void main(String[] args) {
try {
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
System.out.println("Loaded the EmbeddedDriver");
Connection conn =null;
Properties props =new Properties();
props.setProperty("user", "user");
props.setProperty("password", "password");
try {
conn =DriverManager.getConnection("jdbc:derby:helloDB;create=true", props);
System.out.println("create derbyDB");
conn.setAutoCommit(false);
Statement statement =conn.createStatement();
statement.execute("drop table user_uer");
System.out.println("create table user_uer");
statement.execute("create table user_uer ( name varchar(20), score int)");
statement.execute("insert into user_uer ( name,score) values ('小明',89)");
statement.execute("insert into user_uer (name ,score) values ('小花',90)");
ResultSet rSet =statement.executeQuery("select name,score from user_uer");
System.out.println("------------------------");
while (rSet.next()) {
System.out.println(rSet.getString("name"));
System.out.println(rSet.getInt("score"));
}
System.out.println("query user_uer data");
rSet.close();
statement.close();
conn.commit();
conn.close();
DriverManager.getConnection("jdbc:derby:helloDB;shutDown=true");
} catch (SQLException e) {
e.printStackTrace();
}
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
在这个运行过程中可能会报错找不到包org.apache.derby.jdbc.EmbeddedDriver,所以要导入jar,选择C:\Program Files\Sun\JavaDB\lib下的derby.jar,这样运行demo就ok了