1、下载EasyDBO项目源码
SVN::http://svn.easyjf.com/repository/easyjf/easydbo/
2、 编译安装EasyDBO
一般情况下,我们直接下载整个EasyDBO项目的源代码,然后在自己的机器上根据JDK重新编译一次。通过执行bin里面的build.bat jar,或者双击build.bat,然后选择jar,即可执行EasyDBO的编译工作。
如下图所示:
一般情况下,我们直接下载整个EasyDBO项目的源代码,然后在自己的机器上根据JDK重新编译一次。通过执行bin里面的build.bat jar,或者双击build.bat,然后选择jar,即可执行EasyDBO的编译工作。
如下图所示:
编译完成后,若输入的是jar命令。则会生成一个release目录,其中有一个名为easyjf-dbo-1-0-0.jar的文件,其中后面的数字表示版本号。
3、 使用用EasyDBO
要在项目中使用EasyDBO,把easyjf-dbo.jar文件与log4j日志的jar,添加到你项目的类路径或classpath中即可。
当然,由于涉及到数据库开发,还必须保证您所用的数据库驱动包、连接沲驱动包也需要存放于类路径上。
下图是我们使用My SQL数据,使用apache-dbcp连接池来处理数据库的项目中,使用EasyDBO所需要的最少的jar文件。
下面是我们使用EasyDBO的一个简单例子。我们以一个留言板表Message为例,首先定一个表示留言板信息的持久层对象PO,内容是一个简单JavaBean,由于我们使用比较简单的接口映射方式来实现映射关系,所以这个Java Bean还实IObject接口。Message.java的内容大致如下:
package example;
import java.util.Date;
import com.easyjf.dbo.IObject;
public class Message implements IObject {
private int cid;
private String title;
private String content;
private String inputUser;
private Date inputTime;
private Boolean publish;
private Integer status;
public String getTableName() {
return "message";
}
public String getKeyField() {
return "cid";
}
public String getKeyGenerator() {
return "com.easyjf.dbo.NullIdGenerator";
}
public int getCid() {
return cid;
}
public void setCid(int cid) {
this.cid = cid;
}
...省略getter及setter方法。
}
package example;
import java.util.Date;
import com.easyjf.dbo.IObject;
public class Message implements IObject {
private int cid;
private String title;
private String content;
private String inputUser;
private Date inputTime;
private Boolean publish;
private Integer status;
public String getTableName() {
return "message";
}
public String getKeyField() {
return "cid";
}
public String getKeyGenerator() {
return "com.easyjf.dbo.NullIdGenerator";
}
public int getCid() {
return cid;
}
public void setCid(int cid) {
this.cid = cid;
}
...省略getter及setter方法。
}
然后,我们写一个简单的演示代码,看看在程序中如何使用EasyDBO自动实现对象及关系表之间的映射。示例代码如下:
package example;
import org.apache.commons.dbcp.BasicDataSource;
public class MessageTest {
public static void main(String[] args) {
//首先准备一个数据源
BasicDataSource datasource = new BasicDataSource();
datasource.setDriverClassName("org.gjt.mm.mysql.Driver");
datasource.setUrl("jdbc:mysql://127.0.0.1:3306/easyjf");
datasource.setUsername("root");
datasource.setPassword("mysql");
//使用数据源创建一个EasyDBO映射处理引擎EasyJDB对象
com.easyjf.dbo.EasyJDB easyjdb=new com.easyjf.dbo.EasyJDB(datasource);
Message m=new Message();
m.setTitle("留言标题");
m.setContent("留言内容");
m.setInputTime(new java.util.Date());
m.setInputUser("easyjf");
m.setPublish(Boolean.TRUE);
m.setStatus(new Integer(0));
//使用EasyDBO映射处理引擎执行相关的数据持久化操作
boolean ret=easyjdb.add(m);
if(ret)System.out.println("成功写入数据!");
//从数据库中读取对象
java.util.List list=easyjdb.query(Message.class,"1=1");
Message m2=(Message)list.get(0);
System.out.println(m2.getTitle());
System.out.println(m2.getContent());
}
}
package example;
import org.apache.commons.dbcp.BasicDataSource;
public class MessageTest {
public static void main(String[] args) {
//首先准备一个数据源
BasicDataSource datasource = new BasicDataSource();
datasource.setDriverClassName("org.gjt.mm.mysql.Driver");
datasource.setUrl("jdbc:mysql://127.0.0.1:3306/easyjf");
datasource.setUsername("root");
datasource.setPassword("mysql");
//使用数据源创建一个EasyDBO映射处理引擎EasyJDB对象
com.easyjf.dbo.EasyJDB easyjdb=new com.easyjf.dbo.EasyJDB(datasource);
Message m=new Message();
m.setTitle("留言标题");
m.setContent("留言内容");
m.setInputTime(new java.util.Date());
m.setInputUser("easyjf");
m.setPublish(Boolean.TRUE);
m.setStatus(new Integer(0));
//使用EasyDBO映射处理引擎执行相关的数据持久化操作
boolean ret=easyjdb.add(m);
if(ret)System.out.println("成功写入数据!");
//从数据库中读取对象
java.util.List list=easyjdb.query(Message.class,"1=1");
Message m2=(Message)list.get(0);
System.out.println(m2.getTitle());
System.out.println(m2.getContent());
}
}
输出结果:
成功写入数据!
留言标题
留言内容
成功写入数据!
留言标题
留言内容