Java如何使用JdbcTemplate从数据库中删除记录?
以下代码演示了如何使用JdbcTemplate删除数据库中的某些记录。
package org.nhooo.example.spring.jdbc;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import javax.sql.DataSource;
public class DeleteDemo {
public static final String DRIVER = "com.mysql.jdbc.Driver";
public static final String URL = "jdbc:mysql://localhost/mediadb";
public static final String USERNAME = "root";
public static final String PASSWORD = "";
public static final String QUERY = "DELETE FROM records WHERE id = ?";
private DataSource dataSource;
public DeleteDemo(DataSource dataSource) {
this.dataSource = dataSource;
}
public void deleteRecord(Long id) {
// 创建JdbcTemplate的实例并提供数据
// 源对象。
JdbcTemplate template = new JdbcTemplate(this.dataSource);
// 从学生所在的数据库中删除学生记录
// id与指定参数匹配。
Object[] params = {id};
int rows = template.update(DeleteDemo.QUERY, params);
System.out.println(rows + " row(s) deleted.");
}
/**
* Returns a DataSource object.
*
* @return a DataSource.
*/
public static DataSource getDataSource() {
DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName(DeleteDemo.DRIVER);
ds.setUrl(DeleteDemo.URL);
ds.setUsername(DeleteDemo.USERNAME);
ds.setPassword(DeleteDemo.PASSWORD);
return ds;
}
public static void main(String[] args) {
DataSource ds = getDataSource();
DeleteDemo demo = new DeleteDemo(ds);
Long id = 1L;
demo.deleteRecord(id);
}
}