jstl 标签
JSP标签
1.jsp便签的作用
jsp标签作用:替换jsp脚本
1)流程判断(if for循环)
2)跳转页面(转发,重定向)
3)…………
2.jsp标签分类
1)内置标(动作标签):不需要在jsp页面导入标签
2)jstl便签:需要在jsp页面中导入标签
3)自定义标签:开发者自行定义,需要在jsp页面中导入标签
3.动作标签
转发标签:<jsp:forward>
包含标签:<jsp:include>
参数标签:<jsp:param>
原理:包含与被包含的页面先各自翻译成java源文件,然后再运行时合并在一起。
静态包含 vs 动态包含 的区别
1)语法不同
静态包含语法:<%@incle file="被包含的页面"%>
动态包含语法:<jsp:include page="被包含的页面">
2)参数传递不同
静态包含不能向被包含页面传递参数
动态包含可以向被包含页面传递参数
3)原理不同
静态包含:先合并在翻译
动态包含:先翻译在合并
JSTL
1.概念javaServer Pages Tag Library JSP标准标签库
是由Apache组织提供的开源的免费的jsp标签
核心标签库(c标签)(用的多)
国际化标签(fmt标签库)
EL函数库(fn函数库)
xml标签库(x标签库)
sql标签库(SQL标签库)
2.作用:用于简化和替换jsp页面上的java代码
3.使用步骤:
1.导入jstl相关的jar架包
因为是web项目,遵守规范,要在WEB-INF目录下创建lib目录,然后右键lib目录选择Add as Libary… -->>Module Libay(重点)
2.引入标签库:taglib指令:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
3.使用便签
4.核心便签库的常用标签
单条件判断
<c:if test=""></c:if>
多条件判断
<c:choose>
<c:when test=""></c:when>
<c:otherwise></c:otherwise>
</c:choose>
循环数据
<c:forEach begin=" " end=" " step=" " var=" " items=" " varStatus=" " ></c:forEach>
重定向
<c:redirect url=" " ><c:redirect>
JavaBean
1.JavaBean是一种开发规范,也可以说是一种技术。
2.javaBean就是一个普通的java类,只有符合以下规定才能称之为javabean
1)必须提无参数的构造方法
2)类中属性都必须私有化(private)
3)该类提供公开的getter 和 setter方法
3.JavaBean的作用:用于封装数据,保存数据。
访问javabean只能使用 getter 和 setter 方法
4.问题:
以下方法那些属于javabean的规范的方法
1)getName() 2)getName(String name)
3)setName(String name) 4)setnName()
5)setFlag(boolean flag) 6)isFlag()
MVC:开发模式
1.jsp演变历史
1.早期只有servlet,只能使用response输出标签数据,非常麻烦
2.后来jsp,简单Servlet的开发,如果过度使用jsp,在jsp中即写大量的java代码,和html代码,造成难于维护,难于分工协作。
3.再后来,java的web开发,借鉴mvc 的开发模式,使得程序的设计更加合理性。
2.MVC
1.M:Model,模型。JavaBean
完成具体的业务操作,如:查询数据库,封装对象
2.V:View,视图。JSP
展示数据
3.C:Controlller,控制器。Servlet
获取用户的输入
调用模型
将数据交给视图进行展示
优缺点:
1.优点:
1.耦合度底,方便维护,可以利于分工协作
2.重用性高
2.缺点:
1.使得项目架变得复杂,对开发人员要求高
三层架构:软件设计架构
我们的开发架构一般都是基于两种形式,一种是C/S架构,也就是客户端/服务端,另一种是B/S架构,也就是浏览器/服务器。在javaEE开发中,几乎全都是基于B/S架构的开发,那么在B/S架构中,系统标准的三层架构包括:表现层、业务层、持久层。三层架构在我们的实际开发中很多项目都是基于三层架构设计的。
表现层:
也就是我们常说的web层。它负责接受客户端请求,向客户端响应结果,通常客户端使用http协议请求web层,web需要接收http请求,完成http响应。
表现层包括展示层和控制层:控制层负责接收请求,展示层负责结果的展示
表现成依赖业务层,接收到客户端请求一般会调用业务层进行业务处理,并将处理结果响应给客户端
表现层的设计一般都使用MVC模型。(MVC是表现层的设计模型,和其他层没有关系)
业务层:
也就是我们常说的service层。它负责业务逻辑处理,和我们开发项目的需求息息相关,web成依赖业务层,但是业务层不依赖web层。
业务层成在业务处理是可能会依赖持久层,如果要对数据持久化需要保证事物一致性。(也就是我们说的,事物应该放到业务层来控制)
持久层:
也就是dao层,负责数据持久化,包括数据层即数据库和数据访问层,数据库是对数据进行持久化的载体,数据访问层是业务层和持久层交互的接口,业务层需要通过数据访问层将数据持久化到数据库中。通俗的讲,持久层是就是和数据库交互,对数据库表进行增删改查的。
简单概括如下:
1.视图层(web层):用于显示数据和接收用户输入的数据
2.业务逻辑层(service层):负责关键业务的处理和数据的传递
3.数据访问层(dao层):主要负责对数据库的直接访问

浙公网安备 33010602011771号