(1)普通用户登录功能。
(2)普通用户注销功能。
(3)分类查看商品功能。
(4)查看商品详细功能。
(5)秒杀功能。
(6)竞拍功能。
(7)购物车功能。
(8)用户注册信息功能。
(9)购买功能。
(10)修改用户信息功能。 
(11)添加用户留言,删除用户留言,查看用户留言。
(12)管理员登录验证功能。
(13)管理员注销功能。

代码已经上传github,下载地址: https://github.com/21503882/school-used

基于B2C的网上拍卖系统_秒杀与竞价

基于B2C的网上拍卖系统_秒杀与竞价

基于B2C的网上拍卖系统_秒杀与竞价

基于B2C的网上拍卖系统_秒杀与竞价

基于B2C的网上拍卖系统_秒杀与竞价

基于B2C的网上拍卖系统_秒杀与竞价

 

 

列名    中文名称    数据类型    长度    允许空
Username    用户名    varchar    50    null
Password    用户密码    varchar    50    null
Sex    性别    Int    50    null
Email    邮箱    varchar    50    null
Admin    是否管理员    Int    50    null
Id    序号    Int        PK


列名    中文名称    数据类型    长度    允许空
Id    序号    Int    50    PK
Name    商品名    varchar    50    null
Img    商品图片    varchar    50    null
Content    商品简介    varchar    50    null
Price    价格    varchar    50    null
Sfcx    是否促销    Int    2    null
Newprice    促销价格    varchar    50    null
Sfms    是否秒杀    int    2    null
Msprice    秒杀价格    varchar    50    null
Msdate    秒杀开始时间    varchar    50    null
Mscount    秒杀数量    int    5    null
Sfjp    是否竞拍    int    2    null
Qpprice    起拍价    varchar    50    null
Jpprice    竞拍价    varchar    50    null
Jpperson    竞拍人    int    2    null
Jpdate    竞拍结束时间    varchar    50    null


Newprice    促销价格    varchar    50    null
Sfms    是否秒杀    int    2    null
Msprice    秒杀价格    varchar    50    null
Msdate    秒杀开始时间    varchar    50    null
Mscount    秒杀数量    int    5    null
Sfjp    是否竞拍    int    2    null
Qpprice    起拍价    varchar    50    null
Jpprice    竞拍价    varchar    50    null
Jpperson    竞拍人    int    2    null
Jpdate    竞拍结束时间    varchar    50    null

 


列名    中文名称    数据类型    长度    允许空
Name    用户名    varchar    50    null
Email    邮箱    varchar    50    null
message    留言内容    varchar    250    null
Id    留言序号    int    4    PK


  表1-2-2 商品表信息
列名    中文名称    数据类型    长度    允许空
Id    序号    Int    50    PK
Name    商品名    varchar    50    null
Img    商品图片    varchar    50    null
Content    商品简介    varchar    50    null
Price    价格    varchar    50    null
Sfcx    是否促销    Int    2    null
Newprice    促销价格    varchar    50    null
Sfms    是否秒杀    int    2    null
Msprice    秒杀价格    varchar    50    null
Msdate    秒杀开始时间    varchar    50    null
Mscount    秒杀数量    int    5    null
Sfjp    是否竞拍    int    2    null
Qpprice    起拍价    varchar    50    null
Jpprice    竞拍价    varchar    50    null
Jpperson    竞拍人    int    2    null
Jpdate    竞拍结束时间    varchar    50    null

                           表1-2-3 订单信息表
列名    中文名称    数据类型    长度    允许空
Id    序号    Int    10    PK
Proid    商品序号    Int    2    null
Count    购买数量    varchar    50    null
singleprice    单价    varchar    50    null
Price    价格    varchar    50    null
Userid    购买者序号    int    2    null
Sffk    是否付款    int    2    null
Tel    电话    varchar    50    null
address    地址    varchar    50    null
Date    购买日期    varchar    50    null
senddept    送货地址    varchar    50    null
visible    是否可见    int    2    null
 

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.nutz.dao.Dao;
import org.nutz.dao.Sqls;
import org.nutz.dao.pager.Pager;
import org.nutz.dao.sql.Sql;
import org.nutz.dao.sql.SqlCallback;

import cn.itbaizhan.common.Page;


/**
 * 基本服务
 * 
 * @author 
 *
 */
public class BaseService {

    protected Dao dao;

    public Dao getDao() {
        return dao;
    }

    public void setDao(Dao dao) {
        this.dao = dao;
    }

    /**
     * 执行Sql语句并返�?
     * 
     * @param sqlStr "SELECT name FROM t_abc WHERE name LIKE @name"
     * @param params
     */
    public void exec(String sqlStr,
            Map<String, Object> params) {
        Sql sql = Sqls.create(sqlStr);
        if(params!=null){
            Iterator<String> it = params.keySet().iterator();
            while(it.hasNext()){
                String key = it.next();
                sql.params().set(key, params.get(key));
            }
        }
        dao.execute(sql);
    }

    /**
     * 通过Sql直接查询得到HashMap<String,Object> 类型的列�?
     * 
     * @param strSql
     * @param params
     * @return
     */
    public List<Map> query(String strSql,
            Map<String, Object> params) {
        Sql sql = Sqls.create(strSql);
        if(params!=null){
            Iterator<String> it = params.keySet().iterator();
            while(it.hasNext()){
                String key = it.next();
                sql.params().set(key, params.get(key));
            }
        }
        sql.setCallback(new SqlCallback() {
            public Object invoke(Connection conn, ResultSet rs, Sql sql)
                    throws SQLException {
                List<Map<String, Object>> list = new LinkedList<Map<String, Object>>();
                Map<String,Object> map = null;
                ResultSetMetaData rsmd = rs.getMetaData();
                while (rs.next()){
                    map = new HashMap<String, Object>();
                    for(int i = 0;i<rsmd.getColumnCount();i++){
                        map.put(rsmd.getColumnName(i+1).toUpperCase(), rs.getObject(i+1));
                    }
                    list.add(map);
                }
                return list;
            }
        });
        dao.execute(sql);
        return sql.getList(Map.class);
    }
    
    /**
     * 得到总条�?
     * 
     * @param strSql �?��执行的sql语句
     * @param params �?��传�?的参�?
     * @return
     */
    public int count(String strSql,
            Map<String, Object> params) {
        Sql sql = Sqls.create(strSql);
        if(params!=null){
            Iterator<String> it = params.keySet().iterator();
            while(it.hasNext()){
                String key = it.next();
                sql.params().set(key, params.get(key));
            }
        }
        sql.setCallback(new SqlCallback() {
            public Object invoke(Connection conn, ResultSet rs, Sql sql)
                    throws SQLException {
                Integer result = 0;
                while (rs.next()){
                    result = rs.getInt(1);
                    break;
                }
                return result;
            }
        });
        dao.execute(sql);
        return sql.getInt();
    }
    
    /**
     * 根据sql语句和分页条件查询分�?
     * 
     * @param strSql
     * @param params
     * @param pager
     * @return
     */
    public Page queryPager(String strSql,
            Map<String, Object> params,Pager pager){
        String sql = "select * from ( "+strSql+" ) limit @startItem,@endItem ";
        String countSql = "select count(*) itemcount from ("+strSql+") ";
        if(null == params){
            params = new HashMap<String, Object>();
        }
        params.put("startItem", (pager.getPageNumber()-1)*pager.getPageSize());
        params.put("endItem", pager.getPageSize());
        List<Map> list = query(sql, params);
        int count = count(countSql,params);
        Page page = new Page(pager);
        page.setRecordCount(count);
        page.setList(list);
        return page;
    }

}
 

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE HTML>
<html>
<head>
<title>欢迎光临</title>
<!--CSS-->
<link rel="stylesheet" href="/sale/resources/css/styles.css" />
<!--Google Webfont -->
<link href='http://fonts.googleapis.com/css?family=Istok+Web' rel='stylesheet' type='text/css' />
<!--Javascript-->
<script type="text/javascript" src="/sale/resources/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="/sale/resources/js/jquery.flexslider.js"></script>
<script type="text/javascript" src="/sale/resources/js/jquery.easing.js"></script>
<script type="text/javascript" src="/sale/resources/js/jquery.jcarousel.js"></script>
<script type="text/javascript" src="/sale/resources/js/form_elements.js"></script>
<script type="text/javascript" src="/sale/resources/js/custom.js"></script>
<!--[if lt IE 9]>
    <script src="js/html5.js"></script>
<![endif]-->
<!-- mobile setting -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
    function detail(id){
        window.location.href = "/sale/index/toDetail?id="+id;
    }
    function cxdetail(id){
        window.location.href = "/sale/index/tocxDetail?id="+id;
    }
</script>
</head>
<body>
<c:if test="${msg!=null}">
    <script>
        alert("${msg}");
    </script>
</c:if>
<div class="wrapper">
    <jsp:include page="common/top.jsp" flush="true"/> 
    <div class="section_container">
        <!--Mid Section Starts-->
        <section>
            <!--Product List Starts-->
            <div class="products_list products_slider">
                <h2 class="sub_title">新品上市</h2>
                <ul id="first-carousel" class="first-and-second-carousel jcarousel-skin-tango">
                <c:forEach var="newproduct" items="${newlist}" varStatus="status">
                    <li> <a href="javascript:detail(${newproduct.id });" class="product_image"><img src="/sale/${newproduct.img}" style="width: 216px;height: 245px;"/></a>
                        <div class="product_info">
                            <h3><a href="javascript:detail(${newproduct.id });">${newproduct.name }</a></h3>
                            <small>${newproduct.content }</small> </div>
                        <div class="price_info"> <a href="javascript:addCart('${newproduct.id }','${newproduct.price }');">+ 加入收藏</a>
                            <button class="price_add" title="" type="button"><span class="pr_price">¥${newproduct.price }</span><span class="pr_add" οnclick="addCart('${newproduct.id }','${newproduct.price }');">加入购物车</span></button>
                        </div>
                    </li>
                </c:forEach>
                </ul>
            </div>
            <!--Product List Ends-->
            <!--Product List Starts-->
            <div class="products_list products_slider">
                <h2 class="sub_title">促销</h2>
                <ul id="first-carousel" class="first-and-second-carousel jcarousel-skin-tango">
                    <c:forEach var="cxproduct" items="${cxlist}" varStatus="status">
                    <li> <a href="javascript:cxdetail(${cxproduct.id });" class="product_image"><img src="/sale/${cxproduct.img}" style="width: 216px;height: 245px;"/></a>
                        <div class="product_info">
                            <h3><a href="javascript:cxdetail(${cxproduct.id });">${cxproduct.name }</a></h3>
                            <small>${cxproduct.content }</small> </div>
                        <div class="price_info"> <a href="javascript:addCart('${cxproduct.id }','${cxproduct.newprice }');">+ 加入收藏</a>
                            <button class="price_add" title="" type="button"><span class="pr_price">¥${cxproduct.newprice }</span><span class="pr_add" οnclick="addCart('${cxproduct.id }','${cxproduct.newprice }');">加入购物车</span></button>
                        </div>
                    </li>
                </c:forEach>
                </ul>
            </div>
            <!--Product List Ends-->
           
        </section>
        <!--Mid Section Ends-->
    </div>
    <jsp:include page="common/buttom.jsp" flush="true"/> 
</div>
</body>
</html>

相关文章: