淘宝商城model部分

淘宝商城

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<String, String> hm=new HashMap<String, String>();
	//链接数据库的一些变量
	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<GoodsBean> showMyCart()
	{
		ArrayList<GoodsBean> a1=new ArrayList<GoodsBean>();

		try
		{
			String mysql="select * from `goods` where `goodsId` in ";//(1,4)

			//使用迭代器重hm中取出id
			Iterator<String> 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<GoodsBean> 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();
		}
	}

}

淘宝商城model部分

时间: 2024-07-29 10:27:24

淘宝商城model部分的相关文章

淘宝商城servlet部分

package com.xf.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.*; import com.xf.model.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; imp

淘宝商城jsp部分

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getS

淘宝商城servlet的路径web.xml部分

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.s

淘宝技术发展

转载 http://blog.csdn.net/kobejayandy/article/details/8685271 目录 一.引言 二.个人网站 三.Oracle/支付宝/旺旺 四.淘宝技术发展(Java时代:脱胎换骨) 五.淘宝技术发展(Java时代:坚若磐石) 六.淘宝技术发展(Java时代:创造技术-TFS) 七.淘宝技术发展(分布式时代:服务化) 作者:赵超 一.引言 光棍节的狂欢 “时间到,开抢!”坐在电脑前早已等待多时的小美一看时间已到 2011 年 11 月 11 日零时,便迫

什么事应该问百度,什么事应该问淘宝

这篇文章,准备跟大家分享一下我做网络几年来,在学习方法方面总结的一些心得,一共20点,主要侧重新手如何才能更高效的学习. 1.每天有固定的学习时间.半小时也好,一小时更好,学习是一个慢慢积累的过程,再牛逼的人物也是靠一点一滴积累起来的. 2.不要只阅读网络文章和电子书,要多看实体书.书没有保质期,少读新书和畅销书(除非你想学习如何写畅销书),多看经典.经典之所以能成为经典,是因为经受住了时间的考验. 3.别急躁.做网络不像在工地扛水泥,有把子力气就能赚到现钱.什么都不懂就想有个项目马上操作,马上

淘宝网的发展史及其优缺点

淘宝网的发展史: 2003年5月10日,淘宝网诞生于浙江杭州的湖畔花园,截至当年7月4日(淘宝被阿里巴巴收购以前4天),网站拥有会员1.7万,上网商品6.2万件,日平均网页浏览量达到30万,日平均访问人次有2.5万,日新增商品达2000多件. 淘宝的初现: 淘宝的人民网2003年7月7日报,在易趣eBay 1.5亿美元增资易趣股份之后,阿里巴巴最近将有所动作,将在近期收购某C2C网站,记者从阿里巴巴内部了解到,马云这次做为投资人,投资的企业正是淘宝网.现在看来当时马云的决定是多么正确. 淘宝网遭

生活娱乐 反淘宝联盟是怎么回事

反淘宝联盟 百科名片 反淘宝联盟 反淘宝联盟,是网络购物者成立的一个组织,这些网购者的目标是反对淘宝网购的一些欺诈.不诚信行为,后来由于淘宝商城出了针对小卖家的新规,这些小卖家又加入反淘宝联盟的行列,维护自己的利益.2011年10月12日,淘宝"暴动"升级,小卖家在淘宝总部拉横幅. 信息简介 反淘宝联盟的成立是因为有客户在淘宝上买到不合格产品, 淘宝网 在敢死联盟平台的组织要求退款时对淘宝的处理不满意而开始的.反淘宝联盟直击淘宝软肋,价廉的同时伴随而来的是商品的质量问题,尽管淘宝有各种

【转载】淘宝架构框架发展史

转自 http://www.361way.com/taobao-architecture/1948.html      一.个人网站  2003 年 4 月 7 日,马云,在杭州,成立了一个神秘的组织.他叫来十位员工,要他们签了一份协议,这份协议要求他们立刻离开阿里巴巴,去做一个神秘的项目.这个项目要求绝对保密,老马戏称“连说梦话被老婆听到都不行,谁要是透漏出去,我将追杀到天涯海角”.这份协议是英文版的,匆忙之间,大多数人根本来不及看懂,但出于对老马的信任,都卷起铺盖离开了阿里巴巴. 他们去了一

淘宝小号交易平台常熟淘宝培训 常熟哪里有淘宝网店培训班 学习专业的淘宝知识 像南方教育看齐

公司地址:常熟市招商北路8号天虹服装城a栋705(汽车南站旁) 现在很多新手都疑惑怎么开淘宝店,而且如今淘宝竞争如此之大,如果我此时才进入淘宝大军,还能有市场,还能有机会吗?目前淘宝店铺达到600多万家,要怎么做才能创出一条路呢? 4.1 在线沟通工具 4.3 店铺管理工具 7.2 货物打包 7.3 物流配送 第4章 网店工具的运用 公司地址:常熟市招商北路8号天虹服装城a栋705(汽车南站旁) 7.1 仓储管理 4.4 店内营销工具 8.5 商城日常管理 8.3 商家平台规则 3.2 商品发布