Показывать в таблице ты датируешь с форматом dd / мм / yyyy и не показывать null

у меня есть проблема, у меня есть даты, сохраняемые в SQL в DATE, но я не добиваюсь, чтобы они вышли у меня даты в формате в день / месяц / в год (с/), и также не добиваюсь, чтобы null, когда есть дата, которая не существует, он не показал меня ему.

Я использую MySQL, и показываю результаты консультации в таблице.

Посмотрим вы можете говорить мне, как фокусировать это.

introducir la descripción de la imagen aquí

introducir la descripción de la imagen aquí

Dao, который я делаю, - следующий:

public ArrayList selectPrestamo() throws Exception {
    ArrayList prestamos = null;

    try (Connection connection = DBConnection.get()) {
        if (connection == null) {//si la conexión es nula lanza una excepción
            throw new Exception("Connection is null");
        }

        Statement statement = connection.createStatement();
        ResultSet rs = statement.executeQuery("SELECT * FROM prestamo");

        prestamos = new ArrayList();
        while (rs.next()) {
            Prestamo prestamo = new Prestamo(rs.getInt("id"), rs.getString("DNIusuario"),
                    rs.getString("ISBNobra"), rs.getDate("Fechasolicitud"),
                    rs.getDate("Fechadevolucion"));
            prestamos.add(prestamo);
        }

    } catch (Exception ex) {
        throw ex;
    } finally {
        DBConnection.close();
    }
    return prestamos;
}

и это лист jsp

<%@page import="java.util.List"%>
<%@page import="Entidades.Prestamo"%>
<%@page import="DAO.DAOPrestamo"%>
<%@page import="Conexion.DBConnection"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>





<%
String message = "";//por si hay que mandar un mensaje de error
List prestamos = null;
DAOPrestamo dao = new DAOPrestamo();
try {

    prestamos = dao.selectPrestamo();

} catch (Exception ex) {
    message = ex.toString();

}

%>




    
    formListarPrestamo
    


    

BIBLIOTECA - PRESTAMOS

0
задан 21.03.2019, 00:02
1 ответ

Изначально я вижу, что это очень основная страница в JSP, в самом деле ты не используешь framework какой-либо, что не estГЎ плохо, я предполагаю, - упражнение acadГ©mico... и seguirГ© поэтому lГ-nea.

, Данная структуру тебя cГіdigo, я предлагаю, чтобы ты осуществил утилитарный класс с одним mГ©todo estГЎtico, что позволил тебе обращать даты в желанный формат и с другой стороны возвратил пустую цепь в тех случаях, где дата - NULL.

, Чтобы реализовывать ее conversiГіn дат в желаемый формат собственное serГ, - чтобы использовать класс SimpleDateFormat, эта позволяет тебе вооружать один patrГіn, под которым producirГЎ дата я предлагаю читать ее documentaciГіn для того, чтобы тебе это было немного ясно ( https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html )

В принципе mГ©todo podrГ, - чтобы быть чем-то asГ-:

public static String FechaATexto(Date fecha) {
    if(fecha == null) {
      return "";
    }
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
    return sdf.format(fecha);
}

С anterio serГ - в достаточный для logarar твое поручение просто в JSP deberГЎ заставлять пару изменений, как импортирование утилитарного класса, и с другой стороны использовать ее в таблице, чем-то asГ-:

<td><%= Utilidad.FechaATexto(prestamos.get(i).getFechadevolucion()) %></td>

Сейчас, все зависит quire прибывать, куда, podrГ-схвати, делать что-то еще genГ©rico даже добавляя параметр mГЎs к утилитарной функции, чему-то как это:

public static String FechaATexto(Date fecha, String formato) {
    if(fecha == null) {
      return "";
    }
    SimpleDateFormat sdf = new SimpleDateFormat(formato);
    return sdf.format(fecha);
}

С этим mГ©todo podrГЎs не только перемещать его дату а tambiГ©n желанный формат, asГ - podrГ-схвати повторно использовать эта малолитражка в других случаях. AsГ - serГ - в Ваше использование:

<td><%= Utilidad.FechaATexto(prestamos.get(i).getFechadevolucion(),"dd/MM/yyyy") %></td>
0
ответ дан 02.12.2019, 05:21
  • 1
    Гениальный ответ, я добился того, в чем он нуждался, только habí для которого импортировать ее, строить объект и потом añ adirla в колонне. –  Alberto Bedmar Montaño 21.03.2019, 03:19