1 数据源配置
<beanid="dataSource"class="com.mchange.v2.c3p0.ComboPooledDataSource"destroy-method="close">
<propertyname="driverClass"value="oracle.jdbc.driver.OracleDriver"/>
<propertyname="jdbcUrl"value="jdbc:oracle:thin:@localhost:1521:ssid"/>
<propertyname="user"value="user"/>
<propertyname="password"value="password"/>
<propertyname="initialPoolSize"value="10"/>
<propertyname="minPoolSize"value="10"/>
<propertyname="maxPoolSize"value="100"/>
</bean>
2 DAO配置
<beanid="userDao"class="com.spring.jdbc.UserDaoImpl">
<propertyname="dataSource"ref="dataSource"/>
</bean>
3 DAO
publicinterface UserDao {
publicvoid saveUser(UserBean userBean)throws Exception;
public List<UserBean> queryUserList(UserBean userBean)throws Exception;
}
4 DAO实现
publicclassUserDaoImpl extends JdbcDaoSupportimplements UserDao {
@Override
publicvoid saveUser(UserBean userBean)throws Exception {
String sql = "insert into user(username, password, age) values(?, ?, ?)";
Object[] objects = new Object[]{userBean.getUsername(), userBean.getPassword(), userBean.getAge()};
this.getJdbcTemplate().update(sql, objects);
}
@Override
public List<UserBean> queryUserList(UserBean userBean)throws Exception {
String sql = "select * from user";
List<UserBean> userBeanList =this.getJdbcTemplate().query(sql,new RowMapper() {
public Object mapRow(ResultSet rs,int arg)throws SQLException {
UserBean userBean =new UserBean();
userBean.setUsername(rs.getString("USERNAME"));
userBean.setPassword(rs.getString("PASSWORD"));
userBean.setAge(rs.getInt("AGE"));
return userBean;
}
});
return userBeanList;
}
}
5 UserBean
publicclassUserBean implements Serializable {
privatestaticfinallongserialVersionUID = 1L;
private Stringusername;
private Stringpassword;
privateintage;
public String getUsername() {
returnusername;
}
publicvoid setUsername(String username) {
this.username = username;
}
public String getPassword() {
returnpassword;
}
publicvoid setPassword(String password) {
this.password = password;
}
publicint getAge() {
returnage;
}
publicvoid setAge(int age) {
this.age = age;
}
}