我在格式化日期时遇到问题。 在我的addstudent.jsp文件中,我要求用户ti输入他们的出生日期。我正在使用input type =“text”。添加输入的格式是dd-mm-yyyy。现在,我必须以yyyy-mm-dd格式将日期以yyyy-mm-dd格式存储为mysql存储。 我在addprocess.jsp文件中做了这个。但是我不明白的东西是错误的。当我将08-05-2009作为输入时,我将2009-01-08 作为输出存储在mysql数据库中。我究竟做错了什么? 这是我的addstudent.jsp文件。无法正确格式化日期
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Adding Student</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
function validateform(){
var errorString="";
var name=document.myform.name.value;
var email=document.myform.email.value;
var parentemail=document.myform.parentemail.value;
if (name==null || name=="" || !(/^[A-Za-z\s]+$/.test(name))){
document.getElementById("error").innerHTML=errorString+"Name can have only alphabets and spaces";
return false;
}
function validateEmail(email){
var re = /^(([^<>()\[\]\\.,;:\[email protected]"]+(\.[^<>()\[\]\\.,;:\[email protected]"]+)*)| (".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
if(!validateEmail(email)){
document.getElementById("error").innerHTML=errorString+" Your email is not valid";
return false;
}
if(!validateEmail(parentemail)){
document.getElementById("error").innerHTML=errorString+" Your parent's email is not valid";
return false;
}
}
</script>
</head>
<body>
<div id="outer">
<%@include file="header.jsp" %>
<%@ page import="java.util.*"%>
<%@ page import="java.util.regex.*"%>
<%@page import="java.sql.*"%>
<div id="error"></div>
<div id="main">
<div id="box">
<form name="myform" method="post" action="addprocess.jsp" onsubmit="return validateform();">
<table>
<tr><td style="color:navy;"><B> Login Form</B></td> </tr>
<tr><td><br></td></tr>
<tr><td>User Name:</td><td><input type="text" name="name" placeholder="Enter your name"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Email Id:</td><td><input type="text" name="email" placeholder="Enter Email ID"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Parent Email Id:</td><td><input type="text" name="parentemail" placeholder="Enter Parent's Email ID"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Date Of Birth:</td><td><input type="text" name="dateofbirth" placeholder="dd-mm-yyyy"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Address:</td><td><input type="text" name="address" placeholder="Enter your address"/></td></tr>
<tr><td><br></td></tr>
<tr><td> </td><td><input type="submit" value="Sign in"></td></tr>
</table>
</form>
<br>
</div>
</div>
</div>
</body>
</html>
这是addprocess.jsp文件提前
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<%@ page import="java.util.*"%>
<%@ page import="java.util.regex.*"%>
<%@page import="java.sql.*"%>
<%@page import="java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.text.DateFormat"%>
<%@page import="java.util.Date"%>
%>
<%
String name=request.getParameter("name");
String email=request.getParameter("email");
String parentemail=request.getParameter("parentemail");
SimpleDateFormat format = new SimpleDateFormat("dd-mm-yyyy");
java.util.Date util_Date = format.parse( request.getParameter("dateofbirth"));
java.sql.Date dateOfBirth = new java.sql.Date(util_Date.getTime());
System.out.println(dateOfBirth);
String address=request.getParameter("address");
%>
</body>
</html>
感谢。
如何在Java中的数据库中存储日期的主题上的许多其他问题没有解决您的问题?请解释你的问题如何不同和新颖。 –
@BasilBourque我偶然发现有人说使用“mm”。我找不到明确的解释。 – user6153087
这个类的文档是怎么说的?其他问答中的数百个示例显示了什么? –