您好,欢迎来到梧忧教育。
搜索
您的当前位置:首页淘宝商城model部分_MySQL

淘宝商城model部分_MySQL

来源:梧忧教育


淘宝商城

model

/** * 功能:这是一个数据库连接,一个model类 */package com.xf.model;import java.sql.*;public class ConnDB{	private Connection ct=null;	public Connection getConn()	{	try	{	Class.forName("com.mysql.jdbc.Driver");	ct=DriverManager.getConnection("jdbc:mysql://localhost:3306/db3","root","");	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	return ct;	}}
/** * 功能:这是一个model类对应goods表 */package com.xf.model;public class GoodsBean{	private long goodsId;	//货物ID	private String goodsName;	//货物名称	private String goodsIntro;	//介绍	private float goodsPrice;	//价格	private int goodsNum;	//数量	private String publisher;	//发行商	private String photo="11.jpg";	//照片	private String type;	//类型	public long getGoodsId()	{	return goodsId;	}	public void setGoodsId(long goodsId)	{	this.goodsId = goodsId;	}	public String getGoodsName()	{	return goodsName;	}	public void setGoodsName(String goodsName)	{	this.goodsName = goodsName;	}	public String getGoodsIntro()	{	return goodsIntro;	}	public void setGoodsIntro(String goodsIntro)	{	this.goodsIntro = goodsIntro;	}	public float getGoodsPrice()	{	return goodsPrice;	}	public void setGoodsPrice(float goodsPrice)	{	this.goodsPrice = goodsPrice;	}	public int getGoodsNum()	{	return goodsNum;	}	public void setGoodsNum(int goodsNum)	{	this.goodsNum = goodsNum;	}	public String getPublisher()	{	return publisher;	}	public void setPublisher(String publisher)	{	this.publisher = publisher;	}	public String getPhoto()	{	return photo;	}	public void setPhoto(String photo)	{	this.photo = photo;	}	public String getType()	{	return type;	}	public void setType(String type)	{	this.type = type;	}	}
/** * 功能:也是一个model,业务逻辑,处理和goods表相关的业务逻辑 */package com.xf.model;import java.sql.*;import java.util.ArrayList;public class GoodsBeanBO{	//定义一些要用到的变量	private ResultSet rs=null;	private Connection ct=null;	private PreparedStatement ps;	public int getPageCount(int pageSize)	{	int pageCount=0;	//总页数	int rowCount=0;	//一共有多少条记录	try	{	//链接数据库	ct=new ConnDB().getConn();	//查询语句	String mysql="select count(*) from `goods`";	ps=ct.prepareStatement(mysql);	//全部记录放入	rs=ps.executeQuery();	if(rs.next())	//如果查找到了数据	{	rowCount=rs.getInt(1);	//得到个数	if(rowCount%pageSize != 0)	{	pageCount=rowCount/pageSize+1;	//得到结果四舍五入然后加一	}	else	{	pageCount=rowCount/pageSize;	//恰好整除,那么就直接得到结果	}	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	this.close();	}	return pageCount;	}	/**	 * 功能:得到分页数据,分页显示数据	 * @param pageSize 这个是每页面显示地个数	 * @author cutter_point	 * @param	pageNow	当前要显示地页面	 */	public ArrayList getGoodsByPage(int pageSize, int pageNow)	{	ArrayList a1=new ArrayList();	//这是要返回的数据	try	{	//得到链接	ct=new ConnDB().getConn();	//导入mysql语句	String mysql="select * from `goods` limit ?,?";	ps=ct.prepareStatement(mysql);	//吧?设置成想要变成的值	ps.setInt(1, pageSize*(pageNow-1));	ps.setInt(2, pageSize);	//执行查询,结果放入ResultSet中	rs=ps.executeQuery();	while(rs.next())	//只要取出一行数据,循环下去	{	GoodsBean gb=new GoodsBean();	//吧查找到的数据放入到gb中	gb.setGoodsId(rs.getInt(1));	gb.setGoodsName(rs.getString(2));	gb.setGoodsIntro(rs.getString(3));	gb.setGoodsPrice(rs.getFloat(4));	gb.setGoodsNum(rs.getInt(5));	gb.setPublisher(rs.getString(6));	gb.setPhoto(rs.getString(7));	gb.setType(rs.getString(8));	//吧goodsBean的数据放入到ArrayList里面去	a1.add(gb);	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	this.close();	}	return a1;	//吧ArrayList返回上去	}	//根据货物id,得到货物具体信息的函数	public GoodsBean getGoodsBean(String id)	{	GoodsBean gb=new GoodsBean();	try	{	//建立连接	ct=new ConnDB().getConn();	//存放连接数据库的脚本语句	String mysql="select * from `goods` where `goodsId`=?";	ps=ct.prepareStatement(mysql);	//吧id传给第一个?	ps.setString(1, id);	//吧查询到的数据给rs	rs=ps.executeQuery();	if(rs.next())	//只要查找到了数据	{	//吧查找到的数据放入到gb中	gb.setGoodsId(rs.getInt(1));	gb.setGoodsName(rs.getString(2));	gb.setGoodsIntro(rs.getString(3));	gb.setGoodsPrice(rs.getFloat(4));	gb.setGoodsNum(rs.getInt(5));	gb.setPublisher(rs.getString(6));	gb.setPhoto(rs.getString(7));	gb.setType(rs.getString(8));	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	//关闭资源	this.close();	}	return gb;	}	//关闭资源	public void close()	{	try	{	if(!rs.isClosed())	{	rs.close();	rs=null;	}	if(!ps.isClosed())	{	ps.close();	ps=null;	}	if(!ct.isClosed())	{	ct.close();	ct=null;	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	}	}
/** * 功能:这是一个BO(model),用来处理与购物相关的业务逻辑 * 时间:2014年7月9日14:29:30 * 作者:cutter_point */package com.xf.model;import java.sql.*;import java.util.*;public class MyCartBO{	//定义一个hashmap集合,用于存放书的ID和数量	HashMap hm=new HashMap();	//链接数据库的一些变量	private ResultSet rs=null;	private Connection ct=null;	private PreparedStatement ps=null;	private float allPrice=0.0f;	//得到这个商品的购买数量	public String getGoodsNumById(String goodsId)	{	return hm.get(goodsId);	}	//得到总价	public float getAllPrice()	{	return this.allPrice;	}	//1、添加货物	public void addGoods(String goodsId, String goodsNum)	{	hm.put(goodsId, goodsNum);	}	//2、删除货物	public void delGoods(String goodsId)	{	hm.remove(goodsId);	}	//3、清空货物	public void clear()	{	hm.clear();	}	//4、修改货物数量	public void upGoods(String goodsId, String newNum)	{	hm.put(goodsId, newNum);	}	//5、显示购物车	public ArrayList showMyCart()	{	ArrayList a1=new ArrayList();	try	{	String mysql="select * from `goods` where `goodsId` in ";//(1,4)	//使用迭代器重hm中取出id	Iterator it=hm.keySet().iterator();	String sub="(";	while(it.hasNext())	//迭代取出数据	{	//取出goodsId	String goodsId=(String)it.next();	//判断是不是最后一个id	if(it.hasNext())	{	sub+=goodsId+", ";	}	else	{	sub+=goodsId+")";	}	}	mysql+=sub;	//链接数据库进行mysql语句使用	ct=new ConnDB().getConn();	//然后声明要使用MySQL语句了	ps=ct.prepareStatement(mysql);	//得到语句执行结果	rs=ps.executeQuery();	//总价清空	this.allPrice=0.0f;	while(rs.next())	{	GoodsBean gb=new GoodsBean();	//吧查找到的数据放入到gb中	int goodsId=rs.getInt(1);	gb.setGoodsId(goodsId);	gb.setGoodsName(rs.getString(2));	gb.setGoodsIntro(rs.getString(3));	float unit=rs.getFloat(4);	gb.setGoodsPrice(unit);	gb.setGoodsNum(rs.getInt(5));	gb.setPublisher(rs.getString(6));	gb.setPhoto(rs.getString(7));	gb.setType(rs.getString(8));	this.allPrice+=unit*Integer.parseInt(this.getGoodsNumById(goodsId+""));	//吧goodsBean的数据放入到ArrayList里面去	a1.add(gb);	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	this.close();	}	return a1;	}	//关闭资源	public void close()	{	try	{	if(!rs.isClosed())	{	rs.close();	rs=null;	}	if(!ps.isClosed())	{	ps.close();	ps=null;	}	if(!ct.isClosed())	{	ct.close();	ct=null;	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	}}
/** * 这是一个model和order表对应 */package com.xf.model;import java.util.Date;public class OrderBean{	private long ordersId;	// '订单号' ,	private long userId;	// '那个用户订的' ,	private Date orderDate;	// '订单下的时期' ,	private String payMode;	// '付款方式' ,	private byte	isPayed;	//'0表示没有付款,1表示已经付款' ,	private float	totalPrice; //'总价格' ,	public long getOrdersId()	{	return ordersId;	}	public void setOrdersId(long ordersId)	{	this.ordersId = ordersId;	}	public long getUserId()	{	return userId;	}	public void setUserId(long userId)	{	this.userId = userId;	}	public Date getOrderDate()	{	return orderDate;	}	public void setOrderDate(Date orderDate)	{	this.orderDate = orderDate;	}	public String getPayMode()	{	return payMode;	}	public void setPayMode(String payMode)	{	this.payMode = payMode;	}	public byte getIsPayed()	{	return isPayed;	}	public void setIsPayed(byte isPayed)	{	this.isPayed = isPayed;	}	public float getTotalPrice()	{	return totalPrice;	}	public void setTotalPrice(float totalPrice)	{	this.totalPrice = totalPrice;	}	}
//这是一个model,对order,orderDetail的处理package com.xf.model;import java.sql.*;import java.util.*;public class OrderBeanBO{	//定义数据库相关变量	private	ResultSet	rs=null;	private Connection	ct=null;	private PreparedStatement	ps=null;	/**	 * 生成订单	 * @param mbo 用户的购物车	 * @param userId	用户ID	 * @return	返回一个订单详细信息bean【OderInfoBean】	 */	public OrderInfoBean addOrder(MyCartBO mcbo, String userId)	{	OrderInfoBean	oifb=new	OrderInfoBean();	boolean b=true;	try	{	//得到链接	ct=new ConnDB().getConn();	//带入MySQL代码	String mysql="insert	into	`orders`	(`userId`,	`isPayed`,	`totalPrice`) values(?,?,?)";	ps=ct.prepareStatement(mysql);	ps.setString(1, userId);	ps.setByte(2, (byte)0);	ps.setFloat(3, mcbo.getAllPrice());	//执行	int a=ps.executeUpdate();	if(a == 1)	{	//还得取出刚刚添加到orders表的订单号	//取出最后那条就是了	ps=ct.prepareStatement("select	max(`ordersId`) from	`orders`");	rs=ps.executeQuery();	int orderId=0;	if(rs.next())	{	orderId=rs.getInt(1);	}	//orders表天机成功	//添加ordersDetail表	//从购物车中取出所有选购的货物	ArrayList a1=mcbo.showMyCart();	//循环添加到orderDetail中	//使用批量执行操作数据库	Statement sm=ct.createStatement();	for(int i=0 ; i != a1.size() ; ++i)	{	GoodsBean gb=(GoodsBean)a1.get(i);	String mysql2="insert	into	`orderDetail`	 values("+orderId+",	"+gb.getGoodsId()+",	"+mcbo.getGoodsNumById(gb.getGoodsId()+"")+")";	sm.addBatch(mysql2);	}	//批量执行	sm.executeBatch();	//顺带把要显示的订单细节	String mysql3="select	`ordersId`,	`truename`,	`address`,	`postcode`,	`phone`,	`totalPrice`,	`username`,	`email` from " +	"	`users`,	`orders` where	`ordersId`=?	and	`users`.userid= (	select	`orders`.userId	from " +	"	`orders`	where	`ordersId`=?	)";	//执行语句	ps=ct.prepareStatement(mysql3);	ps.setInt(1, orderId);	ps.setInt(2, orderId);	rs=ps.executeQuery();	if(rs.next())	{	//将rs封装到OrderInfoBean	oifb.setOrdersId(rs.getInt(1));	oifb.setTruename(rs.getString(2));	oifb.setAddress(rs.getString(3));	oifb.setPostcode(rs.getString(4));	oifb.setPhone(rs.getString(5));	oifb.setTotalPrice(rs.getFloat(6));	oifb.setUsername(rs.getString(7));	oifb.setEmail(rs.getString(8));	}	}	} 	catch (Exception e)	{	// TODO: handle exception	b=false;	e.printStackTrace();	}	finally	{	this.close();	}	if(b)	{	return oifb;	}	else	{	return null;	}	}	//关闭资源	public void close()	{	try	{	if(!rs.isClosed())	{	rs.close();	rs=null;	}	if(!ps.isClosed())	{	ps.close();	ps=null;	}	if(!ct.isClosed())	{	ct.close();	ct=null;	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	}	}
package com.xf.model;public class OrderDetailBean{	private	long	orderIid;	private	long	goodsId;	private int	nums;	public long getOrderIid()	{	return orderIid;	}	public void setOrderIid(long orderIid)	{	this.orderIid = orderIid;	}	public long getGoodsId()	{	return goodsId;	}	public void setGoodsId(long goodsId)	{	this.goodsId = goodsId;	}	public int getNums()	{	return nums;	}	public void setNums(int nums)	{	this.nums = nums;	}	}
/** * 信息最全的bean */package com.xf.model;import java.util.Date;public class OrderInfoBean{	private long userid;	// '用户id',	private String username;	// '用户名',	private String truename;	// '真实姓名',	private String passwd;	// '密码',	private String email;	// '电子邮件',	private String phone;	// '电话号码',	private String address;	// '用户地址',	private String postcode;	// '编邮',	private int 	 grade=1;	// '户用级别',	private long ordersId;	// '订单号' ,	private long userId;	// '那个用户订的' ,	private Date orderDate;	// '订单下的时期' ,	private String payMode;	// '付款方式' ,	private byte	isPayed;	//'0表示没有付款,1表示已经付款' ,	private float	totalPrice; //'总价格' ,	public long getUserid()	{	return userid;	}	public void setUserid(long userid)	{	this.userid = userid;	}	public String getUsername()	{	return username;	}	public void setUsername(String username)	{	this.username = username;	}	public String getTruename()	{	return truename;	}	public void setTruename(String truename)	{	this.truename = truename;	}	public String getPasswd()	{	return passwd;	}	public void setPasswd(String passwd)	{	this.passwd = passwd;	}	public String getEmail()	{	return email;	}	public void setEmail(String email)	{	this.email = email;	}	public String getPhone()	{	return phone;	}	public void setPhone(String phone)	{	this.phone = phone;	}	public String getAddress()	{	return address;	}	public void setAddress(String address)	{	this.address = address;	}	public String getPostcode()	{	return postcode;	}	public void setPostcode(String postcode)	{	this.postcode = postcode;	}	public int getGrade()	{	return grade;	}	public void setGrade(int grade)	{	this.grade = grade;	}	public long getOrdersId()	{	return ordersId;	}	public void setOrdersId(long ordersId)	{	this.ordersId = ordersId;	}	public long getUserId()	{	return userId;	}	public void setUserId(long userId)	{	this.userId = userId;	}	public Date getOrderDate()	{	return orderDate;	}	public void setOrderDate(Date orderDate)	{	this.orderDate = orderDate;	}	public String getPayMode()	{	return payMode;	}	public void setPayMode(String payMode)	{	this.payMode = payMode;	}	public byte getIsPayed()	{	return isPayed;	}	public void setIsPayed(byte isPayed)	{	this.isPayed = isPayed;	}	public float getTotalPrice()	{	return totalPrice;	}	public void setTotalPrice(float totalPrice)	{	this.totalPrice = totalPrice;	}	}
package com.xf.model;public class UsersBean{	private long userid;	// '用户id',	private String username;	// '用户名',	private String truename;	// '真实姓名',	private String passwd;	// '密码',	private String email;	// '电子邮件',	private String phone;	// '电话号码',	private String address;	// '用户地址',	private String postcode;	// '编邮',	private int 	 grade=1;	// '户用级别',	public long getUserid()	{	return userid;	}	public void setUserid(long userid)	{	this.userid = userid;	}	public String getUsername()	{	return username;	}	public void setUsername(String username)	{	this.username = username;	}	public String getTruename()	{	return truename;	}	public void setTruename(String truename)	{	this.truename = truename;	}	public String getPasswd()	{	return passwd;	}	public void setPasswd(String passwd)	{	this.passwd = passwd;	}	public String getEmail()	{	return email;	}	public void setEmail(String email)	{	this.email = email;	}	public String getPhone()	{	return phone;	}	public void setPhone(String phone)	{	this.phone = phone;	}	public String getAddress()	{	return address;	}	public void setAddress(String address)	{	this.address = address;	}	public String getPostcode()	{	return postcode;	}	public void setPostcode(String postcode)	{	this.postcode = postcode;	}	public int getGrade()	{	return grade;	}	public void setGrade(int grade)	{	this.grade = grade;	}}
/** * 功能:处理有关users表的逻辑业务 * 时间:2014年7月10日15:22:10 * 作者:cutter_point */package com.xf.model;import java.sql.*;import com.xf.model.*;public class UsersBeanBo{	//连接数据库的一些变量	private Connection ct=null;	private ResultSet rs=null;	private PreparedStatement ps=null;	/**	 * 更具用户名返回用户的全部信息	 * @param u	 * @return UsersBean	 */	public UsersBean getUserBean(String u)	{	UsersBean ub=new UsersBean();	try	{	//连接	ct=new ConnDB().getConn();	//导入MySQL语句	String mysql="select * from `users` where username=? limit 0,1";	ps=ct.prepareStatement(mysql);	ps.setString(1, u);	//执行语句	rs=ps.executeQuery();	if(rs.next())	{	ub.setUserid(rs.getLong(1));	ub.setUsername(rs.getString(2));	ub.setTruename(rs.getString(3));	ub.setPasswd(rs.getString(4));	ub.setEmail(rs.getString(5));	ub.setPhone(rs.getString(6));	ub.setAddress(rs.getString(7));	ub.setPostcode(rs.getString(8));	ub.setGrade(rs.getInt(9));	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	this.close();	}	return ub;	}	/**	 * @author xiaofeng	 * @param u 账号	 * @param p 密码	 */	public boolean checkUser(String u, String p)	{	boolean b=false;	try	{	//连接数据库	String mysql="select `passwd` from `users` where `username`=?";	//建立连接	ct=new ConnDB().getConn();	//导入语句	ps=ct.prepareStatement(mysql);	ps.setString(1, u);	//执行语句	rs=ps.executeQuery();	if(rs.next())	{	//取出数据库密码和p比较	String dbPasswd=rs.getString(1);	if(dbPasswd.equals(p))	{	b=true;	}	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	finally	{	this.close();	}	return b;	}	/**	 * @author xiaofeng	 * @param 关闭资源	 */	public void close()	{	try	{	if(!rs.isClosed())	{	rs.close();	rs=null;	}	if(!ps.isClosed())	{	ps.close();	ps=null;	}	if(!ct.isClosed())	{	ct.close();	ct=null;	}	} 	catch (Exception e)	{	// TODO: handle exception	e.printStackTrace();	}	}	}

Copyright © 2019- wycttc.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务