首先要注意:mysql中的date在后端导入的包是
import java.sql.Date
别导入成了
import java.util.Date
然后
Date date= java.sql.Date.valueOf(request.getParameter("odate"));
用这个语句就可以转化成date类型了,附上servlet源码,JDBC是一个工具类
//DAO
package com.example.filmsystem.DAO;
import com.example.filmsystem.util.JDBC;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
public class BuyTicketDao {
private Connection con;
private PreparedStatement ps;
public void buyDao(int uid, String oseat,Date odate,String ostatus,int oprice,int hid){
try {
con = JDBC.getConnect();
String sql="insert into u_order(uid,oseat,odate,ostatus,oprice,hid) values (?,?,?,?,?,?)";
ps=con.prepareStatement(sql);
ps.setInt(1,uid); //用户id
ps.setString(2,oseat); //座位
ps.setDate(3,odate); //订单时间
ps.setString(4,ostatus); //订单状态,为待支付
ps.setInt(5,oprice); //电影票钱
ps.setInt(6,hid); //场次id
int num=ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}finally {
JDBC.UpdateClose(con,ps);
}
}
}
package com.example.filmsystem.FilmManage;
import com.example.filmsystem.DAO.BuyTicketDao;
import lombok.SneakyThrows;
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 java.io.IOException;
import java.io.Writer;
import java.text.SimpleDateFormat;
import java.sql.Date;
@WebServlet("/buyticket")
public class BuyTicketServlet extends HttpServlet {
@SneakyThrows
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应头允许ajax跨域访问
response.setHeader("Access-Control-Allow-Origin", "*");
// 星号表示所有的异域请求都可以接受
response.setHeader("Access-Control-Allow-Methods", "GET,POST");
response.setContentType("text/html");
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
Writer out = response.getWriter();
BuyTicketDao buyTicketDao = new BuyTicketDao();
int uid = Integer.parseInt(request.getParameter("uid"));
String oseat = request.getParameter("oseat");
Date odate= java.sql.Date.valueOf(request.getParameter("odate"));
String ostatus = request.getParameter("ostatus");
int oprice = Integer.parseInt(request.getParameter("oprice"));
int hid = Integer.parseInt(request.getParameter("hid"));
buyTicketDao.buyDao(uid,oseat,odate,ostatus,oprice,hid);
}
}
package com.example.filmsystem.util;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class JDBC {
public static Connection getConnect() throws Exception{
ComboPooledDataSource cp = new ComboPooledDataSource();
Properties properties = new Properties();
properties.load(new FileInputStream("D:\daimadaima\FilmSystem\src\main\resources\JDBC.properties"));
String Driver=properties.getProperty("Driver");
String url=properties.getProperty("url");
String user=properties.getProperty("user");
String password=properties.getProperty("password");
cp.setDriverClass(Driver);
cp.setJdbcUrl(url);
cp.setUser(user);
cp.setPassword(password);
cp.setInitialPoolSize(5);
cp.setMaxPoolSize(10);
Connection con=cp.getConnection();
return con;
}
public static void QueryClose(Connection con, PreparedStatement ps, ResultSet rs) {
if(rs !=null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(ps !=null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(con !=null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void UpdateClose(Connection con, PreparedStatement ps) {
if(ps !=null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(con !=null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}



