📄 orderbean.java
字号:
/*
* @(#)OrderBean.java 1.0 06/03/03
*
* Copyright 2006 林刘炜
*/
package beans;
import java.sql.*;
import java.util.*;
import java.text.*;
/**
* 该Bean封装了定单信息的全部操作
* 使用DBOperation Bean连接数据库
*
* @version 1.0
* @author 林刘炜
*/
public class OrderBean{
private String orderID = null; //定单ID
private String memberID = null; //会员ID
private String receiverName = null; //接收者姓名
private String receiverAddress = null;//接收者地址
private String receiverZip = null; //接收者邮编
private String orderRemark = null; //定单备注
private String orderPrice = null; //定单价格
private String fromDate = null; //来定单日期
private String toDate = null; //送定单日期
private String deliver = null; //定单是否送出
/**
* 该Bean的构造方法
*/
public OrderBean(){
}
/**
* 返回订单ID
*
* @return String
*/
public String getOrderID(){
return orderID;
}
/**
* 返回订单ID
*
* @return String
*/
public String getMemberID(){
return memberID;
}
/**
* 返回接收者姓名
*
* @return String
*/
public String getReceiverName(){
return receiverName;
}
/**
* 返回接收者地址
*
* @return String
*/
public String getReceiverAddress(){
return receiverAddress;
}
/**
* 返回接收者邮编
*
* @return String
*/
public String getReceiverZip(){
return receiverZip;
}
/**
* 返回订单备注信息
*
* @return String
*/
public String getOrderRemark(){
return orderRemark;
}
/**
* 返回订单总金额
*
* @return String
*/
public String getOrderPrice(){
return orderPrice;
}
/**
* 返回订单订购时间
*
* @return String
*/
public String getFromDate(){
return fromDate;
}
/**
* 返回订单送出时间
*
* @return String
*/
public String getToDate(){
return toDate;
}
/**
* 返回订单是否送出
*
* @return String
*/
public String getDeliver(){
return deliver;
}
/**
* 设置订购此订单的会员ID
*
* @prame memberID
*/
public void setMemberID(String memberID){
this.memberID = memberID;
}
/**
* 设置接收人的姓名
*
* @prame receiverName
*/
public void setReceiverName(String receiverName){
this.receiverName = receiverName;
}
/**
* 设置接收人的地址
*
* @prame receiverAddress
*/
public void setReceiverAddress(String receiverAddress){
this.receiverAddress = receiverAddress;
}
/**
* 设置接收人的邮编
*
* @prame receiverZip
*/
public void setReceiverZip(String receiverZip){
this.receiverZip = receiverZip;
}
/**
* 设置订单的备注
*
* @prame orderRemark
*/
public void setOrderRemark(String orderRemark){
this.orderRemark = orderRemark;
}
/**
* 设置订单的总价格
*
* @prame orderPrice
*/
public void setOrderPrice(String orderPrice){
this.orderPrice = orderPrice;
}
/**
* 设置订单订购的时间
*
* @prame fromDate
*/
public void setFromDate(String fromDate){
this.fromDate = fromDate;
}
/**
* 设置订单送出的时间
*
* @prame toDate
*/
public void setToDate(String toDate){
this.toDate = toDate;
}
/**
* 书籍已经送出该标记等于"是"
* 还未送出等于"否"
*
* @prame deliver
*/
public void setDeliver(String deliver){
this.deliver = deliver;
}
/**
* 把订购书籍的详细信息写入数据库的orderDetail表
* 注:orderDetail表是定单所订购书籍的详细信息,定单的基本信息在orderInfo表中
* 并调用createNewOrder()方法,在orderInfo表新建一张定单
*
* @param bookinfo订购书籍的详细信息
* @return boolean返回值为trun则表示订购成功,
* @see #createNewOrder
*/
public boolean createNewOrderDetail(String bookinfo){
createNewOrderInfo();//注:首先在订单基本信息表建一条新的信息
int fromIndex = 0;//提取书籍信息字符串用的索引标记
int tempIndex = 0;
int tempEnd= 0;
DBOperation database = new DBOperation();
try{
String SQL = "insert into orderDetail(orderID,bookISBN,bookCount)values(?,?,?)";
PreparedStatement preparedStatement = database.getPreparedStatement(SQL);
while( bookinfo.indexOf(';',fromIndex) != -1 ){
//从指定的索引开始搜索,返回在此字符串中第一次出现指定字符处的索引
tempEnd = bookinfo.indexOf(';',fromIndex);
//取得从指定的tempEnd索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符的索引
tempIndex = bookinfo.lastIndexOf('=',tempEnd);
preparedStatement.setString(1,orderID);
preparedStatement.setString(2,bookinfo.substring(fromIndex,tempIndex));
preparedStatement.setString(3,bookinfo.substring(tempIndex + 1,tempEnd));
preparedStatement.executeUpdate();
fromIndex = tempEnd + 1;
}
if( Integer.parseInt(orderID) > 0 ){ //订单ID大于0则表示订购成功
return true;
}
}catch(java.sql.SQLException e){
System.out.println ("错误2:"+e.getMessage());
}finally{
try{
database.closeDatabase();
}catch(java.sql.SQLException e){
e.printStackTrace();
}
}
return false;
}
/**
* 该方法在orderInfo表新建一条定单的基本信息
*
* @see #createNewOrderDetail
*/
public void createNewOrderInfo(){
DBOperation database = new DBOperation();
try{
String SQL = "insert into orderInfo(memberID,receiverName,receiverAddress,"
+ "receiverZip,orderRemark,orderPrice,fromDate)"
+ "values('"+memberID+"','"+receiverName+"','"+receiverAddress+"',"
+ "'"+receiverZip+"','"+orderRemark+"','"+orderPrice+"','"+fromDate+"')";
database.executeSQL(SQL);
SQL = null;
SQL = "select max(orderID) from orderInfo where memberID = '"+memberID+"'";
ResultSet resultSet = database.executeSQL(SQL);
if( resultSet.next() ){
orderID = resultSet.getString(1);
}
}catch(java.sql.SQLException e){
System.out.println ("错误1:"+e.getMessage());
}finally{
try{
database.closeDatabase();
}catch(java.sql.SQLException e){
e.printStackTrace();
}
}
}
/**
* 该方法是一个类方法,它获得当前的时间,
* 格式化后,生成字符串返回
*
* @return String
*/
public static String getNowTime(){
return DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
}
/**
* main方法把该Bean做为一个application测试
*/
public static void main(String[] args){
OrderBean orderBean = new OrderBean();
orderBean.setMemberID("111");
orderBean.setReceiverName("林刘炜");
orderBean.setReceiverAddress("宁波天一广场");
orderBean.setReceiverZip("353100");
orderBean.setOrderRemark("两天之内要给我送到");
orderBean.setOrderPrice("500");
orderBean.setFromDate("2006/3/7");
orderBean.createNewOrderDetail("1=2;2=4;4=5;6=5;3=4;");
System.out.println ("当前时间:"+OrderBean.getNowTime());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -