前言:
本文内容:JavaBean、MVC三层架构
推荐免费JavaWeb入门到实战视频:【狂神说Java】JavaWeb入门到实战_哔哩哔哩_bilibili
JavaBean
一般称为:实体类
JavaNean特定写法:
- 必须要有一个无参构造
- 属性必须私有化
- 必须要有对应的get/set方法
一般用来和数据库的字段做映射
ORM(对象关系映射)
练习
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| package com.jokerdig.pojo;
public class People {
private int id; private String name; private int age; private String address; public People(int id, String name, int age, String address) { this.id = id; this.name = name; this.age = age; this.address = address; }
public People() { }
public int getId() { return id; }
public void setId(int id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public int getAge() { return age; }
public void setAge(int age) { this.age = age; }
public String getAddress() { return address; }
public void setAddress(String address) { this.address = address; }
@Override public String toString() { return "People{" + "id=" + id + ", name='" + name + '\'' + ", age=" + age + ", address='" + address + '\'' + '}'; } }
|
JavaBean
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body>
<%-- JavaBean: id:实体类名 class:类 --%> <%--赋值--%> <jsp:useBean id="people" class="com.jokerdig.pojo.People" scope="page"/> <jsp:setProperty name="people" property="address" value="西安"/> <jsp:setProperty name="people" property="id" value="1"/> <jsp:setProperty name="people" property="age" value="21"/> <jsp:setProperty name="people" property="name" value="小王"/> <%--获取值--%> 姓名:<jsp:getProperty name="people" property="name" /> 年龄:<jsp:getProperty name="people" property="age" /> ID:<jsp:getProperty name="people" property="id" /> 地址:<jsp:getProperty name="people" property="address" />
</body> </html>
|
MVC三层架构
MVC:(Model 模型 View 视图 Controller 控制器)
最开始的连接方式
用户直接访问控制层,控制层就可以直接操作数据库
servlet->CRUD->数据库
弊端:程序十分臃肿,不利于维护
servlet代码中:处理请求、响应、视图跳转、处理JDBC、处理业务代码、处理逻辑代码
架构思想:
开发人员
|
JDBC
|
MySQL Oracle SQLServer…
三层架构
Model
- 业务处理:业务逻辑(Service)
- 数据持久层:CRUD(Dao)
View
- 展示数据
- 提供链接发起Servlet请求(a,form…)
Controller
- 接收用户的请求:(request/session)
- 交给业务层处理对应的代码
- 控制视图的跳转
举例
三层架构处理用户登录流程
登录–>接收用户登录请求–>处理用户的请求(获取登录参数:账号和密码等)–>交给业务层处理登录业务(判断账号密码是否正确)–>Dao层到数据库查询账号密码是否正确并返回结果