Java如何使用JdbcTemplate更新数据库中的记录?

下面演示的示例将向您展示如何使用该JdbcTemplate.update()方法更新数据库中的记录。此方法返回一个整数值,该整数值指示执行查询时数据库中更新的记录数。

package org.nhooo.example.spring.jdbc;

import org.springframework.jdbc.core.JdbcTemplate;

import org.springframework.jdbc.datasource.DriverManagerDataSource;

import javax.sql.DataSource;

import java.sql.Types;

import java.util.Date;

public class UpdateDemo {

    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 =

            "UPDATE records SET title = ?, release_date = ? WHERE id = ?";

    private DataSource dataSource;

    public UpdateDemo(DataSource dataSource) {

        this.dataSource = dataSource;

    }

    public static void main(String[] args) {

        DataSource ds = getDataSource();

        UpdateDemo demo = new UpdateDemo(ds);

        Long id = 2L;

        String title = "The Beatles 1967 - 1970";

        Date releaseDate = new Date();

        demo.updateRecord(id, title, releaseDate);

    }

    public void updateRecord(Long id, String title, Date releaseDate) {

        // 创建JdbcTemplate的实例并设置DataSource。

        // 我们可以使用模板的update()方法来更新记录

        //在数据库中。下面我们使用一个update()方法来接受

        // 三个参数:sql查询,参数值和

        // 参数数据类型。

        JdbcTemplate template = new JdbcTemplate(this.dataSource);

        Object[] params = {title, releaseDate, id};

        int[] types = {Types.VARCHAR, Types.DATE, Types.BIGINT};

        int rows = template.update(UpdateDemo.QUERY, params, types);

        System.out.println(rows + " row(s) updated.");

    }

    /**

     * Returns a data source object.

     *

     * @return a DataSource.

     */

    public static DataSource getDataSource() {

        DriverManagerDataSource ds = new DriverManagerDataSource();

        ds.setDriverClassName(UpdateDemo.DRIVER);

        ds.setUrl(UpdateDemo.URL);

        ds.setUsername(UpdateDemo.USERNAME);

        ds.setPassword(UpdateDemo.PASSWORD);

        return ds;

    }

}

                       

以上是 Java如何使用JdbcTemplate更新数据库中的记录? 的全部内容, 来源链接: utcz.com/z/321406.html

回到顶部