我在java中编写了一个Web服务。它从数据库返回一些值。它的工作鳍。但是如果我想使用JDBC模板,我不知道该怎么做。
public List<User> getUserDetails() {
ArrayList<User> userList = new ArrayList<User>();
String dbUrl = "";
String dbClass = "oracle.jdbc.OracleDriver";
String query = "select su.LDAP_DN, su.USERNAME, o.NAME as \"OFFICE\", o.OFFICE_CODE from OFFICE o, Users su where o.OFFICE_ID = su.OFFICE_ID ";
String userName = "usr", password = "usr";
try {
Class.forName(dbClass);
Connection con = DriverManager.getConnection (dbUrl, userName, password);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
User user = new User();
user.setUserName((rs.getString("USERNAME")));
user.setLdap_DN((rs.getString("LDAP_DN")));
user.setOfficeName((rs.getString("OFFICE")));
user.setOfficeCode((rs.getString("OFFICE_CODE")));
userList.add(user);
}
con.close();
}
catch(ClassNotFoundException e) {
e.printStackTrace();
}
catch(SQLException e) {
e.printStackTrace();
}
return userList;
}
我有jdbc模板对象。我可以从同一个类的main方法实现它。但是我怎么能在我的getUserDetails()方法中做到这一点? 我的主要方法
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
UsersImpl studentJDBCTemplate = (UsersImpl)context.getBean("sixUserJdbcTemplate");
List<SixUser> students = studentJDBCTemplate.getUserDetails();
System.out.println(students.size());
工作正常。但是在我的getUserDetails方法中,我该如何实现jdbc模板部分。