我需要在Spring的上下文中初始化PropertyPlaceholderConfigurer之前执行sql脚本,只要应用程序属性存储在数据库中并且此脚本应插入它们.但是目前占位符是先前初始化的,这会导致错误.
有没有办法执行< jdbc:initialize-database data-source =“dataSource”...< bean id =“placeholderConfig”class =“org.springframework.beans.factory.config.PropertyPlaceholderConfigurer”...在春天? 或者有没有办法在以后初始化placeholderConfig bean?我试图为这个bean使用depends-on,lazy-init属性,但它没有帮助.提前致谢.
最佳答案
这就是我解决这个问题的方法.我创建了一个类Initializer.该类在其构造函数中执行普通的旧sql语句(java.sql.Statement),创建表(如果它不存在),并插入属性(如果它们不存在). dataSource bean在上下文中传递给此构造函数,而placeholderConfig bean使用depends-on =“initializerBean”.因此,属性在使用之前会出现在数据库中.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。