请求响应的业务逻辑(商城一)

业务逻辑五步走
A、浏览器如何发送请求:
浏览器的地址栏(get)
a标签(get)
form标签(get/post)
Ajax(get/post)
js的window.location.href=“url”(get)
B、请求是否需要参数
C、请求发送到jsp还是servlet
D、如果到servlet接下来是 请求转发还是URL重定向 响应ajax
E、请求转发/重定向 是到jsp还是servlet
一、浏览器访问商城首页
A、浏览器地址栏访问
B、无需传参
C、到servlet
D、请求转发
E、到index.jsp商城首页

@WebServlet("/home")
public class HomeServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        /**
         * 无参  调用dao获取数据库所有商品
         * */
        IproductDAO productDAO = new ProductDAOImpl();
        List<Map<String, Object>> allProduct = productDAO.listProducts();
        /**
         * 共享请求参数
         * */
        req.setAttribute("allproduct",allProduct);
        /**
         * 请求转发到商城首页
         * */
        req.getRequestDispatcher("/views/index.jsp").forward(req,resp);
    }
}

商品接口

public interface IproductDAO {
    /**
     * 查询所有商品展示到首页
     * */
    List<Map<String,Object>> listProducts();

实现类

public class ProductDAOImpl implements IproductDAO {

    @Override
    public List<Map<String, Object>> listProducts() {
        /**
         * 获取所有商品
         * */
        String sql="select * from product";
        return DBUtil.executequery(sql);
    }

商城首页

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"+"views/";
%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c"%>

<!DOCTYPE HTML>
<html>
  <head>
        <base href="<%=basePath%>">
     	<link rel="icon" href="img/icon.png" type="image/x-icon">
		<link rel="stylesheet" type="text/css" href="css/base-aa24246264.css"/>
		<link rel="stylesheet" type="text/css" href="css/welcome-fc9359d842.css"/>
		<link rel="stylesheet" type="text/css" href="css/sidebar.css"/>
		<link rel="stylesheet" type="text/css" href="css/content.css"/>
		<title>贵美·商城</title>

  </head>
  
  <body>
        <!-- 头部导航 -->
		<jsp:include page="/views/header.jsp"></jsp:include>
       
		<!--搜索框-->
		<div class="logo"></div>
	    <div id="com-search">
	         <div class="search">	
	    	
	    	<div class="search-tab">				
	    		<span class="active">宝贝</span><span class="">店铺</span>			</div>		
	    		<div class="search-box">				
	    			    <input class="search-txt" placeholder="" type="text">				
	    				<span class="search-btn"></span>			
	    				<div class="suggest-box" style="display: none;"></div>			
	    		</div>			
	    		<div class="hotword">
	    			<a target="_blank" href="#" style="color:#FF3366">连衣裙</a>
	    			<a target="_blank" href="#" style="color:#666666">运动鞋</a>
	    			<a target="_blank" href="#" style="color:#FF3366">雪纺衫</a>
	    			<a target="_blank" href="#" style="color:#FF3366">衬衫</a>
	    			<a target="_blank" href="#" style="color:#666666">薄外套</a>
	    			<a target="_blank" href="#" style="color:#666666">T恤</a>
	    			<a target="_blank" href="#" style="color:#666666">套装</a>
	    			<a target="_blank" href="#" style="color:#666666">牛仔裤</a>
	    			<a target="_blank" href="#" style="color:#FF3366">小白鞋</a>
	    			<a target="_blank" href="#" style="color:#666666">风衣</a>
	    			<a target="_blank" href="#" style="color:#FF3366">绑带凉鞋</a>
	    			<a target="_blank" href="#" style="color:#666666">粗跟单鞋</a>
	    		</div>		
	    </div>
	    </div>
	    
	    <!--导航 -->
	    <div id="nav">
	    	<ul>
	    		<li>
	    			<a href="#" class="selected">首页</a>
	    		</li>
	    		<li>
	    			<a href="#">上衣</a>
	    		</li>
	    		<li>
	    			<a href="#">裙子</a>
	    		</li>
	    		<li>
	    			<a href="#">裤子</a>
	    		</li>
	    		<li>
	    			<a href="#">女鞋</a>
	    		</li>
	    		<li>
	    			<a href="#">包包</a>
	    		</li>
	    		<li>
	    			<a href="#">配饰</a>
	    		</li>
	    		<li>
	    			<a href="#">美妆</a>
	    		</li>
	    	</ul>
	    </div>
	    <hr />
	    
	    <!--广告轮播图-->
	    <div class="ad">
	    	<div class="inner">
	    		<img src="img/ad1.jpg"/>
	    		<img src="img/ad2.jpg"/>
	    		<img src="img/ad1.jpg"/>
	    	</div>
	    </div>
	    
	    <!--商品展示-->
	    <h2>贵美优选</h2>
	    
	    <div id="wrap" style="margin: auto">
			<!-- 商品信息  -->
	    	<c:forEach var="p" items="${allproduct}">
				<div class="products">
					<!--商品图片-->
					<a   href="/shop/product?pid=${p.pid}" class="pimg" style="background-image: url(${p.pimage});"></a>
					<div class="info">
						<div class="part">
							<!--商品价格-->
							<div class="price">¥${p.shopPrice}</div>
							<div class="collect">
								<!--商品收藏-->
								<i class="icon-star"></i>${p.collect}
							</div>
						</div>
						<i class="icon-select">
							<!--商品简介-->
						</i>商品简介
					</div>
				</div>
			</c:forEach>


	   </div>


	    <!-- 底部导航 -->
		<jsp:include page="/views/footer.jsp"></jsp:include>
	    
	    
	</body>
  </body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值