模型层
该层是应用系统的核心层,主要负责封装数据和业务 *** 作。使用JavaBean实现
视图层该层主要是指与用户交互的界面,即应用程序的外观。使用HTML,JSP等等实现。
控制层该层主要的工作是控制整个系统处理的流程,该角色通常介于视图层和模型层之间,进行数据传递和流程转向。使用Servlet实现。
web开发模式发展:模型1 模型2 完全使用jsp开发使用这种开发模式,主要是开发小的项目,开发时间短,但是代码的可读性差,重用度较低维护较难。
使用jsp+JavaBean开发这种模式是在第一代模式上的创新,使得代码的可读性,重用度等增高。但是缺少了MVC模式中控制层去控制相关流程,在jsp中将视图层与控制层耦合在一起,违背了高内聚和低耦合标准
Model2模式
MVC也是一种开发架构设计模式,与三层架构类似。
MVC其实就是将三层架构中的显示层"一分为二",将三层架构中的业务逻辑层与数据访问层进行合并成"model"。MVC是一个大的概念,三层架构其实就是MVC的具体的实现的一种设计模式。 案例:基于mvc的购物车登录与首页数据显示 login.jsp登录页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
登录界面
登录的servlet *** 作
package com.zking.cart.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.zking.cart.biz.UserDaoBiz;
import com.zking.cart.biz.impl.UserDaoBizImpl;
import com.zking.cart.entity.Orderitem;
import com.zking.cart.entity.User;
/**
* 登录servlet类
*/
// 配置文件
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取数据
// 用户名
String uname = request.getParameter("uname");
// 地址
String uaddress = request.getParameter("uaddress");
// 封装数据
User user = new User(uname, uaddress);
// 实例化业务逻辑处理层
UserDaoBiz ud = new UserDaoBizImpl();
// 调用方法
User login = ud.userLogin(user);
// out对象
PrintWriter out = response.getWriter();
// session对象
HttpSession session = request.getSession();
// 判断
if (login != null) {
out.println("");
session.setAttribute("login", login);
//生成一个篮子
List list=new ArrayList();
//将篮子给到当前的用户
request.getSession().setAttribute("gs", list);
response.sendRedirect("index.jsp");
} else {
out.println("");
response.sendRedirect("login.jsp");
}
}
}
index.jsp首页页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
商品首页
您好, 这是首页
商品编号
商品价格
商品名称
商品 *** 作
${ goods.gid }
${ goods.gname }
${ goods.gprice }
首页servlet数据显示 *** 作
package com.zking.cart.servlet;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.zking.cart.biz.GoodsDaoBiz;
import com.zking.cart.biz.impl.GoodsDaoBizImpl;
import com.zking.cart.entity.Goods;
/**
* 首页数据加载servlet类
*/
//配置文件
public class LoadServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println(123);
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
//实例化业务逻辑处理层
GoodsDaoBiz gd=new GoodsDaoBizImpl();
//调用查询所有数据的方法
List all = gd.selectGoodsAll();
System.out.println(all);
//获取session对象
HttpSession session = request.getSession();
//设置数据
session.setAttribute("all", all);
//跳转到首页
response.sendRedirect("index.jsp");
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)