プロジェクトが開始されたデータベースの操作

springbootプロジェクトのために、フレームワークは、プロジェクトの開始時にカスタムアクションを実行するために、さまざまなインタフェースを提供します。動作シナリオデータベースBenpianレコードプロジェクト立ち上げには、私たちがパッケージ化さJdbcDaoSupportインターフェイスは操作が非常に簡単であるフレームを支援するために、スプリングを使用しています。

 

application.properties

spring.datasource.driver- クラス -name = はcom.mysql.jdbc.Driver 
spring.datasource.url = JDBCます。mysql:// 120.79.xx.yy:?3306 /セキュリティuseUnicode = YES&characterEncoding = UTF-8&useSslオプション= falseの 
春。 datasource.username = ルート
spring.datasource.password = 132123

 

輸入org.springframework.jdbc.core.support.JdbcDaoSupport。

パブリック クラス DefaultDaoSupportは延びJdbcDaoSupport { 

    パブリック 静的 最終列CREATE_TABLE_SQL = "テーブルを作成tb_student(識別BIGINT(20)NOT NULL AUTO_INCREMENT、存在しない場合は" + 
            "ユーザ名はvarchar(64)nullではないが、" + 
            「年齢BIGINT(20)、PRIMARYをKEY(ID))」

    @Override 
    保護 ボイド initDao()がスロー例外{
         スーパー.getJdbcTemplateを()(CREATE_TABLE_SQL)を実行します。
    } 
}

 

@SpringBootConfiguration
 パブリック クラスInitConfig { 
    @Autowired 
    プライベートデータソースのdataSource。

    @Bean 
    公共DaoSupport daoSupport(){ 
        DefaultDaoSupport defaultDaoSupport = 新しいDefaultDaoSupport()。
        defaultDaoSupport.setDataSource(データソース)。
        返すdefaultDaoSupportを。
    } 
}

 

さて、上記のコードは示されています。プロジェクトが始まったとき、それは、このSQL文CREATE_TABLE_SQLを実行します。また、非常に単純な原理は、JdbcDaoSupportクラスはInitializingBeanインタフェースのスプリングを実装し、方法はafterPropertiesSetで行う場合initDao()メソッドが呼び出されます()。

 

ここでは、関連するソースコードは次のとおりです。

パブリック 抽象 クラス DaoSupportは実装InitializingBean {
     保護された 最終のログロガー= LogFactory.getLog(この.getClass())。

    パブリックDaoSupport(){ 
    } 

    公共の 最終的な ボイド afterPropertiesSet()はスローはIllegalArgumentException、BeanInitializationException {
         この.checkDaoConfigを(); 

        試す{
             この().initDao。
        } キャッチ(例外VAR2){
             スロー 新しい BeanInitializationExceptionを( "DAOの初期化に失敗しました"、VAR2)。
        } 
    } 

    保護 抽象 ボイド checkDaoConfig()は、スロー、IllegalArgumentExceptionを。

    保護された ボイド initDao()スロー{例外
    } 
}

 

 

 

次のようにさらに、構成は次のとおりです。

@SpringBootConfiguration
 パブリック クラスInitConfig { 
    @Autowired 
    プライベートデータソースのdataSource。
    @Autowired 
    プライベートJdbcTemplate jdbcTemplate。
    @Bean 
    公共DaoSupport daoSupport(){ 
        DefaultDaoSupport defaultDaoSupport = 新しいDefaultDaoSupport()。
//         defaultDaoSupport.setDataSource(データソース); 
        defaultDaoSupport.setJdbcTemplate(jdbcTemplate)。
        返すdefaultDaoSupportを。
    } 
}

 

おすすめ

転載: www.cnblogs.com/z-qinfeng/p/11795506.html