Conversión entre el tipo de datos de fecha y hora en MySQL y el tipo de cadena en Java

datetimeLos datos en el formato en MySQL tienen la forma de: 2021-01-14 13:52:00propia de Java java.sql.Date, java.sql.Timey java.sql.Timestampno se pueden expresar de esta forma, por lo que es muy inconveniente cuando esta forma de fecha está involucrada en el desarrollo.

Si Java usa String para almacenar este formato de hora, debe prestar atención a la conversión entre formatos al leer y escribir la base de datos.

Leer base de datos

Utilice las funciones de la biblioteca MySQL DATE_FORMAT()para datetimeprocesar datos de tipo en MySQL para obtener datos de tipo String.

select DATE_FORMAT(`create_time`, "%y-%m-%d %H:%i:%s")as create_time from test_table;

resultMapEspecifique lo siguiente al definir en Mapper

<id column="create_time" property="createTime" jdbcType="TIMESTAMP"/>

Escribir en la base de datos

yyyy-MM-dd HH:mm:ssEscriba la hora en el formato de tipo String en el datetimecampo de tipo en MySQL , que se puede escribir directamente sin conversión entre formatos.

También puede utilizar las herramientas relacionadas con lombok y Json de la siguiente manera

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Accessors(chain = true)
public class User {
    
    

    private int id;

    private String name;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:SS")
    private Date bir;

    private String sex;

    private String address;
}

Se utiliza @JsonFormatpara especificar el formato del Json devuelto en cada campo.

Supongo que te gusta

Origin blog.csdn.net/qq_27198345/article/details/112605258
Recomendado
Clasificación