데이터베이스 운영 프로젝트 시작

springboot 프로젝트의 경우, 프레임 워크는 프로젝트를 시작할 때 사용자 지정 작업을 수행하기 위해, 다양한 인터페이스를 제공합니다. 운영 시나리오 데이터베이스 Benpian 기록 프로젝트는 업을 시작 우리가 포장 JdbcDaoSupport 인터페이스가 작동 매우 간단 프레임 수 있도록 스프링을 사용합니다.

 

application.properties

spring.datasource.driver- 클래스 -name = com.mysql.jdbc.Driver 
spring.datasource.url = JDBC한다 : mysql : // 120.79.xx.yy : 3306 / 보안 useUnicode = 예 & characterEncoding = UTF-8 useSSL = 거짓 
봄. 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 
    개인 데이터 소스 데이터 소스; 

    @Bean 
    공개 DaoSupport의 daoSupport () { 
        DefaultDaoSupport defaultDaoSupport = 새로운 DefaultDaoSupport (); 
        defaultDaoSupport.setDataSource (는 dataSource); 
        반환 defaultDaoSupport을; 
    } 
}

 

음, 위의 코드는 표시됩니다. 프로젝트를 시작했을 때, 그것은 CREATE_TABLE_SQL이 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 
    개인 데이터 소스 데이터 소스; 
    @Autowired 
    개인 의 JdbcTemplate JdbcTemplate을; 
    @Bean 
    공개 DaoSupport의 daoSupport () { 
        DefaultDaoSupport defaultDaoSupport = 새로운 DefaultDaoSupport ();
//         defaultDaoSupport.setDataSource (는 dataSource); 
        defaultDaoSupport.setJdbcTemplate (JdbcTemplate을);
        반환 defaultDaoSupport을; 
    } 
}

 

추천

출처www.cnblogs.com/z-qinfeng/p/11795506.html