Java之JSTL标签与JavaBean

JSP、JSTL标签及 EL表达式

<!--    jstl表达式-->
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
</dependency>
<!-- standard标签库-->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
</dependencies>

EL表达式

  • 获取数据
  • 执行运算
  • 获取web开发的常用对象
  • 调用java方法

JSP标签

当前时间:<%=new Date()%>
name:<%=request.getParameter("name")%> //获取参数
age:<%=request.getParameter("age")%>
<%--包含jsp文件--%>
<jsp:include page="/common/header.jsp"></jsp:include> //包含jsp文件 <%--相当于请求http://localhost:8888/jsptag2.jsp?name=Zh1z3ven&age=18--%>
<jsp:forward page="/jsptag2.jsp"> //请求转发
<jsp:param name="name" value="Zh1z3ven"/>
<jsp:param name="age" value="18"/>
</jsp:forward>

JSTL表达式

JSTL标签的使用就是为了弥补HTML的不足;他自定义许多标签,标签的功能和java代码一样。

核心标签

需要先引入标签库

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

if结构

<%--引入标签库--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body> <form>
<%-- EL表单中获取表达式数据
${param.参数名}
--%>
<input type="text" formmethod="get" name="username" value="${param.username}">
<input type="submit" name="submit">
</form>
<%--判断用户名是admin则登录成功--%>
<%--test参数必须要填写,var代表返回值,这里返回值赋值为isAdmin--%>
<c:if test="${param.username=='admin'}" var="isAdmin">
<c:out value="is Admin!"></c:out>
</c:if>
<c:out value="${isAdmin}"></c:out>
</body>
</html>

when结构

设置数据
<c:set var="score" value="85"></c:set> <c:choose>
<c:when test="${score>=90}">
你的成绩为优秀
</c:when>
<c:when test="${score>=80}">
你的成绩为良好
</c:when>
<c:when test="${score>=70}">
你的成绩为一般
</c:when>
<c:when test="${score>=60}">
你的成绩为可以
</c:when> </c:choose>

foreach

<%
ArrayList<String> people = new ArrayList<>();
people.add(0, "xa");
people.add(1, "xb");
people.add(2, "xc");
people.add(3, "xd");
people.add(4, "xe");
request.setAttribute("list",people); %>
var: 每一次遍历出来的变量
items:要遍历的可迭代对象
begin:起始遍历位置
end:结束遍历位置
step:遍历步长
<c:forEach var="people" items="${list}" begin="1" end="5" step="2">
<c:out value="${people}"/> <br> </c:forEach>

JavaBean

实体类

JavaBean写法:

  • 必须有一个无参构造
  • 属性必须私有化
  • 必须有对应的get/set方法
  • 一般用来做数据库字段的映射ORM

ORM 对象关系映射

表==> 类

字段 ==> 属性

行记录 ==> 对象

//设置要链接的class
<jsp:useBean id="people" class="com.zh1z3ven.pojo.People" scope="page"/> //

JavaBean写法:

<%--scope为作用域,离开当前页面即无效--%>
<jsp:useBean id="people" class="com.zh1z3ven.pojo.People" scope="page"/> <%--设置属性--%>
<jsp:setProperty name="people" property="address" value="beijing"/>
<jsp:setProperty name="people" property="id" value="1"/>
<jsp:setProperty name="people" property="name" value="3"/>
<jsp:setProperty name="people" property="age" value="zh1z3ven"/> <%--获取属性值--%>
位置:<jsp:getProperty name="people" property="address"/>
id:<jsp:getProperty name="people" property="id"/>
姓名:<jsp:getProperty name="people" property="name"/>
年龄:<jsp:getProperty name="people" property="age"/>

等价于:

<%
People people = new People();
people.setAddress("hangzhou");
people.setAge(17);
people.setId(1);
people.setName("zh1z3ven");
people.getAddress();
people.getAge();
people.getId();
people.getName();
%>

Java之JSTL标签与JavaBean的更多相关文章

  1. Java学习——JSTL标签与EL表达式之间的微妙关系

    原文总结的太好了,忍不住记录.转发. 原文地址:http://blog.csdn.net/u010168160/article/details/49182867 目录(?)[-] 一EL表达式 EL相 ...

  2. Vue.js——循环(Java、JSTL标签库、数据库)

    一.Vue.js循环 Vue.js循环要使用 v-for 指令. v-for 指令需要以 student in StudentList 形式的特殊语法使用, StudentList 是源数据数组并且s ...

  3. Java实战之04JavaWeb-04JSP、EL表达式、JSTL标签库

    一.jsp部分 只要是与页面显示相关的都是重点 1.jsp的脚本 <%java代码%>:被翻译到service方法内部,局部变量,局部的功能 <%=表达式或变量%>:翻译成se ...

  4. JSTL标签急速秒杀jsp页面中的java代码(一)---Core标签库

    JSTL标签简介 ===================================================================== JSTL的全称是JavaServer Pa ...

  5. Java Web(七) JSTL标签库

    在之前我们学过在JSP页面上为了不使用脚本,所以我们有了JSP内置的行为.行为只能提供一小部分的功能,大多数的时候还是会用java脚本,接着就使用了EL表达式,基本上EL表达式看似能满足我们的要求,它 ...

  6. jsp不解析el表达式,不识别jstl标签,找不到http://java.sun.com/jsp/jstl/core

    问题描述: jsp页面中el表达式,例如:${pageContext.request.contextPath},原样呈现,未被解析. 解决方案: 为jsp页添加page指令如下: <%@ pag ...

  7. Java第三阶段学习(十四、JSP动态页面、EL表达式、JSTL标签库)

    一.JSP技术 1.jsp脚本和注释 jap脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部,比如写在doget.dopost 内的代码 2) ...

  8. java基础开发—jstl标签库

    在DRP项目中.接触到了JSTL标签库. 在未使用Jstl之前,我们使用JSP脚本实现一些声明或是表达式任务,做一些业务相关操作时,须要在页面中嵌入大量的java代码.在DRP项目开发前期.使用jsp ...

  9. Java Web程序设计笔记 • 【第10章 JSTL标签库】

    全部章节   >>>> 本章目录 10.1 JSTL 概述 10.1.1 JSTL 简介 10.1.1 JSTL 使用 10.1.2 实践练习 10.2 核心标签库 10.2. ...

随机推荐

  1. logback学习与配置使用

    Logback介绍 Logback 分为三个模块:Core.Classic 和 Access.Core模块是其他两个模块的基础. Classic模块扩展了core模块. Classic模块相当于log ...

  2. Game游戏分析

    1.鲁棒图分析 2.系统上下文及交互方式 3.用例 4.逻辑拓扑图 5.物理拓扑图 6.时序图 7.状态图 8.物理数据模型 9.类图 10.技术选型 11.框架搭建 12.工具及通用服务 13.架构 ...

  3. 18 shell 重定向以及文件描述符

    1.对重定向的理解 2.硬件设备和文件描述符 文件描述符到底是什么 3.Linux Shell 输出重定向 4.Linux Shell 输入重定向 5.结合Linux文件描述符谈重定向 6.Shell ...

  4. easyui的combobox的onChange事件的实现

    easyui的combobox的onChange事件的实现,直接上代码: <div style="display:inline;margin-left:15px;"> ...

  5. elf文件结构解读以及plt节got节的理解

    前言: 熟悉elf文件结构是一件很不错的事,因为安卓中的so加固以及修复都是需要这些知识的,包括pwn里面的rop之类的,也都是 和got节,plt节息息相关的,个人建议是在搞懂elf文件结构后,自己 ...

  6. Vue使用PrintJs自定义打印表格模板

    这俩天客户提了个需求,需要打印俩个自定义的表格模板,一开始想到的是打印Json表格,但是发现表格样式不符合要求,后来想着打印html,自己生成html模板然后打印,基本可以满足客户的需求,废话不多说, ...

  7. 视图:DBA_TAB_PARTITIONS 分区表视图

    Column Datatype 释义 Description TABLE_OWNER VARCHAR2(128) 表的owner Owner of the table TABLE_NAME VARCH ...

  8. ctf之抄错的字符

    题目信息如图所示 得知该题为密码学问题 像英文的字母有 i=1,g=9,s=5,z=2 还有部分小写抄成了大写,搜索一段php代码测试 <?php $list=[]; function fun( ...

  9. JDK安装与环境搭建.

    卸载JDK 1.删除Java安装目录 2.删除Java Home 3.删除path下Java的目录 4.打开cmd命令输入java-version 出现''不是内部或外部命令,也不是可运行的程序 或批 ...

  10. 就这?一篇文章让你读懂 Spring 事务

    什么是事务 ▲ 百度百科 概括来讲,事务是一个由有限操作集合组成的逻辑单元.事务操作包含两个目的,数据一致以及操作隔离.数据一致是指事务提交时保证事务内的所有操作都成功完成,并且更改永久生效:事务回滚 ...