- 浏览: 5103051 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
silence19841230:
先拿走看看
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
masuweng 写道发下源码下载地址吧!三个相关文件打了个包 ...
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
发下源码下载地址吧!
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
水淼火 写道你好,我使用以后,图标不显示,应该怎么引用呢,谢谢 ...
前端框架iviewui使用示例之菜单+多Tab页布局
注:以下内容可能不完全准确,仅供参考。
2008-09-28 00:25
<%! 定义 %>与 <% 定义 %>区别如下,一切尽在代码中。
Jsp:
<%@ page contentType="text/html; charset=GBK" %>
<!--定义方式1 -->
<% int j=1;%>
<!--定义方式2 -->
<%! int j=0;%>
<html>
<head>
<title>
jsp1
</title>
</head>
<body bgcolor="#ffffff">
<h1>
<!--
调用定义方式1的变量
-->
<%=j%>
<br>
<!--
调用定义方式2的变量
-->
<%=this.j%>
</h1>
</body>
</html>
反编译的Java jsp1_0002ejsp_jsp.class:
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import org.apache.jasper.runtime.HttpJspBase;
import org.apache.jasper.runtime.JspException;
public class jsp1_0002ejsp_jsp extends HttpJspBase
{
public jsp1_0002ejsp_jsp()
{
j = 0;
}
public final void _jspx_init()
throws JspException
{
}
public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
JspFactory _jspxFactory = null;
PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
String _value = null;
try
{
if(!_jspx_inited)
synchronized(this)
{
if(!_jspx_inited)
{
_jspx_init();
_jspx_inited = true;
}
}
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html; charset=GBK");
pageContext = _jspxFactory.getPageContext(this, request, response, "", true, 8192, true);
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
out.write("\r\n<!--\u5B9A\u4E49\u65B9\u5F0F1 -->\r\n");
//定义方式1,这里定义的只能作用在_jspService成员函数的定义之后,如果想引用定
//义方式2的变量只能用this应用
int j = 1;
out.write("\r\n<!--\u5B9A\u4E49\u65B9\u5F0F2 -->\r\n");
out.write("\r\n<html>\r\n<head>\r\n<title>\r\njsp1\r\n</title>\r\n</head>\r\n<body bgcolor=\"#ffffff\">\r\n<h1>\r\n\r\n<!--\r\n\u8C03\u7528\u5B9A\u4E49\u65B9\u5F0F1\u7684\u53D8\u91CF\r\n-->\r\n");
out.print(j);
out.write("\r\n<br>\r\n<!--\r\n\u8C03\u7528\u5B9A\u4E49\u65B9\u5F0F2\u7684\u53D8\u91CF\r\n-->\r\n");
out.print(this.j);
out.write("\r\n</h1>\r\n</body>\r\n</html>\r\n");
}
catch(Throwable t)
{
if(out != null && out.getBufferSize() != 0)
out.clearBuffer();
if(pageContext != null)
pageContext.handlePageException(t);
}
finally
{
if(_jspxFactory != null)
_jspxFactory.releasePageContext(pageContext);
}
}
//定义方式2 ,<%! xxxx >就是声明一个类的成员变量,如果我们在这个jsp文件定义一个
//成员函数,那么只能调用此种方式的变量了
int j;
private static boolean _jspx_inited = false;
}
===========================================
使用jsp页面中<%! %>全局变量声明遇到的问题
一般喜欢把页面里多处要用到的变量设置成全局变量,如:
当把该变量赋值后,再次访问该页面时,该变量的值依然保存。这使得想通过用全局变量接受提交的参数时会受到一些迷惑:
if(request.getParameter("operation")!=null)
ID = request.getParameter("operation").trim();
当ID在前一次赋过初值后,因为另一种原因而再次访问该页面但‘operation'参数为空时,本来希望ID也为空,但实际上ID的值为上次访问该页面时赋的值。当希望通过ID的值做不同的操作时可能引起操作类型的混乱。
原因:使用<%! %>定义的变量编译成servlet后成为servlet的私有成员变量,在servlet环境中,对于一个JSP页只允许有一个结果servlet的实例在运行和响应所有的页面请求。因此,在结果servlet中所有的成员变量可以被所有的请求所共享,所以只要成员变量没有重新赋值,下次访问该页面时仍然不变。而在<% %>中定义的变量编译成servlet后成为service()方法的一个本地变量,而service()方法中的本地变量只能每响应一次请求就重建一
次。
解决的办法是将ID用<% %>定义,或在判断ID的操作后重新对ID初始化。
自己添加的内容为:
<%!
//设置全局变量
int i=0;
%>
<%
response.setHeader("refresh","1");
%>
<h1><%=++i%></h1>
该页面若编译成功后生成Servlet文件,全局变量i就会被所有客户的请求所共享,即客户端每进行一次请求,变量i就会加1。
当修改了*.jsp文件后,再次在客户端进行访问,这时全局变量i就又从0开始变化了。
全局变量和 page,request,session.application中的application变量类似。
2008-09-28 00:25
<%! 定义 %>与 <% 定义 %>区别如下,一切尽在代码中。
Jsp:
<%@ page contentType="text/html; charset=GBK" %>
<!--定义方式1 -->
<% int j=1;%>
<!--定义方式2 -->
<%! int j=0;%>
<html>
<head>
<title>
jsp1
</title>
</head>
<body bgcolor="#ffffff">
<h1>
<!--
调用定义方式1的变量
-->
<%=j%>
<br>
<!--
调用定义方式2的变量
-->
<%=this.j%>
</h1>
</body>
</html>
反编译的Java jsp1_0002ejsp_jsp.class:
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import org.apache.jasper.runtime.HttpJspBase;
import org.apache.jasper.runtime.JspException;
public class jsp1_0002ejsp_jsp extends HttpJspBase
{
public jsp1_0002ejsp_jsp()
{
j = 0;
}
public final void _jspx_init()
throws JspException
{
}
public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
JspFactory _jspxFactory = null;
PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
String _value = null;
try
{
if(!_jspx_inited)
synchronized(this)
{
if(!_jspx_inited)
{
_jspx_init();
_jspx_inited = true;
}
}
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html; charset=GBK");
pageContext = _jspxFactory.getPageContext(this, request, response, "", true, 8192, true);
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
out.write("\r\n<!--\u5B9A\u4E49\u65B9\u5F0F1 -->\r\n");
//定义方式1,这里定义的只能作用在_jspService成员函数的定义之后,如果想引用定
//义方式2的变量只能用this应用
int j = 1;
out.write("\r\n<!--\u5B9A\u4E49\u65B9\u5F0F2 -->\r\n");
out.write("\r\n<html>\r\n<head>\r\n<title>\r\njsp1\r\n</title>\r\n</head>\r\n<body bgcolor=\"#ffffff\">\r\n<h1>\r\n\r\n<!--\r\n\u8C03\u7528\u5B9A\u4E49\u65B9\u5F0F1\u7684\u53D8\u91CF\r\n-->\r\n");
out.print(j);
out.write("\r\n<br>\r\n<!--\r\n\u8C03\u7528\u5B9A\u4E49\u65B9\u5F0F2\u7684\u53D8\u91CF\r\n-->\r\n");
out.print(this.j);
out.write("\r\n</h1>\r\n</body>\r\n</html>\r\n");
}
catch(Throwable t)
{
if(out != null && out.getBufferSize() != 0)
out.clearBuffer();
if(pageContext != null)
pageContext.handlePageException(t);
}
finally
{
if(_jspxFactory != null)
_jspxFactory.releasePageContext(pageContext);
}
}
//定义方式2 ,<%! xxxx >就是声明一个类的成员变量,如果我们在这个jsp文件定义一个
//成员函数,那么只能调用此种方式的变量了
int j;
private static boolean _jspx_inited = false;
}
===========================================
使用jsp页面中<%! %>全局变量声明遇到的问题
一般喜欢把页面里多处要用到的变量设置成全局变量,如:
当把该变量赋值后,再次访问该页面时,该变量的值依然保存。这使得想通过用全局变量接受提交的参数时会受到一些迷惑:
if(request.getParameter("operation")!=null)
ID = request.getParameter("operation").trim();
当ID在前一次赋过初值后,因为另一种原因而再次访问该页面但‘operation'参数为空时,本来希望ID也为空,但实际上ID的值为上次访问该页面时赋的值。当希望通过ID的值做不同的操作时可能引起操作类型的混乱。
原因:使用<%! %>定义的变量编译成servlet后成为servlet的私有成员变量,在servlet环境中,对于一个JSP页只允许有一个结果servlet的实例在运行和响应所有的页面请求。因此,在结果servlet中所有的成员变量可以被所有的请求所共享,所以只要成员变量没有重新赋值,下次访问该页面时仍然不变。而在<% %>中定义的变量编译成servlet后成为service()方法的一个本地变量,而service()方法中的本地变量只能每响应一次请求就重建一
次。
解决的办法是将ID用<% %>定义,或在判断ID的操作后重新对ID初始化。
自己添加的内容为:
<%!
//设置全局变量
int i=0;
%>
<%
response.setHeader("refresh","1");
%>
<h1><%=++i%></h1>
该页面若编译成功后生成Servlet文件,全局变量i就会被所有客户的请求所共享,即客户端每进行一次请求,变量i就会加1。
当修改了*.jsp文件后,再次在客户端进行访问,这时全局变量i就又从0开始变化了。
全局变量和 page,request,session.application中的application变量类似。
发表评论
-
gradle编译错误:Could not find method compile() for arguments
2020-09-19 10:50 18185编译(IDEA+Gradle)一个别人的工程,出现一个 ... -
netty心跳检查之UDP篇
2019-09-15 08:50 2128部分UDP通信场景中,需要客户端定期发送心跳信息,以获取终 ... -
解决tomcat部署两个SpringBoot应用提示InstanceAlreadyExistsException
2019-06-30 11:49 3172两个SpringBoot应用部署在一个Tomcat中,单独 ... -
Eclipse配置MyBatis代码自动化功能
2019-06-29 10:16 16431.安装插件 Eclipse中,Help->Ecli ... -
vue.js中使用qrcode生成二维码
2019-05-20 00:00 7562一、安装包 npm install qrcodejs2 --s ... -
MySQL插入数据报错: Incorrect string value: '\xFD\xDE'
2019-03-31 23:19 1174我MySQL数据库用的uft-8字符集,插入数据一直很正常 ... -
vue自定义组件并双向绑定属性
2019-03-08 22:46 3209做了两个子组件,原理基本一样,一个是使用原生的select ... -
vue-router简单示例
2019-03-05 00:32 1089写个基本完整、稍有借鉴意义的示例,防止自己忘记。 &l ... -
“联通充值系统繁忙”轻松应对
2019-02-06 11:03 3906大过年的,联通充个值一直报“充值系统繁忙”。昨天晚上试了几 ... -
electron.js数据库应用---导航菜单(element-ui+mysql)
2019-02-05 21:33 2296一、环境搭建 略, ... -
electron.js数据库应用---入门(mysql+element-ui)
2019-01-27 23:19 7310我的机器:Windows10,64 ... -
SpringMVC 在controller层中注入成员变量request,是否线程安全
2018-12-17 21:17 2692@RestController public class ... -
VueJS 组件参数名命名与组件属性转化
2018-12-03 00:00 2007转自:https://www.cnblogs.com/meiy ... -
vue-resource拦截器实现token发送及检验自动化
2018-11-16 22:38 3042用了很长时间vue-resource,最近思考$http发 ... -
element-ui试用手记
2018-10-29 20:25 1685element-ui、iviewui都以vue.js为基础 ... -
iviewui中表格控件中render的使用示例
2018-07-07 16:46 9715示例了如何在表格中显示按钮,如何将代码转化为文字。 i ... -
Tomcat错误“Alias name tomcat does not identify a key entry”解决
2018-07-05 21:39 6186申请到了阿里云的证书后,下载、按照说明生成jks格式证书、 ... -
阿里云免费证书“fileauth.txt内容配置错误”解决
2018-07-05 20:43 5200最近研究微信小程序开发,上阿里云申请了个证书,使用文件验证 ... -
springboot2.0跨域配置
2018-07-04 22:11 5237springboot2.0跨域配置: 一、代码 ... -
微信小程序使用code换openid的方法(JAVA、SpringBoot)
2018-07-01 21:52 10295微信小程序序的代码中提示,使用code换取openid,但 ...
相关推荐
//定义全局变量d %> <!--下面是第1个java代码块 -- > int a=30; //定义局部变量a %> <!-- 下面是第2个java代码块 -- > int b=30; //定义局部变量b int c=40; //定义局部变量c d=a+b+c; //计算表达式的...
JSP指令(Directive)作用是与JSP引擎进行沟通,为JSP页面设置全局变量,声 明类以及JSP要实现的方法和输出内容的类型等 JSP指令在整个页面范围内有效,且不在客户端产生任何输出 格式:<%@ directivename ...
声明脚本格式如下:在声明脚本块中,我们可以干 4 件事情1.我们可以定义全局变量。2.定义 static 静态代码块3.定义方法4.定义内部类几乎可以写在类的内
共有88道选择题,37道填空题,7个简答题和3个程序题 ...4. 在 JSP 页面中定义一个 int 型的全局变量 myInt,定义的方法是( )。 A. <% int myInt %> B. ! int myInt !%> C. !%> D. ! int myInt %>
%> 可以在里面定义全局变量以及方法,类。 第三种:<%=%> 用于打印变量或者输出值。 <% %>的使用 <html> <head> <title>this is java page</title> </head> <...
application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动, 直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作...
压缩代码 可以进行一些简单的代码压缩处理,可以处理:去除注释,压缩全局变量、常量名称,压缩函数名称,去除无用回车,去除缩进等 自定义菜单快捷键 主程序中的Shortcut Manager可以方便帮助您设置菜单中的快捷键...
a:跨平台,编译成与平台无关的中间码 ... 去掉了C++中的:指针运算,结构,typedefs,#define,全局变量的定义。释放内存。 c:包括一个支持http和ftp的基于tcp/ip协议的类库,使开发internet上的程序更容易。
Java Web程序设计题库 一、选择题 1、以下文件名后缀中,只有( C )不是静态网页的后缀。...以上皆不会出现 28、page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是 ( D )。 A.作用
9.4 StrutsAction单态陷阱,请谨慎使用全局变量 13 9.5 Struts异常处理 13 第10章 struts中使用国际化(i18n) 13 10.1 struts国际化程序尝试 13 10.1 Java对i18n的支持 14 10.1 struts框架中对国际化的支持 14 第11...
在JavaScript中根据变量的作用域可以分为:全局变量和 两种。 6. 表格的 和 属性用于水平和垂直合并单元格。 二、选择(共 15题,每空 2 分,合计30 分) 1. javascript中,用于显示弹出提示框的方法是_______。 A....
3.3.htm 演示同名局部变量和全局变量的调用情况 3.4htm 引用数值型数据的例子 3.5.htm 数组使用的小例子 3.6.htm 一个字符串型转换为逻辑型数据的例子 3.7.htm 使用...
方法变量通常是基于给出的参数计算值在数据模型中定义。 6、 用户自定义FTL指令:宏和变换器 7、 节点 节点变量表示为树型结构中的一个节点,通常在XML处理中使用。 在模板里对sequences和hashes初始化 ...
接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象...
接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象...
Struts Validator验证器使用指南 <br>验证器: 从0.5版,验证器在一些form中就已经实现了,他最初包含在开发人员...另外还可以定义与FormSet 同一级别的全局global元素,他与FormSet同样也有常量。 <br>
// 这样就可以声明全局变量了 } 更先进一些的是变量的变量表示。请参考PHP手册。这在有时会显得很有用。 PHP内置了许多已定义的变量。你也可以用define函数定义你自己的常量,比如define("CONSTANT","value")。 ...
Cube 里面有一个全局的标签定义了所用的事实表的表名 3.3. Dimension 他是一个层次( Hierarchies )的集合 , 维度一般有其相对应的维度表 . 他的组成是由层次( Hierarchies )而层次( Hierarchies )又是有级别...
<HTML><HEAD>关于java异常处理(讲义)--JSP中文网 ; charset=gb2312" http-equiv=Content-Type> 关于java异常处理(讲义),JSP中文网> 关于java异常处理(讲义)> href=...
│ 11-附录1.JS中局部变量和全局变量区别 │ d( L, Z2 p" ] ├─众筹项目-第05天《Atcrowdfunding》) A% ]3 K. N. T& e) [7 J │ ├─代码 │ ├─笔记 │ └─视频2 @8 e5 L% ~) b6 _) f. H: i │ 1-用户管理模块-...