Я не знаю, как писать код правильно.
Я оставляю им пример для того, чтобы pedan помогать мне.
В MySQL дата записана в формате "yyyy / мм / dd".
My Bean
public class ClienteBean {
private Date dataAbertura;
}
public Date getDataAbertura() {
return dataAbertura;
}
public void setDataAbertura(Date dataAbertura) {
this.dataAbertura = dataAbertura;
}
My Dao
import java.text.SimpleDateFormat;
import java.util.Date;
private ResultSet rs;
public class ClienteDAOImpl implements ClienteDAO {
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyy");
.
.
.
cliente.setTelefono(rs.getString("cli_telefono"))
cliente.setDataAbetura(df.format(rs.getDate("cli_data_abertura")));
return cliente;
}
Давая из-за факта, что тип cli_data_abertura в базе данных ВОСХОДИТЕ:
private LocalDate cliDataAbertura;
//leer valor desde BD
cliDataAbertura = rs.getDate("cli_data_abertura").toLocalDate();//si no puede ser nulo en BD
cliDataAbertura = rs.getDate("cli_data_abertura")!= null ? rs.getDate("cli_data_abertura").toLocalDate() : null;//si puede ser nulo en BD
//Mostrar valor en pantalla con formato dd-mm-yyy
DateTimeFormatter formateadorFecha = DateTimeFormatter.ofPattern("dd-MM-yyy")
String cliDataAberturaComoString = cliDataAbertura.format(formateadorFecha );
//Guardar en BD
st.setDate(cliDataAbertura!=null ? Date.valueOf(cliDataAbertura) : null;
método setDataAbertura
получает parÃ: метры типа Date
, из-за которого линия, в которой ты перемещаешь его данные deber¦,, - чтобы быть as¦-:
cliente.setDataAbetura(rs.getDate("cli_data_abertura"));
и только ты применяешь к нему формат, когда ты хочешь показать данные, как например:
Textfield.setText(df.format(cliente.getDataAbertura()));
, или если он из-за консоли, таким образом:
System.out.println(df.format(cliente.getDataAbertura()));