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());?
?}
}
?
輸出結果:
成功寫入數據!
留言標題
留言內容
成功寫入數據!
留言標題
留言內容
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1328764
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
