jsp页面中,<%! %>的感叹号是干什么用的?

转载 2015年11月20日 09:56:54

jsp页面中,<%! %>的感叹号是干什么用的?

2011-08-14 21:07friendsfriend | 浏览 8166 次
我从网上找的代码,生成验证码图片用的,如下,去掉<%! 旁边的感叹号后就报错了,这个感叹号代表什么意思啊?
<%@ page contentType="image/jpeg"%>
<%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%>
<%!
	Color getRandColor(int fc, int bc) {//给定范围获得随机颜色
		Random random = new Random();
		if (fc > 255) fc = 255;
		if (bc > 255) bc = 255;
		int r = fc + random.nextInt(bc - fc);
		int g = fc + random.nextInt(bc - fc);
		int b = fc + random.nextInt(bc - fc);
		return new Color(r, g, b);
	}
%>
……
2011-08-14 21:35 提问者采纳
<%!%>是声明标签
因为Jsp页在到tomcat的时候会被编译为java文件
jsp页面里面的所有东西都会包含在一个方法里
如果不用声明标签去声明这是个方法
就会报错了
因为方法里面不能有方法
提问者评价
谢谢你,谢谢大家啊
评论(4) | 60 2
2015-4-30 13:11轩辕渡痕
楼上sb,最后一句话才是精髓。上面已经说了,编译后jsp页面所有内容会包含在一个方法里面,如果直接在<%%>里写方法,那么这就是方法中的方法,直接编译不通过。回复
2014-9-11 23:10zh369852264
说的是不错,可最后一句有点........回复
2014-5-11 22:38skitte
确实方法要写在这个标签里面。回复
2012-10-26 13:38L9237
这位老师答得真好:)回复

为您推荐:

其他6条回答

2011-08-14 21:15lyl7120 | 四级
<%! %>一般用于一行Java代码,一般常见于变量的定义。
<% %>一般用于多行java代码,即代码块。
你的程序很明显是“一行”,注意java语言中“一行”的概念不是编辑器中显示的一行,而是编译器认可的“一行”。
如:
int
i
=
10

看上去是5行,但编译器认为是“一行”
java中“行”的分隔符一个是“;”,另一个就是“{}”,即复合语句。
评论 | 5 11
2011-08-14 21:16yq12010902 | 四级
<%!
Color getRandColor(int fc, int bc) {//给定范围获得随机颜色
Random random = new Random();
if (fc > 255) fc = 255;
if (bc > 255) bc = 255;
int r = fc + random.nextInt(bc - fc);
int g = fc + random.nextInt(bc - fc);
int b = fc + random.nextInt(bc - fc);
return new Color(r, g, b);
}
%>
这是在jsp页面中写java脚本的语法,你去掉了当然会报错呀,如没有了语法,你说还能不能在页面上直接写java代码???
评论 | 0 8
2011-08-14 21:35635333024 | 三级
用于声明
评论 | 0 0
2011-08-14 22:02anliguo131 | 二级
定义方法或变量,麻烦你可以看一下这方面的资料
评论 | 2 0
2011-08-14 22:12一个IT小兵 | 二级
<%@ %>、<%! %>、<% = %>等这些是jsp中的基本语法元素,<%! %>是jsp中的申明标签 ,如果去掉的话就变成表达式啦,加个!来区分

相关文章推荐

jsp页面跳出保存成功调到查询

  • 2017年01月20日 17:33
  • 111KB
  • 下载

JSP页面多循环

  • 2015年05月06日 16:57
  • 571B
  • 下载

J2EE中JSP页面引用外部资源时的路径问题

最近想自己写一个cms系统,在前台View层展示上,初始版本用jsp,以后用Freemarker优化,包括生成静态页面等。在设计JSP页面时,遇到了最头疼的问题。路径问题。    J2EE学习道路上...
  • yeahwell
  • yeahwell
  • 2013年01月27日 23:18
  • 23834

个人JSP页面遗留问题解决方案

  • 2015年04月10日 00:21
  • 75KB
  • 下载

JSP页面对date时间格式的处理

很多时候,数据库字段类型为date,放到页面上显示时,会出现 2012-04-20 00:00:00.0的情况,就需要对时间进行格式化处理。具体实现很简单 就两步走: 引用 引用 发布时间: ...

模拟省市级联jsp页面模拟

  • 2017年08月19日 00:13
  • 38KB
  • 下载

jsp页面登记注册

  • 2015年11月30日 11:41
  • 17KB
  • 下载

Eclipse,tomcat及jsp页面编码的设定解决的中文乱码问题

一.Eclipse下编码的设定(在myeclipse下设定方法类似) 1、window -> Preferences -> general -> Workspace -> Text file e...
  • zndxlxm
  • zndxlxm
  • 2012年08月21日 11:31
  • 10814

jsp页面加载方法

  • 2015年08月30日 10:25
  • 29KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jsp页面中,<%! %>的感叹号是干什么用的?
举报原因:
原因补充:

(最多只允许输入30个字)