JavaWeb--JavaBean与三层架构
前言
- Java Web 其实就是一个技术的总和,把Web看成一个容器而已主要使用JavaEE技术来实现.在加上各种中间件。
- 整个javaWeb阶段的内容通过实际的案例贯穿学习, 所涉及到的技术知识点会在案例中根据不同的需求引入。
- 首先了解javaWeb的整个技术体系,掌握常用的技术知识点。
我会将JavaWeb分为8篇左右的文章来记录自己的学习过程,也方便大家逐级递增难度的学习,如有错误或遗漏欢迎大家指出。
注:本篇文章承接上一篇JavaWeb文章JavaWeb --JSP详解
下面我们进入正题!
9、JavaBean
实体类
JavaBean有特定的写法:
- 必须要有一个无参构造
- 属性必须私有化
- 必须有对应的set/get方法
一般用来和数据库字段做映射,ORM;
ORM:对象关系映射
- 表--->类
- 字段--->属性
- 行记录--->对象
<%@ page import="com.qjd.pojo.People" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
// People people = new People();
// people.setId(001);
// people.setAddress("");
%>
<jsp:useBean id="people" class="com.qjd.pojo.People" scope="page"/>
<jsp:setProperty name="people" property="address" value="大连"/>
<jsp:setProperty name="people" property="id" value="01"/>
<jsp:setProperty name="people" property="age" value="18"/>
<jsp:setProperty name="people" property="name" value="张三"/>
姓名:<jsp:getProperty name="people" property="name"/>
</body>
</html>
10、三层架构
什么是MVC:Model View Controller (模型,视图,控制器)
10.1、早期开发
用户直接访问控制层,控制层就可以直接操作数据库
servlet--CRUD--数据库
弊端:程序十分臃肿,不利于维护
servlet的代码中!处理请求、响应、视图跳转、处理JDBC、处理业务代码、处理逻辑代码
架构:设有什么是加一层解决不了的!
程序调用
JDBC
Mysql oracle sqlserver ...
10.2、MVC三层架构
Model:
- 业务处理:业务逻辑(Service)
- 数据持久层:CRUD(Dao)
View:
- 展示数据
- 提供连接发起Servlet请求(a,form,img...)
Controller:
- 接受用户的请求:(req:请求参数、session信息...)
- 交给业务层处理对应的代码
- 控制视图的跳转
登录--->接收用户的登录请求--->处理用户的请求(获取用户登录的参数,username,password)--->交给业务层处理登录业务(判断用户名密码是否正确)--->Dao层查询用户名和密码是否正确--->数据库