Как перенести Java, Spring Project для использования источников данных JNDI
У меня есть проект Java, который запускается из командной строки. Это использует Spring. В настоящее время мой проект - MySQL. Использование можно увидеть из config.xml ниже
Моя фирма просит меня изменить проект с использования MySQL на использование источника данных JNDI.
Ниже мой java-код, который вы можете увидеть, использует jdbcTemplate:
public class DisasterReliefMySQLImpl extends JdbcTemplate implements
DisasterReliefMySQL {
private static Log log = LogFactory.getLog(DisasterReliefMySQLImpl.class
.getName());
String querySQL;
int counter = 0;
public int getCounter() {
return counter;
}
private String getQuerySQL() {
return querySQL;
}
private void setQuerySQL(String querySQL) {
this.querySQL = querySQL;
}
DisasterReliefMySQLImpl(DataSource ds) {
super(ds);
}
DisasterReliefMySQLImpl(DataSource ds, String querySQL) {
super(ds);
setQuerySQL(querySQL);
}
public int updateDonation(String id) {
Long eTime = System.currentTimeMillis() / 1000;
String updateSQL = "update uft_donation set sent_to_mbs="
+ eTime.toString() + " where donation_id =" + id;
return (int) this.update(updateSQL);
}
public List returnResults() {
log.debug("Starting returnResults...");
List Donations = new ArrayList();
List rows = this.queryForList(getQuerySQL());
counter = 0;
for (Map row : rows) {
Donation d = new Donation();
d.setDonationID((Long) row.get("donation_id"));
d.setCCTransactionNumber((String) row.get("txn_id"));
d.setProgramCode((String) row.get("gl_code"));
d.setLastName((String) row.get("billing_last_name"));
d.setFirstName((String) row.get("billing_first_name"));
d.setAmount((String) row.get("mc_gross"));
d.setAddressLine1((String) row.get("billing_street1"));
d.setAddressLine2((String) row.get("billing_street2"));
d.setCity((String) row.get("billing_city"));
d.setState((String) row.get("zone_code"));
d.setZipCode((String) row.get("billing_postal_code"));
d.setCountry((String) row.get("country_name"));
Donations.add(d);
counter++;
}
log.debug(counter + " Donation(s) loaded");
return Donations;
}
}
Может кто-нибудь, пожалуйста, скажите мне, как изменить это, чтобы использовать источник данных JNDI. Также мне нужен сервис JNDI где-нибудь для пула базы данных? У нас есть JBoss AS7 с источниками данных, могу ли я использовать это извне JBoss ??
Спасибо