LocalDateBinder.java
package org.codefilarete.stalactite.sql.statement.binder;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.time.LocalDate;
/**
* {@link ParameterBinder} dedicated to {@link LocalDate} : uses {@link ResultSet#getDate(String)} and {@link PreparedStatement#setDate(int, Date)}
*
* @author Guillaume Mary
*/
public class LocalDateBinder implements ParameterBinder<LocalDate> {
@Override
public Class<LocalDate> getType() {
return LocalDate.class;
}
@Override
public LocalDate doGet(ResultSet resultSet, String columnName) throws SQLException {
return resultSet.getDate(columnName).toLocalDate();
}
@Override
public void set(PreparedStatement statement, int valueIndex, LocalDate value) throws SQLException {
statement.setDate(valueIndex, java.sql.Date.valueOf(value));
}
}