格式化日期和时间以在jsp中显示

问题描述

DateTimeFormatter出现一些问题,未格式化要在jsp文件中显示的日期和时间。

这些行没有显示任何错误,但是仍然无法正常工作。

它仅显示数据库中的日期和时间格式:2013-08-14和22:47:00。

我希望将其显示为:14/08/2013和22:47。

可以请人帮我吗?

谢谢

UserServlet:

package net.javaguides.usermanagement.web;
import java.io.IOException;
import java.sql.SQLException;
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

 import net.javaguides.usermanagement.dao.UserDAO;
 import net.javaguides.usermanagement.model.User;



  @WebServlet("/")
public class UserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private UserDAO userDAO;

  public void init() {
    userDAO = new UserDAO();
}

protected void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException {
    doGet(request,response);
}

protected void doGet(HttpServletRequest request,IOException {
    String action = request.getServletPath();

    try {
        switch (action) {
            case "/new":
                showNewForm(request,response);
                break;
            case "/insert":
                insertUser(request,response);
                break;
            case "/delete":
                deleteUser(request,response);
                break;
            case "/edit":
                showEditForm(request,response);
                break;
            case "/update":
                updateUser(request,response);
                break;
            default:
                listUser(request,response);
                break;
        }
    } catch (SQLException ex) {
        throw new ServletException(ex);
    }
}

private void listUser(HttpServletRequest request,HttpServletResponse response)
throws SQLException,IOException,ServletException {
    List < User > listUser = userDAO.selectAllUsers();
    request.setAttribute("listUser",listUser);
    RequestDispatcher dispatcher = request.getRequestDispatcher("user-list.jsp");
    dispatcher.forward(request,response);
}

private void showNewForm(HttpServletRequest request,IOException {
    RequestDispatcher dispatcher = request.getRequestDispatcher("user-form.jsp");
    dispatcher.forward(request,response);
}

private void showEditForm(HttpServletRequest request,ServletException,IOException {
    int id = Integer.parseInt(request.getParameter("id"));
    User existingUser = userDAO.selectUser(id);
    RequestDispatcher dispatcher = request.getRequestDispatcher("user-form.jsp");
    request.setAttribute("user",existingUser);
    dispatcher.forward(request,response);

}

private void insertUser(HttpServletRequest request,IOException {
    String name = request.getParameter("name");
    
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
    LocalDate date = LocalDate.parse(request.getParameter("date"),formatter);
    
    
    DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("HH:MM");
    LocalTime time = LocalTime.parse(request.getParameter("time"),formatter1);
    
    String email = request.getParameter("email");
    String country = request.getParameter("country");
    User newUser = new User(name,date,time,email,country);
    userDAO.insertUser(newUser);
    response.sendRedirect("user-list.jsp");
}

private void updateUser(HttpServletRequest request,IOException {
    int id = Integer.parseInt(request.getParameter("id"));
    String name = request.getParameter("name");
    
    
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
    LocalDate date = LocalDate.parse(request.getParameter("date"),formatter);
    
    DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("HH:MM");
    LocalTime time = LocalTime.parse(request.getParameter("time"),formatter1);
    
    String email = request.getParameter("email");
    String country = request.getParameter("country");

    User book = new User(id,name,country);
    userDAO.updateUser(book);
    response.sendRedirect("user-list.jsp");
}

private void deleteUser(HttpServletRequest request,IOException {
    int id = Integer.parseInt(request.getParameter("id"));
    userDAO.deleteUser(id);
    response.sendRedirect("user-list.jsp");

}

user-list.jsp:

 <%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
 <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>   


<html>

<head>
  <title>User Management Application</title>
  <link rel="stylesheet"
  href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
  integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T"
  crossorigin="anonymous">
  </head>
         
  <body>

  <sql:setDataSource var="snapshot" driver="com.mysql.cj.jdbc.Driver"
           url="jdbc:mysql://localhost:3306/dbname2?allowPublicKeyRetrieval=true&useSSL=false"
             user="root"  password="root"/>
 

    <header>
    <nav class="navbar navbar-expand-md navbar-dark"
        style="background-color: tomato">
        <div>
            <a href="" class="navbar-brand"> User
                Management App </a>
        </div>
     </nav>
</header>
    <br>

    <div class="row">


    <div class="container">
        <h3 class="text-center">List of Users</h3>
        <hr>
        <div class="container show-inline-block text-left">

            <a href="<%=request.getContextPath()%>/new" class="btn btn-success">Add
                New User</a>
            &nbsp;&nbsp;&nbsp;&nbsp;
            <a href="<%=request.getContextPath()%>/list" class="btn btn-success">List All
                Users</a>
                  
        </div>
        
        <div class="container show-inline-block text-right">
                <form action="user-list.jsp" method="post">
                    <input type = "text" class="form-group" name="search" value="${param.search}" placeholder="Name" style="width: 300px;" >
                      <input type ="submit" value="Search">
                  </form>
        </div>      
            
        <c:if test="${!empty param.search}">
        <sql:query var="user" dataSource="${snapshot}">
         select * from users where name like ? 
       <sql:param value="${param.search.toUpperCase()}" />
      </sql:query>
        </c:if>
        
        <c:if test="${empty param.search}">
        <sql:query var="user" dataSource="${snapshot}">
         select * from users
      </sql:query>
        </c:if>
        
        
        <table class="table table-bordered">
            <thead>
                <tr>
                    <th>ID</th>      
                    <th>Name</th>
                    <th>Date</th>
                    <th>Time</th>
                    <th>Email</th>
                    <th>Country</th>
                    <th>Actions</th>
                </tr>
            </thead>
            <tbody>

            <c:forEach var="listUser" items="${user.rows}">  

                    <tr>
                        <td><c:out value="${listUser.id}" /></td> 
                        <td><c:out value="${listUser.name}" /></td>
                        <td><c:out value="${listUser.date}" /></td>
                        <td><c:out value="${listUser.time}" /></td>
                        <td><c:out value="${listUser.email}" /></td>
                        <td><c:out value="${listUser.country}" /></td>
                        <td><a href="edit?id=<c:out value='${listUser.id}' />">Edit</a>
                            &nbsp;&nbsp;&nbsp;&nbsp; 
                            <a href="delete?id=<c:out value='${listUser.id}' />">Delete</a>
                        </td>
                    </tr>
                </c:forEach>
            </tbody>
        </table>
    </div>
</div>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...