我有暴露ReST API的spring-boot应用程序。我正在考虑将所有SQL读取卸载到Groovy SQL。 DataSource在Spring中配置。我希望Groovy使用这个DataSource。顺便说一下,会有多个DataSource对象(连接到不同的数据库)。
最好的方法是什么 - 我想要两全其美(DI和groovy simple)。该应用程序必须在Spring中(出于项目原因),并将使用WebLogic定义的数据源部署在WebLogic服务器中。
我的想法是从Spring-boot的ReST控制器方法调用如下所示的Groovy方法:
/student/id
Student getStudentDetails(int id){
@Autowired
@Qualifier("someDataSource");
DataSource myDs;
Student student = GroovySqlUtil.findStudentById(id, myDs); // pass the DS to Groovy sothat GrooySQL can use the DS for executing queries.
return student;
}
有更好的方法吗? Groovy可以直接处理数据源(多个DD)吗?在这种情况下,我不会在Spring配置中初始化DataSource。
不需要事务,JPA等。它是纯SQL读取操作。
答案 0 :(得分:0)
事实上,Groovy,Java,Gradle和Spring-boot可以毫无问题地混合使用。我在Groovy类中创建了一个新的ReST服务并使用了groovy.Sql。一切正常。
Gradle构建文件需要低于配置:
sourceSets {
main {
groovy {
// override the default locations, rather than adding additional ones
srcDirs = ['src/main/groovy', 'src/main/java']
}
java {
srcDirs = [] // don't compile Java code twice
}
}
}
并且还在主Spring配置类的组件扫描中使用了groovy包。