因爲它似乎你正在使用Spring,你可以使用類似:
public class YourClass {
@Autowired
DataSource dataSource;
JdbcTemplate jdbcTemplate;
public YourClass(){
jdbcTemplate = new JdbcTemplate(dataSource);
}
public int findTotal(){
String sql = "select sum(actual_effort) from task group by project_id";
int total = jdbcTemplate.queryForInt(sql);
return total;
}
}
而在你的Spring配置,你必須創建dataSource
豆與您的數據基本信息:
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="XXXX.jdbc.Driver" />
<property name="url" value="jdbc:XXXX />
<property name="username" value="XXX" />
<property name="password" value="XXX" />
</bean>
編輯
在審查您的問題後,我不確定您是否有興趣使用彈簧jdbcTemplate
設施,或者您只是想使用groovy進行查詢......如果您的情況是第二次而不是使用jdbcTemplate
只需使用groovy.sql.Sql
的常規設施這樣做,例如:
import groovy.sql.Sql;
def db = {
url : 'jdbc:XXXXX',
username : 'XXX',
password : 'XXXX',
driver : 'XXXXXXX'
}
def sql = Sql.newInstance("${db.url}", "${db.username}", "${db.password}","${db.driver}")
def result = sql.executeQuery('select sum(actual_effort) from task group by project_id')
println (result.getInt('sum(actual_effort)'))
希望這有助於
你有一個'getJdbcTemplate'方法?代碼是否工作?你有例外嗎?什麼是錯誤? –
對不起,我沒有getJdbcTemplate方法我需要創建如果是的話告訴我如何 –
你說'queryForObject'加下劃線,但你的代碼有'queryForInt'。 – Qwerky