Example usage for java.sql PreparedStatement setDate

List of usage examples for java.sql PreparedStatement setDate

Introduction

In this page you can find the example usage for java.sql PreparedStatement setDate.

Prototype

void setDate(int parameterIndex, java.sql.Date x) throws SQLException;

Source Link

Document

Sets the designated parameter to the given java.sql.Date value using the default time zone of the virtual machine that is running the application.

Usage

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void update(final Pand pand) throws DAOException {
    try {//from  ww  w.  j  a va 2s  .  c o m
        jdbcTemplate.update(new PreparedStatementCreator() {
            @Override
            public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
                PreparedStatement ps = connection.prepareStatement("update bag_pand set"
                        + " aanduiding_record_inactief = ?," + " officieel = ?," + " pand_geometrie = ?,"
                        + " bouwjaar = ?," + " pand_status = ?," + " einddatum_tijdvak_geldigheid = ?,"
                        + " in_onderzoek = ?," + " bron_documentdatum = ?," + " bron_documentnummer = ?"
                        + " where bag_pand_id = ?" + " and aanduiding_record_correctie = ?"
                        + " and begindatum_tijdvak_geldigheid = ?");
                ps.setInt(1, pand.getAanduidingRecordInactief().ordinal());
                ps.setInt(2, pand.getOfficieel().ordinal());
                ps.setString(3, pand.getPandGeometrie());
                ps.setInt(4, pand.getBouwjaar());
                ps.setString(5, pand.getPandStatus());
                if (pand.getEinddatumTijdvakGeldigheid() == null)
                    ps.setNull(6, Types.TIMESTAMP);
                else
                    ps.setTimestamp(6, new Timestamp(pand.getEinddatumTijdvakGeldigheid().getTime()));
                ps.setInt(7, pand.getInOnderzoek().ordinal());
                ps.setDate(8, new Date(pand.getDocumentdatum().getTime()));
                ps.setString(9, pand.getDocumentnummer());
                ps.setLong(10, pand.getIdentificatie());
                ps.setLong(11, pand.getAanduidingRecordCorrectie());
                ps.setTimestamp(12, new Timestamp(pand.getBegindatumTijdvakGeldigheid().getTime()));
                return ps;
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error updating pand: " + pand.getIdentificatie(), e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void insertWoonplaatsen(final List<Woonplaats> woonplaatsen) throws DAOException {
    try {/*from ww w  .j  a  v a 2s .  c  o m*/
        jdbcTemplate.batchUpdate("insert into bag_woonplaats (" + "bag_woonplaats_id,"
                + "aanduiding_record_inactief," + "aanduiding_record_correctie," + "woonplaats_naam,"
                + "woonplaats_geometrie," + "officieel," + "begindatum_tijdvak_geldigheid,"
                + "einddatum_tijdvak_geldigheid," + "in_onderzoek," + "bron_documentdatum,"
                + "bron_documentnummer," + "woonplaats_status" + ") values (?,?,?,?,?,?,?,?,?,?,?,?)",
                new BatchPreparedStatementSetter() {
                    @Override
                    public void setValues(PreparedStatement ps, int i) throws SQLException {
                        ps.setLong(1, woonplaatsen.get(i).getIdentificatie());
                        ps.setInt(2, woonplaatsen.get(i).getAanduidingRecordInactief().ordinal());
                        ps.setLong(3, woonplaatsen.get(i).getAanduidingRecordCorrectie());
                        ps.setString(4, woonplaatsen.get(i).getWoonplaatsNaam());
                        ps.setString(5, woonplaatsen.get(i).getWoonplaatsGeometrie());
                        ps.setInt(6, woonplaatsen.get(i).getOfficieel().ordinal());
                        ps.setTimestamp(7,
                                new Timestamp(woonplaatsen.get(i).getBegindatumTijdvakGeldigheid().getTime()));
                        if (woonplaatsen.get(i).getEinddatumTijdvakGeldigheid() == null)
                            ps.setNull(8, Types.TIMESTAMP);
                        else
                            ps.setTimestamp(8, new Timestamp(
                                    woonplaatsen.get(i).getEinddatumTijdvakGeldigheid().getTime()));
                        ps.setInt(9, woonplaatsen.get(i).getInOnderzoek().ordinal());
                        ps.setDate(10, new Date(woonplaatsen.get(i).getDocumentdatum().getTime()));
                        ps.setString(11, woonplaatsen.get(i).getDocumentnummer());
                        ps.setInt(12, woonplaatsen.get(i).getWoonplaatsStatus().ordinal());
                    }

                    @Override
                    public int getBatchSize() {
                        return woonplaatsen.size();
                    }
                });
    } catch (DataAccessException e) {
        throw new DAOException("Error inserting woonplaatsen", e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void insertPanden(final List<Pand> panden) throws DAOException {
    try {//from  w ww. ja  va 2  s.c  om
        jdbcTemplate.batchUpdate("insert into bag_pand (" + "bag_pand_id," + "aanduiding_record_inactief,"
                + "aanduiding_record_correctie," + "officieel," + "pand_geometrie," + "bouwjaar,"
                + "pand_status," + "begindatum_tijdvak_geldigheid," + "einddatum_tijdvak_geldigheid,"
                + "in_onderzoek," + "bron_documentdatum," + "bron_documentnummer"
                + ") values (?,?,?,?,?,?,?,?,?,?,?,?)", new BatchPreparedStatementSetter() {
                    @Override
                    public void setValues(PreparedStatement ps, int i) throws SQLException {
                        ps.setLong(1, panden.get(i).getIdentificatie());
                        ps.setInt(2, panden.get(i).getAanduidingRecordInactief().ordinal());
                        ps.setLong(3, panden.get(i).getAanduidingRecordCorrectie());
                        ps.setInt(4, panden.get(i).getOfficieel().ordinal());
                        ps.setString(5, panden.get(i).getPandGeometrie());
                        ps.setInt(6, panden.get(i).getBouwjaar());
                        ps.setString(7, panden.get(i).getPandStatus());
                        ps.setTimestamp(8,
                                new Timestamp(panden.get(i).getBegindatumTijdvakGeldigheid().getTime()));
                        if (panden.get(i).getEinddatumTijdvakGeldigheid() == null)
                            ps.setNull(9, Types.TIMESTAMP);
                        else
                            ps.setTimestamp(9,
                                    new Timestamp(panden.get(i).getEinddatumTijdvakGeldigheid().getTime()));
                        ps.setInt(10, panden.get(i).getInOnderzoek().ordinal());
                        ps.setDate(11, new Date(panden.get(i).getDocumentdatum().getTime()));
                        ps.setString(12, panden.get(i).getDocumentnummer());
                    }

                    @Override
                    public int getBatchSize() {
                        return panden.size();
                    }
                });
    } catch (DataAccessException e) {
        throw new DAOException("Error inserting panden", e);
    }
}

From source file:sopho.Ofeloumenoi.EditOfeloumenoiController.java

@FXML
public void Save(ActionEvent event) throws IOException {

    if (barcode.getText().isEmpty() || onoma.getText().isEmpty() || eponimo.getText().isEmpty()
            || patronimo.getText().isEmpty()) { //checking if the user has filled the required fields

        sopho.Messages.CustomMessageController cm = new sopho.Messages.CustomMessageController(null,
                "?!",
                "  ?   ? .  ?  ?   Barcode, ,   ? ?  ?  ?",
                "error");
        cm.showAndWait();// w w  w .j av  a  2 s .  c  om

    } else if (!NumberUtils.isNumber(barcode.getText()) && !barcode.getText().isEmpty()) {
        sopho.Messages.CustomMessageController cm = new sopho.Messages.CustomMessageController(null,
                "?!",
                "  barcode ?  ?  ??. ?    ?  .",
                "error");
        cm.showAndWait();
    } else if (!NumberUtils.isNumber(eisodima.getText()) && !eisodima.getText().isEmpty()) {
        sopho.Messages.CustomMessageController cm = new sopho.Messages.CustomMessageController(null,
                "?!",
                "   ?  ?  ??. ?    ?  .",
                "error");
        cm.showAndWait();
    } else {//the user has filled the required fields. We can proceed.
        sopho.DBClass db = new sopho.DBClass();
        Connection conn = null;
        PreparedStatement pst = null;
        ResultSet rset = null;

        String teknaDB = ""; //we create a var to push data to db.
        for (int i = 0; i < tekna.getItems().size(); i++) {//we are converting the table rows to a single comma separated string to push it to the database in a single entry.
            tableManager tbl = (tableManager) tekna.getItems().get(i);
            if (!tbl.getEtos().equals("?  ")) { //we are checking if the user has actually entered a number
                teknaDB += tbl.getEtos() + ","; //we have to call getEtos from the tableManager class to get the actual value. We add the value to teknaDB and seperate with comma.
                arithmosTeknon++;
            }
        }
        if (arithmosTeknon > 0) {// we need to catch the case that the user has not added any data to the table.
            teknaDB = teknaDB.substring(0, teknaDB.length() - 1); // we have to remove the last comma.
        }
        conn = db.ConnectDB();

        try {
            // we can push the data to database...
            String sql = "UPDATE ofeloumenoi SET barcode=?, eponimo=?, onoma=?, patronimo=?, mitronimo=?, imGennisis=?, dieuthinsi=?, dimos=?, tilefono=?, anergos=?, epaggelma=?, eisodima=?, eksartiseis=?, photoID=?, afm=?, tautotita=?, ethnikotita=?, metanastis=?, roma=?, oikKatastasi=?, hasTekna=?, arithmosTeknon=?, ilikiesTeknon=?, politeknos=?, monogoneiki=?, mellousaMama=?, amea=?, asfForeas=?, xronios=?, pathisi=?, anoTon60=?, monaxikos=?, emfiliVia=?, spoudastis=?, anenergos=?, loipa=? WHERE barcode=?";
            pst = conn.prepareStatement(sql);
            //now we will set the values to the sql statement
            pst.setString(1, barcode.getText());
            pst.setString(2, eponimo.getText());
            pst.setString(3, onoma.getText());
            pst.setString(4, patronimo.getText());
            pst.setString(5, mitronimo.getText());
            //now we have to convert the imGennisis to a suitable format to be able to push it to the database
            if (imGennisis.getValue() != null) {
                Date date = Date.from(imGennisis.getValue().atStartOfDay(ZoneId.systemDefault()).toInstant());
                java.sql.Date sqlDate = new java.sql.Date(date.getTime());
                pst.setDate(6, sqlDate);
            } else {
                pst.setDate(6, null);
            }
            pst.setString(7, dieuthinsi.getText());
            pst.setString(8, dimos.getText());
            pst.setString(9, tilefono.getText());
            pst.setInt(10, anergos.isSelected() ? 1 : 0); //set 1 if selected and 0 if not. We will use this method for all the checkboxes.
            pst.setString(11, epaggelma.getText());
            pst.setString(12, eisodima.getText());
            pst.setString(13, eksartiseis.getText());
            pst.setString(14, PhotoID);
            pst.setString(15, afm.getText());
            pst.setString(16, tautotita.getText());
            pst.setString(17, ethnikotita.getText());
            pst.setInt(18, metanastis.isSelected() ? 1 : 0);
            pst.setInt(19, roma.isSelected() ? 1 : 0);
            pst.setInt(20, (int) oikKatastasi.getSelectionModel().getSelectedIndex());//we are pushing to database the selected index
            pst.setInt(21, arithmosTeknon > 0 ? 1 : 0); //checking number of tekna. if >0 has tekna gets 1
            pst.setInt(22, arithmosTeknon);
            pst.setString(23, teknaDB); //here we use the converted to comma separated values variable in order to save the tableView data using only one field in database.
            pst.setInt(24, politeknos.isSelected() ? 1 : 0);
            pst.setInt(25, monogoneiki.isSelected() ? 1 : 0);
            pst.setInt(26, mellousaMama.isSelected() ? 1 : 0);
            pst.setInt(27, amea.isSelected() ? 1 : 0);
            pst.setInt(28, (int) asfForeas.getSelectionModel().getSelectedIndex());//we are pushing to database the selected index
            pst.setInt(29, xronios.isSelected() ? 1 : 0);
            pst.setString(30, pathisi.getText());
            pst.setInt(31, monaxiko.isSelected() ? 1 : 0);
            pst.setInt(32, anoTon60.isSelected() ? 1 : 0);
            pst.setInt(33, emfiliVia.isSelected() ? 1 : 0);
            pst.setInt(34, spoudastis.isSelected() ? 1 : 0);
            pst.setInt(35, anenergos.isSelected() ? 1 : 0);
            pst.setString(36, loipa.getText());

            pst.setString(37, oldBarcode); // we update the values to the database table where barcode = oldBarcode

            System.out.println("the query is:" + pst.toString());
            int linesAffected = pst.executeUpdate();

            //checking if the data were inserted to the database successfully
            if (linesAffected > 0) {
                sopho.Messages.CustomMessageController cm = new sopho.Messages.CustomMessageController(null,
                        "!",
                        "   ?  ?  , ?     .",
                        "confirm");
                cm.showAndWait();

                if (le.LockEditing(false, selID, "ofeloumenoi")) {
                    Stage stage = (Stage) barcode.getScene().getWindow();
                    sl.StageLoad("/sopho/Ofeloumenoi/OfeloumenoiMain.fxml", stage, true, false); //resizable true, utility false
                } else {
                    sopho.Messages.CustomMessageController cm2 = new sopho.Messages.CustomMessageController(
                            null, "?",
                            "   ?  ?  ?.      ?   ? .   ?  ? ?    ??.",
                            "error");
                    cm2.showAndWait();
                }
            } else {//problem inserting data...
                sopho.Messages.CustomMessageController cm = new sopho.Messages.CustomMessageController(null,
                        "?!",
                        "   ?  ??   . ?  ...",
                        "error");
                cm.showAndWait();
            }
        } catch (SQLException e) {
            System.out.println(
                    "?     ?   ?  !"
                            + e);
        }
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void insertOpenbareRuimten(final List<OpenbareRuimte> openbareRuimten) throws DAOException {
    try {/*from  ww w  .j a v  a2  s.co  m*/
        jdbcTemplate.batchUpdate("insert into bag_openbare_ruimte (" + "bag_openbare_ruimte_id,"
                + "aanduiding_record_inactief," + "aanduiding_record_correctie," + "openbare_ruimte_naam,"
                + "officieel," + "begindatum_tijdvak_geldigheid," + "einddatum_tijdvak_geldigheid,"
                + "in_onderzoek," + "openbare_ruimte_type," + "bron_documentdatum," + "bron_documentnummer,"
                + "openbareruimte_status," + "bag_woonplaats_id," + "verkorte_openbare_ruimte_naam"
                + ") values (?,?,?,?,?,?,?,?,?,?,?,?,?,?)", new BatchPreparedStatementSetter() {
                    @Override
                    public void setValues(PreparedStatement ps, int i) throws SQLException {
                        ps.setLong(1, openbareRuimten.get(i).getIdentificatie());
                        ps.setInt(2, openbareRuimten.get(i).getAanduidingRecordInactief().ordinal());
                        ps.setLong(3, openbareRuimten.get(i).getAanduidingRecordCorrectie());
                        ps.setString(4, openbareRuimten.get(i).getOpenbareRuimteNaam());
                        ps.setInt(5, openbareRuimten.get(i).getOfficieel().ordinal());
                        ps.setTimestamp(6, new Timestamp(
                                openbareRuimten.get(i).getBegindatumTijdvakGeldigheid().getTime()));
                        if (openbareRuimten.get(i).getEinddatumTijdvakGeldigheid() == null)
                            ps.setNull(7, Types.TIMESTAMP);
                        else
                            ps.setTimestamp(7, new Timestamp(
                                    openbareRuimten.get(i).getEinddatumTijdvakGeldigheid().getTime()));
                        ps.setInt(8, openbareRuimten.get(i).getInOnderzoek().ordinal());
                        ps.setInt(9, openbareRuimten.get(i).getOpenbareRuimteType().ordinal());
                        ps.setDate(10, new Date(openbareRuimten.get(i).getDocumentdatum().getTime()));
                        ps.setString(11, openbareRuimten.get(i).getDocumentnummer());
                        ps.setInt(12, openbareRuimten.get(i).getOpenbareruimteStatus().ordinal());
                        ps.setLong(13, openbareRuimten.get(i).getGerelateerdeWoonplaats());
                        ps.setString(14, openbareRuimten.get(i).getVerkorteOpenbareRuimteNaam());
                    }

                    @Override
                    public int getBatchSize() {
                        return openbareRuimten.size();
                    }
                });
    } catch (DataAccessException e) {
        throw new DAOException("Error inserting openbare ruimten", e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void update(final Woonplaats woonplaats) throws DAOException {
    try {/*from   w w  w  . j  a v  a 2 s . com*/
        jdbcTemplate.update(new PreparedStatementCreator() {
            @Override
            public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
                PreparedStatement ps = connection.prepareStatement("update bag_woonplaats set"
                        + " aanduiding_record_inactief = ?," + " woonplaats_naam = ?,"
                        + " woonplaats_geometrie = ?," + " officieel = ?,"
                        + " einddatum_tijdvak_geldigheid = ?," + " in_onderzoek = ?,"
                        + " bron_documentdatum = ?," + " bron_documentnummer = ?," + " woonplaats_status = ?"
                        + " where bag_woonplaats_id = ?" + " and aanduiding_record_correctie = ?"
                        + " and begindatum_tijdvak_geldigheid = ?");
                ps.setInt(1, woonplaats.getAanduidingRecordInactief().ordinal());
                ps.setString(2, woonplaats.getWoonplaatsNaam());
                ps.setString(3, woonplaats.getWoonplaatsGeometrie());
                ps.setInt(4, woonplaats.getOfficieel().ordinal());
                if (woonplaats.getEinddatumTijdvakGeldigheid() == null)
                    ps.setNull(5, Types.TIMESTAMP);
                else
                    ps.setTimestamp(5, new Timestamp(woonplaats.getEinddatumTijdvakGeldigheid().getTime()));
                ps.setInt(6, woonplaats.getInOnderzoek().ordinal());
                ps.setDate(7, new Date(woonplaats.getDocumentdatum().getTime()));
                ps.setString(8, woonplaats.getDocumentnummer());
                ps.setInt(9, woonplaats.getWoonplaatsStatus().ordinal());
                ps.setLong(10, woonplaats.getIdentificatie());
                ps.setLong(11, woonplaats.getAanduidingRecordCorrectie());
                ps.setTimestamp(12, new Timestamp(woonplaats.getBegindatumTijdvakGeldigheid().getTime()));
                return ps;
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error updating woonplaats: " + woonplaats.getIdentificatie(), e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void insertLigplaatsen(final List<Ligplaats> ligplaatsen) throws DAOException {
    try {/*from w  ww .  j av  a  2s  .  com*/
        transactionTemplate.execute(new TransactionCallbackWithoutResult() {
            @Override
            protected void doInTransactionWithoutResult(TransactionStatus status) {
                jdbcTemplate.batchUpdate("insert into bag_ligplaats (" + "bag_ligplaats_id,"
                        + "aanduiding_record_inactief," + "aanduiding_record_correctie," + "officieel,"
                        + "ligplaats_status," + "ligplaats_geometrie," + "begindatum_tijdvak_geldigheid,"
                        + "einddatum_tijdvak_geldigheid," + "in_onderzoek," + "bron_documentdatum,"
                        + "bron_documentnummer," + "bag_nummeraanduiding_id"
                        + ") values (?,?,?,?,?,?,?,?,?,?,?,?)", new BatchPreparedStatementSetter() {
                            @Override
                            public void setValues(PreparedStatement ps, int i) throws SQLException {
                                ps.setLong(1, ligplaatsen.get(i).getIdentificatie());
                                ps.setInt(2, ligplaatsen.get(i).getAanduidingRecordInactief().ordinal());
                                ps.setLong(3, ligplaatsen.get(i).getAanduidingRecordCorrectie());
                                ps.setInt(4, ligplaatsen.get(i).getOfficieel().ordinal());
                                ps.setInt(5, ligplaatsen.get(i).getLigplaatsStatus().ordinal());
                                ps.setString(6, ligplaatsen.get(i).getLigplaatsGeometrie());
                                ps.setTimestamp(7, new Timestamp(
                                        ligplaatsen.get(i).getBegindatumTijdvakGeldigheid().getTime()));
                                if (ligplaatsen.get(i).getEinddatumTijdvakGeldigheid() == null)
                                    ps.setNull(8, Types.TIMESTAMP);
                                else
                                    ps.setTimestamp(8, new Timestamp(
                                            ligplaatsen.get(i).getEinddatumTijdvakGeldigheid().getTime()));
                                ps.setInt(9, ligplaatsen.get(i).getInOnderzoek().ordinal());
                                ps.setDate(10, new Date(ligplaatsen.get(i).getDocumentdatum().getTime()));
                                ps.setString(11, ligplaatsen.get(i).getDocumentnummer());
                                ps.setLong(12, ligplaatsen.get(i).getHoofdAdres());
                            }

                            @Override
                            public int getBatchSize() {
                                return ligplaatsen.size();
                            }
                        });
                insertNevenadressen(TypeAdresseerbaarObject.LIGPLAATS, ligplaatsen);
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error inserting ligplaatsen", e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void update(final Pand origineel, final Pand mutation) throws DAOException {
    try {/*from  w  ww .j  a  v  a2 s  .  c o m*/
        jdbcTemplate.update(new PreparedStatementCreator() {
            @Override
            public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
                PreparedStatement ps = connection.prepareStatement("update bag_pand set"
                        + " aanduiding_record_inactief = ?," + " aanduiding_record_correctie = ?,"
                        + " officieel = ?," + " pand_geometrie = ?," + " bouwjaar = ?," + " pand_status = ?,"
                        + " einddatum_tijdvak_geldigheid = ?," + " in_onderzoek = ?,"
                        + " bron_documentdatum = ?," + " bron_documentnummer = ?" + " where bag_pand_id = ?"
                        + " and aanduiding_record_correctie = ?" + " and begindatum_tijdvak_geldigheid = ?");
                ps.setInt(1, mutation.getAanduidingRecordInactief().ordinal());
                ps.setLong(2, mutation.getAanduidingRecordCorrectie());
                ps.setInt(3, mutation.getOfficieel().ordinal());
                ps.setString(4, mutation.getPandGeometrie());
                ps.setInt(5, mutation.getBouwjaar());
                ps.setString(6, mutation.getPandStatus());
                if (mutation.getEinddatumTijdvakGeldigheid() == null)
                    ps.setNull(7, Types.TIMESTAMP);
                else
                    ps.setTimestamp(7, new Timestamp(mutation.getEinddatumTijdvakGeldigheid().getTime()));
                ps.setInt(8, mutation.getInOnderzoek().ordinal());
                ps.setDate(9, new Date(mutation.getDocumentdatum().getTime()));
                ps.setString(10, mutation.getDocumentnummer());
                ps.setLong(11, origineel.getIdentificatie());
                ps.setLong(12, origineel.getAanduidingRecordCorrectie());
                ps.setTimestamp(13, new Timestamp(origineel.getBegindatumTijdvakGeldigheid().getTime()));
                return ps;
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error updating pand: " + origineel.getIdentificatie(), e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void insertStandplaatsen(final List<Standplaats> standplaatsen) throws DAOException {
    try {//w  w w .  ja v a 2  s .  c om
        transactionTemplate.execute(new TransactionCallbackWithoutResult() {
            @Override
            protected void doInTransactionWithoutResult(TransactionStatus status) {
                jdbcTemplate.batchUpdate("insert into bag_standplaats (" + "bag_standplaats_id,"
                        + "aanduiding_record_inactief," + "aanduiding_record_correctie," + "officieel,"
                        + "standplaats_status," + "standplaats_geometrie," + "begindatum_tijdvak_geldigheid,"
                        + "einddatum_tijdvak_geldigheid," + "in_onderzoek," + "bron_documentdatum,"
                        + "bron_documentnummer," + "bag_nummeraanduiding_id"
                        + ") values (?,?,?,?,?,?,?,?,?,?,?,?)", new BatchPreparedStatementSetter() {
                            @Override
                            public void setValues(PreparedStatement ps, int i) throws SQLException {
                                ps.setLong(1, standplaatsen.get(i).getIdentificatie());
                                ps.setInt(2, standplaatsen.get(i).getAanduidingRecordInactief().ordinal());
                                ps.setLong(3, standplaatsen.get(i).getAanduidingRecordCorrectie());
                                ps.setInt(4, standplaatsen.get(i).getOfficieel().ordinal());
                                ps.setInt(5, standplaatsen.get(i).getStandplaatsStatus().ordinal());
                                ps.setString(6, standplaatsen.get(i).getStandplaatsGeometrie());
                                ps.setTimestamp(7, new Timestamp(
                                        standplaatsen.get(i).getBegindatumTijdvakGeldigheid().getTime()));
                                if (standplaatsen.get(i).getEinddatumTijdvakGeldigheid() == null)
                                    ps.setNull(8, Types.TIMESTAMP);
                                else
                                    ps.setTimestamp(8, new Timestamp(
                                            standplaatsen.get(i).getEinddatumTijdvakGeldigheid().getTime()));
                                ps.setInt(9, standplaatsen.get(i).getInOnderzoek().ordinal());
                                ps.setDate(10, new Date(standplaatsen.get(i).getDocumentdatum().getTime()));
                                ps.setString(11, standplaatsen.get(i).getDocumentnummer());
                                ps.setLong(12, standplaatsen.get(i).getHoofdAdres());
                            }

                            @Override
                            public int getBatchSize() {
                                return standplaatsen.size();
                            }
                        });
                insertNevenadressen(TypeAdresseerbaarObject.STANDPLAATS, standplaatsen);
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error inserting standplaatsen", e);
    }
}

From source file:nl.ordina.bag.etl.dao.AbstractBAGDAO.java

@Override
public void update(final Woonplaats origineel, final Woonplaats wijziging) throws DAOException {
    try {//from w w  w  .  j  ava 2  s.c  om
        jdbcTemplate.update(new PreparedStatementCreator() {
            @Override
            public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
                PreparedStatement ps = connection.prepareStatement("update bag_woonplaats set"
                        + " aanduiding_record_inactief = ?," + " aanduiding_record_correctie = ?,"
                        + " woonplaats_naam = ?," + " woonplaats_geometrie = ?," + " officieel = ?,"
                        + " einddatum_tijdvak_geldigheid = ?," + " in_onderzoek = ?,"
                        + " bron_documentdatum = ?," + " bron_documentnummer = ?," + " woonplaats_status = ?"
                        + " where bag_woonplaats_id = ?" + " and aanduiding_record_correctie = ?"
                        + " and begindatum_tijdvak_geldigheid = ?");
                ps.setInt(1, wijziging.getAanduidingRecordInactief().ordinal());
                ps.setLong(2, wijziging.getAanduidingRecordCorrectie());
                ps.setString(3, wijziging.getWoonplaatsNaam());
                ps.setString(4, wijziging.getWoonplaatsGeometrie());
                ps.setInt(5, wijziging.getOfficieel().ordinal());
                if (wijziging.getEinddatumTijdvakGeldigheid() == null)
                    ps.setNull(6, Types.TIMESTAMP);
                else
                    ps.setTimestamp(6, new Timestamp(wijziging.getEinddatumTijdvakGeldigheid().getTime()));
                ps.setInt(7, wijziging.getInOnderzoek().ordinal());
                ps.setDate(8, new Date(wijziging.getDocumentdatum().getTime()));
                ps.setString(9, wijziging.getDocumentnummer());
                ps.setInt(10, wijziging.getWoonplaatsStatus().ordinal());
                ps.setLong(11, origineel.getIdentificatie());
                ps.setLong(12, origineel.getAanduidingRecordCorrectie());
                ps.setTimestamp(13, new Timestamp(origineel.getBegindatumTijdvakGeldigheid().getTime()));
                return ps;
            }
        });
    } catch (DataAccessException e) {
        throw new DAOException("Error updating woonplaats: " + origineel.getIdentificatie(), e);
    }
}