You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hotel_service_system/OrderDaolmp.java

159 lines
4.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package jpestore.dao.mysql;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import jpestore.dao.OrderDao;
import jpestore.domain.Order;
import jpestore.domain.Product;
public class OrderDaolmp implements OrderDao {
@Override
public List<Order> findAll() {
String sql = "select orderid,userid,orderdate, from orders";
List<Order>list = new ArrayList<Order>();
try(
Connection conn = null;
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery()){
{
while(rs.next()) {
Order order = new Order();
order.setOrderid(rs.getLong("orderid"));
order.setOrderdate(rs.getDate("orderdate"));
order.setUserid(rs.getString("userid"));
list.add(order);
}
} }catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
return list ;
}
@Override
public Order findBYID(String id) {
// TODO Auto-generated method stub
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
// 2.创建数据库连接
conn = DBHelper.getConnection(); //1.加载驱动程序
String sql = "select orderid,userid,orderdate,status,amount from account where orderid = ?";
// 3.创建语句对象
pstmt = conn.prepareStatement(sql);
// 4.绑定参数
pstmt.setString(1, id);
// 5.执行查询
rs = pstmt.executeQuery();
// 6.遍历结果集
if (rs.next()) {
Order order = new Order();
order.setOrderid(rs.getLong("orderid"));
order.setUserid(rs.getString("userid"));
order.setOrderdate(rs.getDate("orderdate"));
return order;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
DBHelper.close(rs, pstmt, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
@Override
public int create(Order order) {
String sql = "insert into orders (orderid,userid,orderdate,status,amount)values (?,?,?,?,?)";
List<Product>list = new ArrayList<Product>();
try(
Connection conn = DBHelper.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql);
){pstmt.setLong(1, order.getOrderid());
pstmt.setString(2, order.getUserid());
java.util.Date now = new java.util.Date();
java.sql.Date date = new java.sql.Date(now.getTime());
java.sql.Timestamp date1 = new java.sql.Timestamp(now.getTime());
pstmt.setTimestamp(3,date1);
pstmt.setInt(4, order.getStatus());
pstmt.setDouble(4, order.getStatus());
pstmt.setDouble(5, order.getAmout());
int a = pstmt.executeUpdate();
System.out.printf("成功输入%d数据.\n",a);
}catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
return 0;
}
@Override
public int modify(Order order) {
// TODO Auto-generated method stub
String sql = "update orders set amount = ? where orderid = ?";
try ( // 2.创建数据库连接
Connection conn = DBHelper.getConnection();
// 3. 创建语句对象
PreparedStatement pstmt= conn.prepareStatement(sql)
) {
// 4. 绑定参数
pstmt.setDouble(1, order.getAmout());
pstmt.setLong(2, order.getOrderid());
// 5. 执行修改C、U、D
int affectedRows = pstmt.executeUpdate();
System.out.printf("成功更新%d条数据。\n", affectedRows);
} catch (SQLException e) {
e.printStackTrace();
}
return 0;
}
@Override
public int remove(Order order) {
String sql = "delete from orders where orderid = ?";
try ( // 2.创建数据库连接
Connection conn = DBHelper.getConnection();
// 3. 创建语句对象
PreparedStatement pstmt = conn.prepareStatement(sql)) {
// 4. 绑定参
pstmt.setLong(1, order.getOrderid());
// 5. 执行修改C、U、D
int affectedRows = pstmt.executeUpdate();
System.out.printf("成功删除%d条数据。\n", affectedRows);
} catch (SQLException e) {
e.printStackTrace();
}
return 0;
}
}