Hasor 讀寫數(shù)據(jù)庫

2018-10-02 10:34 更新

例如我們使用 c3p0 作為數(shù)據(jù)庫連接池,連接并操作我們的數(shù)據(jù)庫,第一步是創(chuàng)建 c3p0 數(shù)據(jù)源。

ComboPooledDataSource dataSource = new ComboPooledDataSource();
dataSource.setDriverClass("......");
dataSource.setJdbcUrl("......");
dataSource.setUser("......");
dataSource.setPassword("......");
........


接下來第二步初始化 Hasor 的數(shù)據(jù)庫框架。

AppContext appContext = Hasor.createAppContext(new Module() {
    public void loadModule(ApiBinder apiBinder) throws Throwable {
        ......
        ComboPooledDataSource dataSource = ...
        apiBinder.installModule(new DBModule(dataSource));
    }
});


如果您想同時連接多個數(shù)據(jù)源,那么只需要在 new DBModule 的時候通過給定一個名稱來加以區(qū)分。

apiBinder.installModule(new DBModule("dataSource1" ,dataSource1));
apiBinder.installModule(new DBModule("dataSource2" ,dataSource2));


最后一步,在程序中使用數(shù)據(jù)庫框架操作我們的數(shù)據(jù)庫。Hasor 操作數(shù)據(jù)庫主要是通過 JdbcOperations接口 或者 JdbcTemplate類來實現(xiàn)。當(dāng)然您也可以結(jié)合其它數(shù)據(jù)庫框架一同使用。例如 Hasor的官方網(wǎng)站就是使用 Hasor DBModule + MyBatis ORM 的方案。下面是通過 JdbcTemplate 形式操作數(shù)據(jù)庫:

public class MyDAO {
    @Inject
    private JdbcTemplate jdbcTemplate;
};


如果之前您的環(huán)境中用的是多數(shù)據(jù)源,那么在 @Inject 時候通過名稱綁定一下數(shù)據(jù)源即可使用。


public class MyDAO {
    @Inject("dataSource1")
    private JdbcTemplate jdbcTemplateA;
    @Inject("dataSource2")
    private JdbcTemplate jdbcTemplateB;
};


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號