현재 스프링 프로젝트에서 spring-jpa와 함께 spring-boot를 사용하여 HSQLDb 데이터베이스를 만들고 관리합니다. 이 종속성이spring-boot가 hsqldb 데이터베이스를 생성하지 않습니다.
# jdbc.X
jdbc.driverClassName=org.hsqldb.jdbc.JDBCDriver
jdbc.url=jdbc:hsqldb:file:/home/kleber/.webapp/testedb
jdbc.user=sa
jdbc.pass=
# hibernate.X
hibernate.dialect=org.hibernate.dialect.HSQLDialect
hibernate.show_sql=false
hibernate.hbm2ddl.auto=create
내 pom.xml 파일 :
@Controller
@EnableJpaRepositories
@EnableAutoConfiguration
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
@RequestMapping(value = "/signin")
public String signin(Model model) {
return "acesso/signin";
}
@RequestMapping(value = "/admin")
public String admin(Model model) {
return "private/admin";
}
@RequestMapping(value = "/")
public String index(Model model) {
return "public/index";
}
}
:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
내 주요 클래스 즉
나는 내 프로젝트에서 너를 폴더src/main/resources
이
hibernate.properties
이
응용 프로그램을 실행하면 콘솔에서 볼 수 있습니다.
2014-10-30 17:58:51.708 INFO 31413 --- [ main] org.hibernate.Version : HHH000412: Hibernate Core {4.3.6.Final}
2014-10-30 17:58:51.713 INFO 31413 --- [ main] org.hibernate.cfg.Environment : HHH000205: Loaded properties from resource hibernate.properties: {jdbc.url=jdbc:hsqldb:file:/home/kleber/.webapp/testedb, hibernate.dialect=org.hibernate.dialect.HSQLDialect, hibernate.show_sql=false, jdbc.user=sa, hibernate.bytecode.use_reflection_optimizer=false, hibernate.hbm2ddl.auto=create, jdbc.driverClassName=org.hsqldb.jdbc.JDBCDriver, jdbc.pass=}
2014-10-30 17:58:51.714 INFO 31413 --- [ main] org.hibernate.cfg.Environment : HHH000021: Bytecode provider name : javassist
2014-10-30 17:58:52.089 INFO 31413 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
2014-10-30 17:58:52.191 INFO 31413 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.HSQLDialect
2014-10-30 17:58:52.385 INFO 31413 --- [ main] o.h.h.i.ast.ASTQueryTranslatorFactory : HHH000397: Using ASTQueryTranslatorFactory
2014-10-30 17:58:52.838 INFO 31413 --- [ main] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000227: Running hbm2ddl schema export
2014-10-30 17:58:52.845 INFO 31413 --- [ main] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000230: Schema export complete
그러나 데이터베이스는 jdbc.url
속성에 정의 된 경로에 생성되지 않습니다.
내가 뭘 잘못하고 있다고 말할 수 있습니까?
왜 아직도 스프링 부트를 사용하지 않으 시렵니까? 당신은 단지 일을 더 어렵게 만들고 있습니다. 그것은 당신이 물어 보는 모든 질문에서 반복되는 주제입니다. 프레임 워크를 프레임 워크 주위 또는 프레임 워크에 대해 작동하지 마십시오. –
어떻게 그렇게? 데이터베이스에 대한 액세스를 관리하기 위해 spring-boot를 사용하고 있습니다. 내가 여기에 올린 코드가 보이니? –
당신은 hibernate 용이고 Spring Boot에 의해 행복하게 무시되는 hiberate.properties를 사용하고있다. 직접 모든 것을 수동으로 구성하고 있습니다. 스프링 부트는'hibernate.properties'를 읽지 않습니다. 최대 절전 모드는 그것을 읽습니다. –