JSP 之输出九九乘法表

JSP是一种建立在Servlet规范提供的功能之上的动态网页技术,允许在网页文件中嵌入java代码和jsp标记。Java 服务器页面 (Java Server Page ,JSP) 扩展名为 .jsp。
1.jsp的执行过程

  • Jsp文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以jsp可以看成是运行时的Servlet
  • Jsp容器(也就是Servlet容器)管理jsp页面声明周期分为两个阶段.即转换阶段和执行阶段
  • 当有一个对jsp页面的请求到来时,jsp容器检查jsp页面的语法是否正确,将jsp页面转换为Servlet源文件,然后调用javac命令编译Servlet源文件生成字节码文件.这是转换阶段
  • Servlet容器加载转换后的Servlet类,这是执行阶段

2.JSP 页面的元素

    静态内容------------→  HTML静态文本指令------------→ 以 <%@  开始,以 %>  结束表达式------------<%=Java表达式 %> *Scriptlet ------------<% Java 代码 %> *声明------------<%! 函数或方法 %> *动作------------→以  <jsp: 动作名   开始,以 </jsp:动作名>   结束注释------------<!-- 这是注释,但客户端可以查看到 --><%-- 这也是注释,但客户端不能查看到 --%> 

3.JSP 指令 用来设置与整个 JSP 页面相关的属性

<%@ page ... %>	定义页面的依赖属性,比如脚本语言、error 页面、缓存需求等等
<%@ include ... %>	包含其他文
<%@ taglib ... %>	引入标签库的定义,可以是自定义标签

4、JSP的九大内置对象

    request	     HttpServletRequest 类的实例response	 HttpServletResponse 类的实例out	         PrintWriter 类的实例,用于把结果输出至网页上session	     HttpSession 类的实例application	 ServletContext 类的实例,与应用上下文有关config	     ServletConfig 类的实例pageContext	 PageContext 类的实例,提供对 JSP 页面所有对象以及命名空间的访问page	     类似于 Java 类中的 this 关键字Exception	 Exception 类的对象,代表发生错误的 JSP 页面中对应的异常对象

5. JSP 作用域包括 page、request、session 和 application

JSP 示例如下:

<%-- jsp的指令 --%>
<%@page import="java.text.SimpleDateFormat"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>My JSP 'demo1.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><%--jsp的表达式 --%><p>path:<%=path%> </p><p>basePath:<%=basePath%> </p><p>姓名:<%=request.getAttribute("name") %> </p><p>密码:<%=request.getAttribute("password") %> </p><p>年龄:<%=request.getAttribute("age") %> </p><%--jsp的Scriptlet --%><%--九九乘法表 --%><%for(int i=1;i<10;i++){for(int j=1;j<=i;j++){out.print(i +" × "+j+" = "+(i*j)+"   ");}out.print("</br>");}%><%--jsp的声明 获取当前时间 --%><%!public String getTime(){SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");return sf.format(new Date());}%>    <p>当前时间:<%=getTime() %> </p></body>
</html>

结果如下:在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443378.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 重写与重载

方法的重写&#xff1a; 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异常或者比被重写方法申…

Java新增

在实践项目中我们有可能需要做到新增功能&#xff0c;新增一张表&#xff0c;或是新增多张表。这里我新增的是一张表。 这里主要描述DAO层与Servlet 层&#xff1a; DAO 层&#xff1a; public class UserDaoImpl implements UserDao {private Connection con null;private P…

JSP根据状态动态改变数据表格按钮

有时候在开发的过程中会遇到需要根据状态ID 来动态改变数据表格的按钮&#xff0c;下面我主要讲述两种表格根据ID改变按钮的方式。 下面这种我是用EL 表达式获取表格中的值&#xff1a; <table class"table table-striped table-bordered table-hover" id"s…

Java 模糊查询

在学习Java 这门语言过程中&#xff0c;会遇到无数的知识点与错误&#xff0c;最重要的是我们能够在茫茫的代码中找到突破口&#xff0c;并用心去汲取精华。 在很多时候我们会用到模糊查询&#xff0c;这里是我在编码过程中用到的模糊查询。 JSP &#xff1a; <input value…

Java删除表

Java删除表 这里页面我用了layui 框架做删除的&#xff0c;这里需要引入layui 的css 与js 插件&#xff0c;这里写出主要的代码。 Jsp &#xff1a; //监听行工具事件table.on(tool(test), function(obj){var data obj.data; //获得当前行数据var date1 data.classifyColum…

原始分页

Jsp &#xff1a; <div style"float: right;">当前为${currentPage}页&#xff0c;共有${totalRow}条数据&#xff0c;共${totalPage}页 <select style"border-radius: 18px;" id"pageSize" name"pageSize" onchange"c…

根据银行卡号判断银行卡是否正确与归属银行

校验过程&#xff1a; 1.从卡号的最后一位数字开始&#xff0c;逆向将奇数位&#xff08;1&#xff0c;3&#xff0c;5 等等相加&#xff09; 2.从卡号最后一位数字开始&#xff0c;逆向将偶数位数字&#xff0c;先乘以2&#xff0c;如果乘积为两位数&#xff0c;将个位数字相加…

根据年月日判断第多少天,星期几

1. 根据年月日判断第多少天 Scanner是SDK1.5新增的一个类,可使用该类创建一个对象。 Scanner scannernew Scanner(System.in);  然后scanner对象调用下列方法&#xff08;函数&#xff09;,读取用户在命令行输入的各种数据类型   next.Byte(),nextDouble(),nextFloat,nextIn…

解决MySQLyog 导入数据库文件没有反应

之前我在MySQL 中新建了一个数据库&#xff0c;名为“onlineclassroom” 的数据库&#xff0c;但是在将外部的.sql 文件导入进来之后发现&#xff0c;数据库没有反应&#xff0c;也看不到表数据&#xff0c;以为是没有刷新问题&#xff0c;但是刷新之后发现还是没有这个就很奇怪…

解决myeclipse报错500,MySQLyog报错误码问题

在myeclipse 写了一个登录&#xff0c;但在我登录的时候却报了500的空指针&#xff0c;我检查了自己的登录代码&#xff0c;发现没有问题&#xff0c;这不应该啊&#xff0c;然后在网上也寻找了一些解决方案&#xff0c;发现好像并不适用&#xff0c;500空指针如下&#xff1a;…

Java防止用户同一时间重复登录(包括异地登录)

有时候我们在做登录模块过程中难免会遇到这种问题&#xff0c;即使我们给用户进行了多重判断&#xff0c;比如&#xff1a;用户名&#xff0c;管理员&#xff0c;验证码&#xff0c;一系列的判断… 你是否真正考虑到用户的体验&#xff0c;比如不能让用户在同一时间&#xff0c…

jquery点击弹出播放视频并显示遮罩层

最近在做视频播放的时候&#xff0c;发现用jquery的播放视频可以很好的实现我所需要的效果。在之前请把插件引用进来&#xff0c;废话不多说&#xff0c;代码如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><meta …

JS实现图片循环滚动

之前在前端的时候有遇到这样一个问题&#xff0c;实现 JS 图片的循环滚动&#xff0c;然后鼠标移入的时候停止滚动&#xff0c;鼠标移开继续滚动&#xff0c;这里无非就是设置了一个定时器&#xff0c;鼠标移上时清除定时器达到滚动停止的目的&#xff0c;鼠标移开时重设定时器…

有趣的滚动条

今天在搭前端页面的时候&#xff0c;UI给过来的一个自定义的滚动条&#xff0c;要求必须与设计的一样&#xff0c;觉得有点有趣&#xff0c;现在记录一下。 效果图&#xff1a; 具体代码是这样的&#xff1a; /*字体太长&#xff0c;这里我就减少一些*/ <div class"l…

查询分页的几种sql语句

sql server 中的分页查询sql语句不跟mysql 一样&#xff0c;mysql 用 limit 可以实现查询sql分页。如&#xff1a; select * from news where id>(select id from news limit 250000,1) limit 10; //相对执行效率高 select * from news limit 250000,10;mysql 中 limit总是…

c#解决在数据表格中无法显示秒数问题

在查询日期的时候&#xff08;年月日时分秒&#xff09;&#xff0c;发现丢失了秒&#xff0c;在这里我用的是自己 封装的Vo类里面的时间转换&#xff0c;没有把秒数查询出来&#xff0c;在Vo动不了手&#xff0c;我还不能对Controller 动手了&#xff1f; 查询&#xff1a; 更…

解决 idea 复制jsp 文件过来页面报404

今天在做功能的时候把另外一个jsp文件复制过来&#xff0c;发现页面一直报404&#xff0c;咋搞的&#xff0c;检查路径没有问题&#xff0c;报404这个就奇葩了&#xff0c;后面经过一番“洗脑”&#xff0c;才发现jsp文件复制过来少了一个特别重要的步骤&#xff0c;那就是重新…

解决ckeditor富文本在layui 弹框中大小字体等下拉不显示

css <div class"layui-input-inline" style"width:1100px;"><div class"noticeContent"><textarea id"Introduce1" name"处分结果" class"form-control" style"z-index:19991015">&…

C# DateTime.Compare判断两个DateTime 日期是否相等

DateTime t1 DateTime.Now.Date; //2020/8/4 0:00:00 DateTime t2 Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));//得到2020/8/4 16:24:54 DateTime t3 Convert.ToDateTime(t1.AddHours(16).AddMinutes(24).AddSeconds(t2.Second).AddM…

解决git上传提交的时出现:Please tell me who you are.问题

今天安装好git后&#xff0c;创建新项目&#xff0c;当git上传提交时出现了一个问题&#xff0c;如下&#xff1a; Commit failed - exit code 128 received, with output: *** Please tell me who you are.Rungit config --global user.email "youexample.com"git …