在 IDEA 社区中设置 JdbcTemplate。液基故障
Setting up JdbcTemplate in IDEA Community. Liquibase failure
我有 JDBC API 的工作程序,想实施 JDBC 模板(免费版 IDEA 社区)。
在我的 SpringConfig 中,我添加了 2 个 Beans(没有其他更改),之后我在尝试启动程序时收到错误。错误:
Liquibase 无法启动,因为在 'classpath:/db/changelog/db.changelog-master.yaml' 找不到更新日志。
行动:
确保配置路径中存在 Liquibase 变更日志。
tree structure
这是怎么回事?
我不做任何其他更改。没有添加到 application.properties(据我所知,没有必要)。
在我的 pom.xml 中,我有:liquibase-core,spring-boot-starter-data-jpa,mysql-connector-java
SpringConfig:
@Configuration
@ComponentScan ("com.ko")
@EnableWebMvc
public class SpringConfig implements WebMvcConfigurer {
private final ApplicationContext applicationContext;
@Autowired
public SpringConfig(ApplicationContext applicationContext) {
this.applicationContext = applicationContext;
}
@Bean //filter for _method
public FilterRegistrationBean HiddenHttpMethodFilter (){
FilterRegistrationBean filterRegBean = new FilterRegistrationBean(new HiddenHttpMethodFilter());
filterRegBean.setUrlPatterns(Arrays.asList("/*"));
return filterRegBean;
}
/*
@Bean //first variant
public DataSource datasSource(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/javastudy");
dataSource.setUsername("root");
dataSource.setPassword("root");
return dataSource;
}*/
@Bean //second variant
public DataSource datasource() {
return DataSourceBuilder.create()
.driverClassName("com.mysql.cj.jdbc.Driver")
.url("jdbc:mysql://localhost:3306/javastudy")
.username("root")
.password("root")
.build();
}
@Bean
public JdbcTemplate jdbcTemplate(){
return new JdbcTemplate(datasource());
}
}
由于您在 pom.xml 文件中使用了 Liquibase 依赖项,因此您需要制作一个 db.changelog-master.yaml 文件以存储所有有关制作新 Liquibase 脚本和更新或删除现有 Liquibase 脚本的信息。您可以在项目的 资源文件夹 中创建此文件。此外,如果您需要,您可以选择 yaml 和 xml 来创建此文件。
我有 JDBC API 的工作程序,想实施 JDBC 模板(免费版 IDEA 社区)。
在我的 SpringConfig 中,我添加了 2 个 Beans(没有其他更改),之后我在尝试启动程序时收到错误。错误:
Liquibase 无法启动,因为在 'classpath:/db/changelog/db.changelog-master.yaml' 找不到更新日志。 行动: 确保配置路径中存在 Liquibase 变更日志。
tree structure
这是怎么回事?
我不做任何其他更改。没有添加到 application.properties(据我所知,没有必要)。 在我的 pom.xml 中,我有:liquibase-core,spring-boot-starter-data-jpa,mysql-connector-java
SpringConfig:
@Configuration
@ComponentScan ("com.ko")
@EnableWebMvc
public class SpringConfig implements WebMvcConfigurer {
private final ApplicationContext applicationContext;
@Autowired
public SpringConfig(ApplicationContext applicationContext) {
this.applicationContext = applicationContext;
}
@Bean //filter for _method
public FilterRegistrationBean HiddenHttpMethodFilter (){
FilterRegistrationBean filterRegBean = new FilterRegistrationBean(new HiddenHttpMethodFilter());
filterRegBean.setUrlPatterns(Arrays.asList("/*"));
return filterRegBean;
}
/*
@Bean //first variant
public DataSource datasSource(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/javastudy");
dataSource.setUsername("root");
dataSource.setPassword("root");
return dataSource;
}*/
@Bean //second variant
public DataSource datasource() {
return DataSourceBuilder.create()
.driverClassName("com.mysql.cj.jdbc.Driver")
.url("jdbc:mysql://localhost:3306/javastudy")
.username("root")
.password("root")
.build();
}
@Bean
public JdbcTemplate jdbcTemplate(){
return new JdbcTemplate(datasource());
}
}
由于您在 pom.xml 文件中使用了 Liquibase 依赖项,因此您需要制作一个 db.changelog-master.yaml 文件以存储所有有关制作新 Liquibase 脚本和更新或删除现有 Liquibase 脚本的信息。您可以在项目的 资源文件夹 中创建此文件。此外,如果您需要,您可以选择 yaml 和 xml 来创建此文件。