如何在JSP中弹出对话框提示错误???

urchinjj 2002-04-19 05:08:42
我要从数据库里取出记录,当没有找到满足条件的记录时,我想用对话框的形式提示,并
退出此次查询,请问用什么方法??

部分代码如下:
Metadata mrecord=new Metadata();
try{
mrecord=model.getMetadata();
if (mrecord==null){
在此提示用户没有满足条件的记录}
}

谢谢谢谢~~~~~~~~~~
...全文
291 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
slan 2002-04-19
  • 打赏
  • 举报
回复
用:
JOptionPane.showMessageDialog(this,"你要显示的消息!");
slan 2002-04-19
  • 打赏
  • 举报
回复
很简单:
JOptionPane.showMessageDialog(this,"你要显示的消息");
Times2001 2002-04-19
  • 打赏
  • 举报
回复
把javascript夹在jsp里面
这样:
<%
......
if(你的条件)
{
%>
<script>alert('no record')</script>");
<%
}
......
%>
tyscon 2002-04-19
  • 打赏
  • 举报
回复
就是啊,
用Javascript。
zhjx_10 2002-04-19
  • 打赏
  • 举报
回复
写上:out.println("<script>alert('no record')</script>");
我认为还是在页面写上表述信息比较好
已经破解的代码编辑器,免安装的里面有破解的注册码 很小但是功能却很强大,编辑网页可以随时预览,能够多人工作。 附使用手册: Editplus使用技巧 技巧中,在编译器集成例子中参照了部分官方的文献。有几篇是从网上搜集来的,这里我注明了来源或原始作者。如果你是相应作者,不希望文章放在这里,请通知我,我会及时 删掉。 —————————————————— 文章或者技巧及原始作者或处: 正则表达式类 【1】 正则表达式应用——替换指定内容到行尾 【2】 正则表达式应用——数字替换—————————-Microshaoft,jiuk2k 【3】 正则表达式应用——删除每一行行尾的指定字符 【4】 正则表达式应用——替换带有半角括号的多行 【5】 正则表达式应用——删除空行—————————-江德华 软件技巧类 —————————————————— 【6】 软件技巧——键盘记录的注意事项 【7】 软件技巧——关闭文档标签的便捷方法 【8】 软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀提示? 【9】 软件技巧——提示找不到语法文件的解决办法 【10】软件技巧——设置editplus支持其它文字,如韩文———-jackywu1978 【11】软件技巧——FTP 上传的设置—————————-李应文2.11汉化版 【12】软件技巧——如何禁用备份文件功能? 【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件 工具集成类 —————————————————— 【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis、C#) 【15】工具集成——让Editplus调试PHP程序———————-avenger,aukw 【16】工具集成——打造 PHP 调试环境(二)———————-老七2.11汉化版 【17】在 WINPE 中集成 EDITPLUS 【1】正则表达式应用——替换指定内容到行尾 原始文本如下面两行 abc aaaaa 123 abc 444 希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg” 即上面的文本最终替换为: abc efg 123 abc efg 解决: ① 在替换对话框,查找内容里输入“abc.*” ② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮 其中,符号的含义如下: “.” =匹配任意字符 “*” =匹配0次或更多 注意:其实就是正则表达式替换,这里只是把一些曾经提的问题加以整理,单纯从正则表达式本身来说,就可以引申成千上万种特例。 【2】正则表达式应用——数字替换 希望把 asdadas123asdasdas456asdasdasd789asdasd 替换为: asdadas[123]asdasdas[456]asdasdasd[789]asdasd 在替换对话框里面,勾选“正则表达式”复选框; 在查找内容里面输入“[0-9][0-9][0-9]”,不含引号 “替换为:”里面输入“[\0\1\2]”,不含引号 范围为你所操作的范围,然后选择替换即可。 实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例 【1】正则表达式应用——替换指定内容到行尾 原始文本如下面两行 abc aaaaa 123 abc 444 希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg” 即上面的文本最终替换为: abc efg 123 abc efg 解决: ① 在替换对话框,查找内容里输入“abc.*” ② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮 其中,符号的含义如下: “.” =匹配任意字符 “*” =匹配0次或更多 注意:其实就是正则表达式替换,这里只是把一些曾经提的问题加以整理,单纯从正则表达式本身来说,就可以引申成千上万种特例。 【2】正则表达式应用——数字替换 (Microshaoft@CCF,jiuk2k@CCF) 希望把 asdadas123asdasdas456asdasdasd789asdasd 替换为: asdadas[123]asdasdas[456]asdasdasd[789]asdasd 在替换对话框里面,勾选“正则表达式”复选框; 在查找内容里面输入“[0-9][0-9][0-9]”,不含引号 “替换为:”里面输入“[\0\1\2]”,不含引号 范围为你所操作的范围,然后选择替换即可。 实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例 上面重复使用了“[0-9]”,表示连续现的三个数字 “\0”代表第一个“[0-9]”对应的原型,“\1”代表第二个“[0-9]”对应的原型,依此类推 “[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\0\1\2其它”,则替换结果为: asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd 功能增强(by jiuk2k@CCF): 如果将查找内容“[0-9][0-9][0-9]”改为“[0-9]*[0-9]”,对应1 或 123 或 12345 或 … 大家根据需要定制 相关内容还有很多,可以自己参考正则表达式的语法仔细研究一下 【3】正则表达式应用——删除每一行行尾的指定字符 因为这几个字符在行中也是现的,所以肯定不能用简单的替换实现 比如 12345 1265345 2345 需要删除每行末尾的“345” 这个也算正则表达式的用法,其实仔细看正则表达式应该比较简单,不过既然有这个问题提,说明对正则表达式还得有个认识过程,解决方法如下 解决: 在替换对话框中,启用“正则表达式”复选框 在查找内容里面输入“345$” 这里“$”表示从行尾匹配 如果从行首匹配,可以用“^”来实现,不过 EditPlus 有另一个功能可以很简单的删除行首的字符串 a. 选择要操作的行 b. 编辑-格式-删除行注释 c. 在弹对话框里面输入要清除的行首字符,确定 【4】正则表达式应用——替换带有半角括号的多行 几百个网页中都有下面一段代码: 我想把它们都去掉,可是找了很多search & replace的软件,都是只能对“一行”进行操作。 EditPlus 打开几百个网页文件还是比较顺畅的,所以完全可以胜任这个工作。 具体解决方法,在 Editplus 中使用正则表达式,由于“(”、“)”被用做预设表达式(或者可以称作子表达式)的标志,所以查找 “ \n” 时会提示查找不到,所以也就无法进行替换了,这时可以把“(”、“)”使用任意字符标记替代,即半角句号:“.”。替换内容为 \n 在替换对话框启用“正则表达式”选项,这时就可以完成替换了 补充:(lucida@DRL) 对( ) 这样的特殊符号,应该用\( \)来表示,这也是很标准的regexp语法,可以写为 \n 【5】正则表达式应用——删除空行 启动EditPlus,打开待处理的文本类型文件。 ①、选择“查找”菜单的“替换”命令,弹文本替换对话框。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。然后,选中“替换范围”中的“当前文件”,表明对当前文件操作。 ②、单击“查找内容”组合框右侧的按钮,现下拉菜单。 ③、下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧提示:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。 直接在"查找"中输入正则表达式“^[ \t]*\n”,注意\t前有空格符。 (1)选择“从行首开始匹配”,“查找内容”组合框中现字符“^”,表示待查找字符串必须现在文本中一行的行首。 (2)选择“字符在范围中”,那么在“^”后会增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。 (3)按一下空格键,添加空格符。空格符是空行的一个组成成分。 (4)选择“制表符”,添加代表制表符的“\t”。 (5)移动光标,将当前插入点移到“]”之后,然后选择“匹配 0 次或更多”,该操作会添加星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中现0个或多个。 (6)选择“换行符”,插入“\n”,表示回车符。 ④、“替换为”组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus有时存在“全部替换”不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。 【6】软件技巧——键盘记录的注意事项 EditPlus的键盘记录有些类似于 UltraEdit 的宏操作,不过功能相对单一,录制的文件可编辑性较差。 由于基本无法编辑录制的文件,所以录制的时候为了避免录制失败,推荐纯粹使用键盘操作,以下是比较关键的几个键盘组合: Ctrl+F = 调查找对话框 Ctrl+H = 调替换对话框 Alt+F4 = 关闭作用,比如,关闭查找对话框、关闭替换对话框,等等 其它键盘快捷键在“帮助-快捷键列表”里面可以很容易的查找到,这里就 细说了。 【7】软件技巧——关闭文档标签的便捷方法 右键单击文档标签工具条,弹菜单中选择“标签选项”,选中“用鼠标中间的按钮关闭”,这里包括鼠标的滚轮。 【8】软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀提示? 如果你使用 EditPlus 进行文本编辑,那么每次创建文本文件,编辑后保存时,尽管文件类型下拉列表中显示的是文本文件, EditPlus 还是询问你是否添加".txt"后缀,是不是很烦? 解决方法: ① 在程序目录建立一个空的文件“template.txt” ② “工具-参数设置-模板”里面,单击“添加”按钮添加模板,“菜单文本”这里输入“Text”,浏览“template.txt”,之后确定即可 ③ “文件-新建-text”,就可以建立一个空的文本文件,保存时,这个文件自动带有扩展名".txt",也就避免了令人头疼的确认 ④ 模板设置文件名称为“template.ini”,如果和主程序同一路径,可以使用相对路径 罗嗦了点,不过管用 要自动创建带有某种后缀的文件,方法同上。 【9】软件技巧——提示找不到语法文件 *.stx 的解决办法 原因多为设置的语法文件不存在或者是路径设置不对。这是因为 EditPlus 的语法是设置文件采用的是绝对路径,而在你设置了语法文件之后,再把程序复制到其它目录,因而导致 EditPlus 无法找到该语法文件。 解决办法: 在主程序目录里,找到 Setting.ini 这是 EditPlus 存放语法的文件 查找后缀为“.stx”、“acp”的文本内容,或者查找带有驱动器符号的行,比如 Syntax file=C:\Program Files\EditPlus 2\cpp.stx 那么,就把”C:\Program Files\EditPlus 2\“替换成你当前软件的路径。 其它提示找不到文件的解决方法同上 【10】软件技巧——设置editplus支持其它文字,如韩文 在editplus里打开文件,来打开文件对话框;然后点击“转换器”后面的那个省略号,会来自定义转换器对话框;在右边选择你需要的编码方式,添加到左边,然后点确定;最后在下拉框中选择需要的编码方式,然后打开文件即可。 【11】软件技巧——FTP 上传的设置 “文件->远程操作->FTP 上传”在“设置”选项卡中设置好参数(“子目录”前面应该加“/”如“/web/”),点击“确定”回到“FTP 上传”选项卡,然后点击“上传”即可;“批量上传”的设置类似。 【12】软件技巧——如何禁用备份文件功能? 在“参数选择”的文件选项页,禁用“'保存时自动创建备份文件”选项 【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件 要添加 *.STX(语法文件)或 *.ACP(自动完成文件): 1. 选择“参数选择→语法” 2. 单击“添加”按钮,命名,在“扩展名”部分输入对应扩展名(不带“.”) 3. 浏览/输入 STX(语法文件部分) 以及 ACP(自动完成文件部分)。 添加剪辑库文件(*.CTL) 复制相应 *.CTL 文件到软件安装目录,重新启动 EditPlus ,则系统自动识别。 上面重复使用了“[0-9]”,表示连续现的三个数字 “\0”代表第一个“[0-9]”对应的原型,“\1”代表第二个“[0-9]”对应的原型,依此类推 “[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\0\1\2其它”,则替换结果为: asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd 功能增强(by jiuk2k): 如果将查找内容“[0-9][0-9][0-9]”改为“[0-9]*[0-9]”,对应1 或 123 或 12345 或 … 大家根据需要定制 相关内容还有很多,可以自己参考正则表达式的语法仔细研究一下 【3】正则表达式应用——删除每一行行尾的指定字符 因为这几个字符在行中也是现的,所以肯定不能用简单的替换实现 比如 12345 1265345 2345 需要删除每行末尾的“345” 这个也算正则表达式的用法,其实仔细看正则表达式应该比较简单,不过既然有这个问题提,说明对正则表达式还得有个认识过程,解决方法如下 解决: 在替换对话框中,启用“正则表达式”复选框 在查找内容里面输入“345$” 这里“$”表示从行尾匹配 如果从行首匹配,可以用“^”来实现,不过 EditPlus 有另一个功能可以很简单的删除行首的字符串 a. 选择要操作的行 b. 编辑-格式-删除行注释 c. 在弹对话框里面输入要清除的行首字符,确定 【4】正则表达式应用——替换带有半角括号的多行 几百个网页中都有下面一段代码: \n 在替换对话框启用“正则表达式”选项,这时就可以完成替换了 【5】正则表达式应用——删除空行 启动EditPlus,打开待处理的文本类型文件。 ①、选择“查找”菜单的“替换”命令,弹文本替换对话框。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。然后,选中“替换范围”中的“当前文件”,表明对当前文件操作。 ②、单击“查找内容”组合框右侧的按钮,现下拉菜单。 ③、下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧提示:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。 直接在”查找”中输入正则表达式“^[ \t]*\n”,注意\t前有空格符。 (1)选择“从行首开始匹配”,“查找内容”组合框中现字符“^”,表示待查找字符串必须现在文本中一行的行首。 (2)选择“字符在范围中”,那么在“^”后会增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。 (3)按一下空格键,添加空格符。空格符是空行的一个组成成分。 (4)选择“制表符”,添加代表制表符的“\t”。 (5)移动光标,将当前插入点移到“]”之后,然后选择“匹配 0 次或更多”,该操作会添加星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中现0个或多个。 (6)选择“换行符”,插入“\n”,表示回车符。 ④、“替换为”组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus有时存在“全部替换”不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。 【6】软件技巧——键盘记录的注意事项 EditPlus 的键盘记录有些类似于 UltraEdit 的宏操作,不过功能相对单一,录制的文件可编辑性较差。 由于基本无法编辑录制的文件,所以录制的时候为了避免录制失败,推荐纯粹使用键盘操作,以下是比较关键的几个键盘组合: Ctrl+F = 调查找对话框 Ctrl+H = 调替换对话框 Alt+F4 = 关闭作用,比如,关闭查找对话框、关闭替换对话框,等等 其它键盘快捷键在“帮助-快捷键列表”里面可以很容易的查找到,这里就 细说了。 【7】软件技巧——关闭文档标签的便捷方法 右键单击文档标签工具条,弹菜单中选择“标签选项”,选中“用鼠标中间的按钮关闭”,这里包括鼠标的滚轮。 【8】软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀提示? 如果你使用 EditPlus 进行文本编辑,那么每次创建文本文件,编辑后保存时,尽管文件类型下拉列表中显示的是文本文件, EditPlus 还是询问你是否添加“.txt”后缀,是不是很烦? 解决方法: ① 在程序目录建立一个空的文件“template.txt” ② “工具-参数设置-模板”里面,单击“添加”按钮添加模板,“菜单文本”这里输入“Text”,浏览“template.txt”,之后确定即可 ③ “文件-新建-text”,就可以建立一个空的文本文件,保存时,这个文件自动带有扩展名”.txt”,也就避免了令人头疼的确认 ④ 模板设置文件名称为“template.ini”,如果和主程序同一路径,可以使用相对路径 罗嗦了点,不过管用 要自动创建带有某种后缀的文件,方法同上。 【9】软件技巧——提示找不到语法文件 *.stx 的解决办法 原因多为设置的语法文件不存在或者是路径设置不对。这是因为 EditPlus 的语法是设置文件采用的是绝对路径,而在你设置了语法文件之后,再把程序复制到其它目录,因而导致 EditPlus 无法找到该语法文件。 解决办法: 在主程序目录里,找到 Setting.ini 这是 EditPlus 存放语法的文件 查找后缀为“.stx”、“acp”的文本内容,或者查找带有驱动器符号的行,比如 Syntax file=C:\Program Files\EditPlus 2\cpp.stx 那么,就把”C:\Program Files\EditPlus 2\“替换成你当前软件的路径。 其它提示找不到文件的解决方法同上 【10】软件技巧——设置editplus支持其它文字,如韩文 在editplus里打开文件,来打开文件对话框;然后点击“转换器”后面的那个省略号,会来自定义转换器对话框;在右边选择你需要的编码方式,添加到左边,然后点确定;最后在下拉框中选择需要的编码方式,然后打开文件即可。 【11】软件技巧——FTP 上传的设置 “文件->远程操作->FTP 上传”在“设置”选项卡中设置好参数(“子目录”前面应该加“/”如“/web/”),点击“确定”回到“FTP 上传”选项卡,然后点击“上传”即可;“批量上传”的设置类似。 【12】软件技巧——如何禁用备份文件功能? 在“参数选择”的文件选项页,禁用“’保存时自动创建备份文件”选项 【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件 要添加 *.STX(语法文件)或 *.ACP(自动完成文件): 1. 选择“参数选择→语法” 2. 单击“添加”按钮,命名,在“扩展名”部分输入对应扩展名(不带“.”) 3. 浏览/输入 STX(语法文件部分) 以及 ACP(自动完成文件部分)。 添加剪辑库文件(*.CTL) 复制相应 *.CTL 文件到软件安装目录,重新启动 EditPlus ,则系统自动识别。 【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis) 在“工具→参数选择→用户工具”选项页设置,设置步骤 设置组名称,这里也可以不设置 ② 单击“添加工具→应用程序”按钮并进行如下设置 ③ 各种类似”$(FilePath)”的参数可以在文本框右侧的箭头下拉菜单中获取,具体含义如下 参数 描述 $(FilePath) 文件路径(文件全名,含目录和文件名) $(FileDir) 文件目录(不带文件名) $(FileName) 文件名(不带目录) $(FileNameNoExt) 不带扩展名的文件名(不带目录) $(FileExt) 扩展名(当前文件) $(ProjectName) 工程名称(当前工程名) $(CurLine) 当前行号(光标位置处的行号) $(CurCol) 当前列号(光标位置处的列号) $(CurSel) 当前文本(插入当前选定文本) $(CurWord) 当前单词(插入当前单词) $(WindowList) 显示当前窗口列表并选择特定文件 例子 1. Java 编译器 菜单文本:Java 编译器 命令:c:\java\bin\javac.exe 参数:”$(FilePath)” 初始目录:$(FileDir) 捕获输:开启 要运行已编译的 Java 类文件,你可以进行如下设置: 菜单文本:Java 命令:c:\java\bin\java.exe 参数:$(FileNameNoExt) 初始目录:$(FileDir) “命令”部分应当替换为实际的 Java 解释器的路径。 例子 2. Borland C++ 菜单文本:Borland C 命令:c:\bc\bin\bcc32.exe 参数:-Ic:\bc\include -Lc:\bc\lib -n$(FileDir) $(FilePath) 初始目录:c:\bc\bin 捕获输:开启 例子 3. Visual C++ 菜单文本:Visual C++ 命令:c:\msdev\vc98\bin\cl.exe 参数:”$(FilePath)” 初始目录:$(FileDir) 捕获输:开启 例子 4. Inno Setup 菜单文本:编译 Inno 命令:C:\Program Files\Inno Setup 4\Compil32.exe” 参数:/cc $(FileName) 初始目录:$(FileDir) 捕获输:开启 例子 5. nsis 菜单文本:编译 nsis 命令:C:\NSIS\makensis.exe 参数:$(FileName) 初始目录:$(FileDir) 捕获输:开启 例子 6. C# 菜单文本:编译 C# 命令:C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\csc.exe 参数:$(FileName) 初始目录:$(FileDir) 捕获输:开启 在上面设置中,在命令部分,必须使用系统中各自编译器的绝对路径。 设置完毕后,你可以在“工具”菜单运行对应工具了,运行结果会显示在底部的输窗口,你也可以通过快捷键(Ctrl + 0-9) 运行,或者是通过“用户工具栏”的快捷按钮运行。 要运行已编译的 *.exe 文件,你可以进行如下设置(此时可执行文件需要和编译文件同名): 菜单文本:Run 命令:$(FileNameNoExt) 参数: 初始目录:$(FileDir) 【15】工具集成—— 让Editplus调试PHP程序 1:打开Editplus,选择”工具->配置用户工具…”菜单。 2:在弹的窗口中选择”添加工具->应用程序”,给新程序起一个好记的名字,比如这里我们用”Debug PHP”,在”菜单文本”中输入”Debug PHP”。点击”命令行”右边的按钮,找到你的php.exe所在的路径,例如这里是”c:\php\php.exe”。再点击”参数”右边的下拉按钮选择”文件路径”,最后再把”捕获输”前面的复选框选上。 3:现在测试一下,新建一个php文件,按快捷键Ctrl+1可以激活刚才我们设置的工具(如果你设置了多个工具,快捷键可能会有所不同),现在你可以看到它已经能正常工作了。但是还有一点不太理想:如果你的PHP程序错,在输窗口会提示你第几行错 ,单击这一行提示,Editplus老是提示你找不到某某文件,是否新建。接下下我们要修正这个功能。 4:打开刚才用户工具设置窗口,找到刚才设置的”Debug PHP”工具。点击”捕获输”复选框旁边的”输模式”按钮,会弹一个定义输模式的窗体,把”使用默认输模式”前面的复选框去掉, 在”正则表达式”这一项的文本框中输入” ^.+ in (.+) line ([0-9]+) “(不包括引号),细心的朋友可能会发现,这里使用的也正则表达式的语法。然后,在下面的”文件名”下拉菜单中选择”预设表达式 1″,即上边正则表达式中的第一个参数,”行”下拉菜单项选择”预设表达式 2″,”列”下拉项保持为空。然后保存设置。 5:好了,现在再来试一下吧,双击错的行数,Editplus就会自动激活错文件,并把光标定位到错行,是不是特别方便呢?! 现在,Editplus经过我们的”改造“,已经可以即时的调试PHP文件了,虽然还不是”可视化”界面的,但对于一些平常的小程序来查错还是非常好用的。Editplus真是 款不可多得的好工具,如果你有什么使用技巧,不要忘了大家一起分享哦。^O^ 如果不能切换错误行号,请尝试作如下修改: (by aukw) 1.php.ini 中html_errors = Off打开 //如果你不打开,3.中的表达式要修改 2.参数改成:-q -f “$(FilePath)” //不加“符号的话文件名有空格的文件调试失败。。 //-q不输html头信息,你去掉也行,不过调试时候你一般用不到那些header信息 3.” ^.+ in (.+) line ([0-9]+) ” 改成 “^.+ in (.+) on line ([0-9]+)$” //如果还是不行,请注意调试结果,自己修改表达式来取文件名和行号 【16】工具集成——打造 PHP 调试环境(二) 1: 把剪辑库定位在 PHP4 Functions 上就可以在编辑时, 利用[插入]->[匹配剪辑]命令,就可以自动完成末输入完整的 PHP 函数(或直接按 F2 键) 2: 类似上面,在选择部分文字后,同样可以自动完成。(同 F2) 3: 在[参数选择]->[设置和语法]->PHP->自动完成, 选择目录下的 php.acp 文件,你可以定制自己的自动完成方式. 4: 想要即时预览文件,可在[参数选择]->[工具]->WEB 服务器中添加本地目录,(注意不要加 http:// , 应是一个有效的站点)。     如: 主机->localhost/php 根目录->D:\php 主机->localhost/asp 根目录->D:\asp 主机->localhost/cgi 根目录->D:\cgi 完成设置后只要脚本文件位于这些目录下(子目录也没问题), 就能够正确解释. 5: 各种语法和模板文件可以在 www.editplus.com 获得,可根据需要选用和编辑。 6: Ctrl+F11 可显示当前文件中的函数列表. 7: 添加各种用户工具.如: 启动MYSQL服务器管理工具->C:\mysql\bin\winmysqladmin.exe 启动Apache服务器->C:\Apache\bin\Apache.exe -k start 启动Apache服务器->C:\Apache\bin\Apache.exe -k stop (shutdown) 8: DBG 附带有一个 prof_results.php 文件,可剖析 PHP 程序的性能. 虽不是真正的调试器,但已经够了. OK! 经过改造后,是不是有点象一个 IDE 什么?还差点,没有即时帮助…看我的,再来: 9: 把 php_manual_en.chm (最好是扩展帮助手册)加入到用户工具中, 当遇到需要参考的关键字时, 把光标定位其上, 按下快捷键 Ctrl+1, 看到了吗. 在输入时有想不起来的函数名时, 先按照第 1 条的方法调函数, 然后…怎么样? 以上有的是对于调试工具的设置,由于此类工具比较多,大家设置时参考以上的基本就差不多了,所以就不过多的列举了。 【17】在 WINPE 中集成 EDITPLUS 可以基于目前的bartpe做得WINPE中,菜单使用nu2menu制作 默认位置为 \programs\editplus\ 默认系统位置为光盘的 i386 目录 i386/system32 的 autorun.bat 中添加外壳集成(系统右键) regedit /s %SystemDrive%\programs\editplus\REG.REG regsvr32 /s \programs\editplus\EPPSHELL.DLL 复制editplus安装包里面的文件到programs\editplus\,注意,如果有setting.ini,删掉该文件在nu2menu里面加入,可以根据需要安排位于特定菜单条目下 FUNC=”@GetProgramDrive()\Programs\EditPlus\editplus.exe”>本编辑
J2EE高级培训师面试题 时间:120分钟 一,填空题 1) 每个Servlet都必须实现()接口 a) javax.servlet.Servlet; b) javax.servlet.HttpServlet; c) javax.servlet.GenericServlet; d) javax.servlet.http.Servlet; 2) 利用JavaMail API发送邮件的过程中,()能获取正确的session对象。 a) Session mailsession=Session.getInstance(); b) Session mailsession=Session.getInstance(objProperties); c) Session mailsession = request.getSession(); d) Session mailsession= request.getInstance(objProperties); 参考答案 b 3) 下面是一JSP页面的代码,请问输结果是(). <%! int I =1; %> <% i = ++; %> <script>  function display(){  if(i == 1) {      alert("Is 1");    } else if(i==2) {  alert("Is 2"); }else{      alert("Is other");    }  }  display (); window.__INITIAL_STATE__= {"csrf":"6S6hqaqd-qSxA2mP8buJG33bmfNd_RSi4BJE","origin":"http:\u002F\u002Fbbs.csdn.net","isMobile":false,"cookie":"uuid_tt_dd=10_514649310-1713519930801-396289;","ip":"3.17.74.227","pageData":{"page":{"pageId":143,"title":"社区详情","keywords":"社区详情","description":"社区详情","ext":{"isMd":"true","armsfe1":"{pid:\"dyiaei5ihw@1a348e4d05c2c78\",appType:\"web\",imgUrl:\"https:\u002F\u002Farms-retcode.aliyuncs.com\u002Fr.png?\",sendResource:true,enableLinkTrace:true,behavior:true}","redPacketCfg":"{\"presetTitle\":[\"成就一亿技术人!\",\"大吉大利\",\"节日快乐\",\"Bug Free\",\"Hello World\",\"Be Greater Than Average!!\"],\"defaultTitle\":\"成就一亿技术人!\",\"preOpenSty\":{},\"redCardSty\":{}}","blogStar":"[{\"year\":\"2021\",\"enable\":true,\"communityIds\":[3859],\"url\":\"https:\u002F\u002Fbbs.csdn.net\u002Fsummary2021\"},{\"year\":\"2022\",\"enable\":true,\"communityIds\":[3860],\"url\":\"https:\u002F\u002Fbbs.csdn.net\u002Fsummary2022\"}]","mdVersion":"https:\u002F\u002Fcsdnimg.cn\u002Frelease\u002Fmarkdown-editor\u002F1.1.0\u002Fmarkdown-editor.js","componentSortCfg":"{ \"right\":[\"ratesInfo\",\"cty-profile\",\"pub-comp\",\"user-right-introduce\",\"post-event\",\"my-mission\",\"user-recommend\",\"user-right-rank\",\"user-right-rule\",\"user-right-adimg\"] }","show_1024":"{\"enable\":false,\"useWhitelist\":false,\"whitelist\":[76215],\"home\":\"https:\u002F\u002F1111.csdn.net\u002F\",\"logo\":\"https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221104102741.png\",\"hideLive\":true}","iframes":"[\"3859\"]","pageCfg":"{\"disableDownloadPDF\": false,\"hideSponsor\":false}"}},"template":{"templateId":71,"templateComponentName":"ccloud-detail","title":"ccloud-detail","floorList":[{"floorId":562,"floorComponentName":"floor-user-content","title":"社区详情页","description":"社区详情页","indexOrder":3,"componentList":[{"componentName":"baseInfo","componentDataId":"cloud-detail1","componentConfigData":{},"relationType":3},{"componentName":"user-right-introduce","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-recommend","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-rank","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-rule","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-adimg","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"default2014LiveRoom","componentDataId":"20221024DefaultLiveRoom","componentConfigData":{},"relationType":3}]}]},"data":{"baseInfo":{"customDomain":"","uriName":"Java_WebDevelop","communityHomePage":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJava_WebDevelop","owner":{"userName":"community_186","nickName":"Web 开发社区","avatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","position":"","companyName":""},"user":{"userRole":3,"userName":null,"nickName":null,"avatarUrl":null,"rank":null,"follow":2,"communityBase":null,"joinCollege":null,"isVIP":null},"community":{"name":"Web 开发","description":"Java Web 开发","avatarUrl":"https:\u002F\u002Fg.csdnimg.cn\u002Fstatic\u002Fuser-img\u002Fdefault-user.png","qrCode":"","createTime":"2007-09-28","communityAvatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","communityNotice":null,"userCount":81091,"contentCount":341719,"followersCount":52580,"communityRule":"","communityId":301,"bgImage":"","hashId":"dewqepwl","domain":"","uriName":"Java_WebDevelop","externalDisplay":1,"adBanner":{"img":"","url":"","adType":0,"adCon":null},"rightBanner":{"img":"","url":"","adType":0,"adCon":null},"tagId":null,"tagName":null,"communityType":1,"communityApplyUrl":"https:\u002F\u002Fmarketing.csdn.net\u002Fquestions\u002FQ2106040308026533763","joinType":0,"visibleType":0,"collapse":0,"topicMoveAble":0,"allowActions":{},"communityOwner":"community_186","tagNameInfo":{"provinceTag":null,"areaTag":null,"technologyTags":null,"customTags":null}},"tabList":[{"tabId":1460,"tabName":"全部","tabUrl":"","tabSwitch":1,"tabType":4,"tabContribute":0,"cardType":0,"indexOrder":-1,"url":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJava_WebDevelop?typeId=1460","iframe":false,"sortType":1},{"tabId":1635584,"tabName":"Ada助手","tabUrl":"","tabSwitch":1,"tabType":2,"tabContribute":0,"cardType":0,"indexOrder":20,"url":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJava_WebDevelop?typeId=1635584","iframe":false,"sortType":1}],"dataResource":{"mediaType":"c_cloud","subResourceType":"8_c_cloud_long_text","showType":"long_text","tabId":0,"communityName":"Web 开发","communityHomePageUrl":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJava_WebDevelop","communityType":1,"content":{"id":"10124263","contentId":10124263,"cateId":0,"cateName":null,"url":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F10124263","shareUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F10124263","createTime":"2002-04-19 05:08:42","updateTime":"2021-05-28 11:15:47","resourceUsername":"urchinjj","best":0,"top":0,"text":null,"publishDate":"2002-04-19","lastReplyDate":"2002-04-19","type":"13","nickname":"urchinjj","avatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","username":"urchinjj","commentCount":5,"diggNum":0,"digg":false,"viewCount":291,"hit":false,"resourceSource":6,"status":10,"taskStatus":null,"expired":false,"taskCate":0,"taskAward":0,"taskExpired":null,"checkRedPacket":null,"avgScore":0,"totalScore":0,"topicTitle":"如何在JSP中弹出对话框提示错误???","insertFirst":false,"likeInfo":null,"description":"我要从数据库里取出记录,当没有找到满足条件的记录时,我想用对话框的形式提示,并 退出此次查询,请问用什么方法?? 部分代码如下: Metadata mrecord=new Metadata(); try{ mrecord=model.getMetadata(); if (mrecord==null){ 在此提示用户没有满足条件的记录} } 谢谢谢谢~~~~~~~~~~","coverImg":"https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221026061829.png","content":"我要从数据库里取出记录,当没有找到满足条件的记录时,我想用对话框的形式提示,并\u003Cbr \u002F\u003E\n退出此次查询,请问用什么方法??\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\n部分代码如下:\u003Cbr \u002F\u003E\nMetadata mrecord=new Metadata();\u003Cbr \u002F\u003E\n try{\u003C!-- --\u003E\u003Cbr \u002F\u003E\n mrecord=model.getMetadata();\u003Cbr \u002F\u003E\n if (mrecord==null){\u003C!-- --\u003E\u003Cbr \u002F\u003E\n 在此提示用户没有满足条件的记录}\u003Cbr \u002F\u003E\n }\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\n谢谢谢谢~~~~~~~~~~","mdContent":null,"pictures":null,"videoInfo":null,"linkInfo":null,"student":{"isCertification":false,"org":"","bala":""},"employee":{"isCertification":false,"org":"","bala":""},"userCertification":[],"dependId":"0","dependSubType":null,"videoUrl":null,"favoriteCount":0,"favoriteStatus":false,"taskType":null,"defaultScore":null,"syncAsk":false,"videoPlayLength":null},"communityUser":null,"allowPost":false,"submitHistory":[{"user":{"registerurl":"https:\u002F\u002Fg.csdnimg.cn\u002Fstatic\u002Fuser-reg-year\u002F1x\u002F22.png","avatarurl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","nickname":"urchinjj","selfdesc":"","createdate":"2001-11-14 11:07:00","days":"8193","years":"22","username":"urchinjj","school":null,"company":null,"job":null},"userName":"urchinjj","event":"创建了帖子","body":"2002-04-19 05:08","editId":null}],"resourceExt":{}},"contentReply":{"pageNo":1,"pageSize":20,"totalPages":1,"totalCount":5,"total":0,"list":[{"hit":null,"hitMsg":null,"content":"用:\u003Cbr \u002F\u003E\nJOptionPane.showMessageDialog(this,"你要显示的消息!");","topicTitle":null,"description":"用: JOptionPane.showMessageDialog(this,\"你要显示的消息!\");","id":4659094,"contentResourceId":10124263,"bindContentResourceId":0,"communityId":301,"username":"slan","userNickName":"slan","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":0,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2002-04-19 11:40:32","updateTime":"2002-04-19 11:40:32","formatTime":"2002-04-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"很简单:\u003Cbr \u002F\u003E\nJOptionPane.showMessageDialog(this,"你要显示的消息");","topicTitle":null,"description":"很简单: JOptionPane.showMessageDialog(this,\"你要显示的消息\");","id":4659047,"contentResourceId":10124263,"bindContentResourceId":0,"communityId":301,"username":"slan","userNickName":"slan","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":0,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2002-04-19 11:35:01","updateTime":"2002-04-19 11:35:01","formatTime":"2002-04-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"把javascript夹在jsp里面\u003Cbr \u002F\u003E\n这样:\u003Cbr \u002F\u003E\n<%\u003Cbr \u002F\u003E\n......\u003Cbr \u002F\u003E\nif(你的条件)\u003Cbr \u002F\u003E\n{\u003C!-- --\u003E\u003Cbr \u002F\u003E\n%>\u003Cbr \u002F\u003E\n<script>alert('no record')<\u002Fscript>");\u003Cbr \u002F\u003E\n<%\u003Cbr \u002F\u003E\n}\u003Cbr \u002F\u003E\n......\u003Cbr \u002F\u003E\n%>","topicTitle":null,"description":"把javascript夹在jsp里面 这样: \u003C% ...... if(你的条件) { %\u003E \u003Cscript\u003Ealert('no record')\u003C\u002Fscript\u003E\"); \u003C% } ...... %\u003E","id":4657181,"contentResourceId":10124263,"bindContentResourceId":0,"communityId":301,"username":"Times2001","userNickName":"Times2001","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":0,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2002-04-19 09:02:07","updateTime":"2002-04-19 09:02:07","formatTime":"2002-04-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"就是啊,\u003Cbr \u002F\u003E\n用Javascript。","topicTitle":null,"description":"就是啊, 用Javascript。","id":4655616,"contentResourceId":10124263,"bindContentResourceId":0,"communityId":301,"username":"tyscon","userNickName":"tyscon","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":0,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2002-04-19 07:12:24","updateTime":"2002-04-19 07:12:24","formatTime":"2002-04-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"写上:out.println("<script>alert('no record')<\u002Fscript>");\u003Cbr \u002F\u003E\n我认为还是在页面写上表述信息比较好","topicTitle":null,"description":"写上:out.println(\"\u003Cscript\u003Ealert('no record')\u003C\u002Fscript\u003E\"); 我认为还是在页面写上表述信息比较好","id":4653566,"contentResourceId":10124263,"bindContentResourceId":0,"communityId":301,"username":"zhjx_10","userNickName":"zhjx_10","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":0,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2002-04-19 05:19:21","updateTime":"2002-04-19 05:19:21","formatTime":"2002-04-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null}],"maxPageSize":3000},"defaultActiveTab":1460,"recommends":[{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flinsiyu041\u002F4334894","title":"\u003Cem\u003Ejsp\u003C\u002Fem\u003E+sql+javabean用户登录页面","desc":"\u003Cem\u003Ejsp\u003C\u002Fem\u003E+sql+javabean用户登录页面\n用户在登录页面login.\u003Cem\u003Ejsp\u003C\u002Fem\u003E的两个文本框中分别输入用户名和密码,若输入正确(即:输入的数据和数据库中的数据相一致,使用JavaBean验证)则弹\u003Cem\u003E出\u003C\u002Fem\u003E\u003Cem\u003E对话框\u003C\u002Fem\u003E,显示\u003Cem\u003E提示\u003C\u002Fem\u003E信息“登录成功,确定后即可进行管理操作!”,否则\u003Cem\u003E提示\u003C\u002Fem\u003E“登录失败。用户名或密码\u003Cem\u003E错误\u003C\u002Fem\u003E,请重试!”。","createTime":"2012-05-28 16:50:04","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-4334894-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-4334894-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"1\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flinsiyu041\u002F4334894\",\"strategy\":\"2~default~OPENSEARCH~Paid\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-4334894-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"1\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flinsiyu041\u002F4334894\",\"strategy\":\"2~default~OPENSEARCH~Paid\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-4334894-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fweiping139\u002F783043","title":"\u003Cem\u003EJSP\u003C\u002Fem\u003E实验11(11月17日)的实验内容和源代码","desc":"实验1\n设计完成一个用户登录页面,可以实现以下功能:\n用户在登录页面的两个文本框中分别输入用户名和密码,若输入正确(即:输入的数据和数据库中的数据相一致)则弹\u003Cem\u003E出\u003C\u002Fem\u003E\u003Cem\u003E对话框\u003C\u002Fem\u003E,显示\u003Cem\u003E提示\u003C\u002Fem\u003E信息“登录成功,确定后即可进行管理操作!”,否则\u003Cem\u003E提示\u003C\u002Fem\u003E“登录失败。用户名或密码\u003Cem\u003E错误\u003C\u002Fem\u003E,请重试!”。\n\n实验2\n请设计一个程序,可以实现以下功能:\n1、修改管理员密码功能。管理员完成登录操作后,可以进行修改“密码”的操作,然后将新的密码值存放于数据库表中。\n2、添加用户名和密码的操作。管理员完成登录操作后,可以添加用户名和密码,以增加可以登录该系统的用户数量。\n\n两个实验采用“\u003Cem\u003EJSP\u003C\u002Fem\u003E+JAVABEAN”模式完成。","createTime":"2008-11-17 16:09:00","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-783043-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-783043-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"2\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fweiping139\u002F783043\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-783043-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"2\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fweiping139\u002F783043\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-783043-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F32139","title":"\u003Cem\u003EJSP\u003C\u002Fem\u003E极简实操入门","desc":"\u003Cem\u003EJSP\u003C\u002Fem\u003E入门知识,极简实操。内容包括:\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-脚本程序\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-中文编码\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-\u003Cem\u003EJSP\u003C\u002Fem\u003E声明\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-\u003Cem\u003EJSP\u003C\u002Fem\u003E表达式\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-\u003Cem\u003EJSP\u003C\u002Fem\u003E注释异常处理-1异常处理-2异常处理-3\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-判断语句(If…else块)\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-判断语句(switch…case块)\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-循环语句(for循环-1)\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-循环语句(for循环-2)\u003Cem\u003EJSP\u003C\u002Fem\u003E概述-循环语句(While循环)\u003Cem\u003Ejsp\u003C\u002Fem\u003E中include标签举例一\u003Cem\u003Ejsp\u003C\u002Fem\u003E中include标签举例二\u003Cem\u003Ejsp\u003C\u002Fem\u003E中param属性传值-1\u003Cem\u003Ejsp\u003C\u002Fem\u003E中param属性传值-2\u003Cem\u003Ejsp\u003C\u002Fem\u003E中useBean-1\u003Cem\u003Ejsp\u003C\u002Fem\u003E中useBean-2\u003Cem\u003Ejsp\u003C\u002Fem\u003E中useBean-3\u003Cem\u003Ejsp\u003C\u002Fem\u003E中的内置对象之一out\u003Cem\u003Ejsp\u003C\u002Fem\u003E中的内置对象之二page\u003Cem\u003Ejsp\u003C\u002Fem\u003E中的内置对象之三response\u003Cem\u003Ejsp\u003C\u002Fem\u003E的内置对象之四request对象-1\u003Cem\u003Ejsp\u003C\u002Fem\u003E的内置对象之四request对象-2","createTime":"2021-03-09 09:32:54","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-32139-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-32139-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"3\",\"dest\":\"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F32139\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-32139-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"3\",\"dest\":\"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F32139\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-32139-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"course"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fpjadice\u002F1556901","title":"editplus 代码编辑器html c++ \u003Cem\u003Ejsp\u003C\u002Fem\u003E css","desc":"已经破解的代码编辑器,免安装的里面有破解的注册码\n很小但是功能却很强大,编辑网页可以随时预览,能够多人工作。\n附使用手册:\nEditplus使用技巧\n技巧中,在编译器集成例子中参照了部分官方的文献。有几篇是从网上搜集来的,这里我注明了来源或原始作者。如果你是相应作者,不希望文章放在这里,请通知我,我会及时 删掉。\n\n——————————————————\n文章或者技巧及原始作者或\u003Cem\u003E出\u003C\u002Fem\u003E处:\n\n正则表达式类\n【1】 正则表达式应用——替换指定内容到行尾\n【2】 正则表达式应用——数字替换—————————-Microshaoft,jiuk2k\n【3】 正则表达式应用——删除每一行行尾的指定字符\n【4】 正则表达式应用——替换带有半角括号的多行\n【5】 正则表达式应用——删除空行—————————-江德华\n软件技巧类\n——————————————————\n【6】 软件技巧——键盘记录的注意事项\n【7】 软件技巧——关闭文档标签的便捷方法\n【8】 软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀\u003Cem\u003E提示\u003C\u002Fem\u003E?\n【9】 软件技巧——\u003Cem\u003E提示\u003C\u002Fem\u003E找不到语法文件的解决办法\n【10】软件技巧——设置editplus支持其它文字,如韩文———-jackywu1978\n【11】软件技巧——FTP 上传的设置—————————-李应文2.11汉化版\n【12】软件技巧——如何禁用备份文件功能?\n【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件\n工具集成类\n——————————————————\n【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis、C#)\n【15】工具集成——让Editplus调试PHP程序———————-avenger,aukw\n【16】工具集成——打造 PHP 调试环境(二)———————-老七2.11汉化版\n【17】在 WINPE 中集成 EDITPLUS \n\n【1】正则表达式应用——替换指定内容到行尾\n原始文本如下面两行\nabc aaaaa\n123 abc 444\n\n希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg”\n即上面的文本最终替换为:\nabc efg\n123 abc efg\n\n解决:\n① 在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E,查找内容里输入“abc.*”\n② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮\n其中,符号的含义如下:\n“.” =匹配任意字符\n“*” =匹配0次或更多\n\n注意:其实就是正则表达式替换,这里只是把一些曾经提\u003Cem\u003E出\u003C\u002Fem\u003E的问题加以整理,单纯从正则表达式本身来说,就可以引申\u003Cem\u003E出\u003C\u002Fem\u003E成千上万种特例。\n\n【2】正则表达式应用——数字替换\n希望把\nasdadas123asdasdas456asdasdasd789asdasd\n替换为:\nasdadas[123]asdasdas[456]asdasdasd[789]asdasd\n\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E里面,勾选“正则表达式”复选框;\n在查找内容里面输入“[0-9][0-9][0-9]”,不含引号\n“替换为:”里面输入“[\\0\\1\\2]”,不含引号\n范围为你所操作的范围,然后选择替换即可。\n\n实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例\n\n\n【1】正则表达式应用——替换指定内容到行尾\n原始文本如下面两行\nabc aaaaa\n123 abc 444\n希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg”\n即上面的文本最终替换为:\nabc efg\n123 abc efg\n解决:\n① 在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E,查找内容里输入“abc.*”\n② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮\n其中,符号的含义如下:\n“.” =匹配任意字符\n“*” =匹配0次或更多\n注意:其实就是正则表达式替换,这里只是把一些曾经提\u003Cem\u003E出\u003C\u002Fem\u003E的问题加以整理,单纯从正则表达式本身来说,就可以引申\u003Cem\u003E出\u003C\u002Fem\u003E成千上万种特例。\n【2】正则表达式应用——数字替换 (Microshaoft@CCF,jiuk2k@CCF)\n希望把\nasdadas123asdasdas456asdasdasd789asdasd\n替换为:\nasdadas[123]asdasdas[456]asdasdasd[789]asdasd\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E里面,勾选“正则表达式”复选框;\n在查找内容里面输入“[0-9][0-9][0-9]”,不含引号\n“替换为:”里面输入“[\\0\\1\\2]”,不含引号\n范围为你所操作的范围,然后选择替换即可。\n实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例\n上面重复使用了“[0-9]”,表示连续\u003Cem\u003E出\u003C\u002Fem\u003E现的三个数字\n“\\0”代表第一个“[0-9]”对应的原型,“\\1”代表第二个“[0-9]”对应的原型,依此类推\n“[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\\0\\1\\2其它”,则替换结果为:\nasdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd\n功能增强(by jiuk2k@CCF):\n如果将查找内容“[0-9][0-9][0-9]”改为“[0-9]*[0-9]”,对应1 或 123 或 12345 或 …\n大家根据需要定制\n相关内容还有很多,可以自己参考正则表达式的语法仔细研究一下\n【3】正则表达式应用——删除每一行行尾的指定字符 \n因为这几个字符在行中也是\u003Cem\u003E出\u003C\u002Fem\u003E现的,所以肯定不能用简单的替换实现\n比如\n12345 1265345\n2345\n需要删除每行末尾的“345”\n这个也算正则表达式的用法,其实仔细看正则表达式应该比较简单,不过既然有这个问题提\u003Cem\u003E出\u003C\u002Fem\u003E,说明对正则表达式还得有个认识过程,解决方法如下\n解决:\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E中,启用“正则表达式”复选框\n在查找内容里面输入“345$”\n这里“$”表示从行尾匹配\n如果从行首匹配,可以用“^”来实现,不过 EditPlus 有另一个功能可以很简单的删除行首的字符串\na. 选择要操作的行\nb. 编辑-格式-删除行注释\nc. 在弹\u003Cem\u003E出\u003C\u002Fem\u003E\u003Cem\u003E对话框\u003C\u002Fem\u003E里面输入要清除的行首字符,确定\n【4】正则表达式应用——替换带有半角括号的多行\n几百个网页中都有下面一段代码:\n我想把它们都去掉,可是找了很多search & replace的软件,都是只能对“一行”进行操作。\nEditPlus 打开几百个网页文件还是比较顺畅的,所以完全可以胜任这个工作。\n具体解决方法,在 Editplus 中使用正则表达式,由于“(”、“)”被用做预设表达式(或者可以称作子表达式)的标志,所以查找\n“ \\n”\n时会\u003Cem\u003E提示\u003C\u002Fem\u003E查找不到,所以也就无法进行替换了,这时可以把“(”、“)”使用任意字符标记替代,即半角句号:“.”。替换内容为\n\\n\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E启用“正则表达式”选项,这时就可以完成替换了\n补充:(lucida@DRL)\n对( ) 这样的特殊符号,应该用\\( \\)来表示,这也是很标准的regexp语法,可以写为\n\\n\n【5】正则表达式应用——删除空行\n启动EditPlus,打开待处理的文本类型文件。\n①、选择“查找”菜单的“替换”命令,弹\u003Cem\u003E出\u003C\u002Fem\u003E文本替换\u003Cem\u003E对话框\u003C\u002Fem\u003E。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。然后,选中“替换范围”中的“当前文件”,表明对当前文件操作。\n②、单击“查找内容”组合框右侧的按钮,\u003Cem\u003E出\u003C\u002Fem\u003E现下拉菜单。\n③、下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧\u003Cem\u003E提示\u003C\u002Fem\u003E:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。\n直接在\"查找\"中输入正则表达式“^[ \\t]*\\n”,注意\\t前有空格符。\n(1)选择“从行首开始匹配”,“查找内容”组合框中\u003Cem\u003E出\u003C\u002Fem\u003E现字符“^”,表示待查找字符串必须\u003Cem\u003E出\u003C\u002Fem\u003E现在文本中一行的行首。\n(2)选择“字符在范围中”,那么在“^”后会增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。\n(3)按一下空格键,添加空格符。空格符是空行的一个组成成分。\n(4)选择“制表符”,添加代表制表符的“\\t”。\n(5)移动光标,将当前插入点移到“]”之后,然后选择“匹配 0 次或更多”,该操作会添加星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中\u003Cem\u003E出\u003C\u002Fem\u003E现0个或多个。\n(6)选择“换行符”,插入“\\n”,表示回车符。\n④、“替换为”组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus有时存在“全部替换”不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。\n【6】软件技巧——键盘记录的注意事项\nEditPlus的键盘记录有些类似于 UltraEdit 的宏操作,不过功能相对单一,录制的文件可编辑性较差。\n由于基本无法编辑录制的文件,所以录制的时候为了避免录制失败,推荐纯粹使用键盘操作,以下是比较关键的几个键盘组合:\nCtrl+F = 调\u003Cem\u003E出\u003C\u002Fem\u003E查找\u003Cem\u003E对话框\u003C\u002Fem\u003E\nCtrl+H = 调\u003Cem\u003E出\u003C\u002Fem\u003E替换\u003Cem\u003E对话框\u003C\u002Fem\u003E\nAlt+F4 = 关闭作用,比如,关闭查找\u003Cem\u003E对话框\u003C\u002Fem\u003E、关闭替换\u003Cem\u003E对话框\u003C\u002Fem\u003E,等等\n其它键盘快捷键在“帮助-快捷键列表”里面可以很容易的查找到,这里就\n细说了。\n【7】软件技巧——关闭文档标签的便捷方法\n右键单击文档标签工具条,弹\u003Cem\u003E出\u003C\u002Fem\u003E菜单中选择“标签选项”,选中“用鼠标中间的按钮关闭”,这里包括鼠标的滚轮。\n【8】软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀\u003Cem\u003E提示\u003C\u002Fem\u003E?\n如果你使用 EditPlus 进行文本编辑,那么每次创建文本文件,编辑后保存时,尽管文件类型下拉列表中显示的是文本文件, EditPlus 还是询问你是否添加\".txt\"后缀,是不是很烦?\n解决方法:\n① 在程序目录建立一个空的文件“template.txt”\n② “工具-参数设置-模板”里面,单击“添加”按钮添加模板,“菜单文本”这里输入“Text”,浏览“template.txt”,之后确定即可\n③ “文件-新建-text”,就可以建立一个空的文本文件,保存时,这个文件自动带有扩展名\".txt\",也就避免了令人头疼的确认\n④ 模板设置文件名称为“template.ini”,如果和主程序同一路径,可以使用相对路径\n罗嗦了点,不过管用 \n要自动创建带有某种后缀的文件,方法同上。\n【9】软件技巧——\u003Cem\u003E提示\u003C\u002Fem\u003E找不到语法文件 *.stx 的解决办法\n原因多为设置的语法文件不存在或者是路径设置不对。这是因为 EditPlus 的语法是设置文件采用的是绝对路径,而在你设置了语法文件之后,再把程序复制到其它目录,因而导致 EditPlus 无法找到该语法文件。\n解决办法:\n在主程序目录里,找到 Setting.ini 这是 EditPlus 存放语法的文件\n查找后缀为“.stx”、“acp”的文本内容,或者查找带有驱动器符号的行,比如\nSyntax file=C:\\Program Files\\EditPlus 2\\cpp.stx\n那么,就把”C:\\Program Files\\EditPlus 2\\“替换成你当前软件的路径。\n其它\u003Cem\u003E提示\u003C\u002Fem\u003E找不到文件的解决方法同上\n【10】软件技巧——设置editplus支持其它文字,如韩文\n在editplus里打开文件,\u003Cem\u003E出\u003C\u002Fem\u003E来打开文件\u003Cem\u003E对话框\u003C\u002Fem\u003E;然后点击“转换器”后面的那个省略号,会\u003Cem\u003E出\u003C\u002Fem\u003E来自定义转换器\u003Cem\u003E对话框\u003C\u002Fem\u003E;在右边选择你需要的编码方式,添加到左边,然后点确定;最后在下拉框中选择需要的编码方式,然后打开文件即可。\n【11】软件技巧——FTP 上传的设置\n“文件-\u003E远程操作-\u003EFTP 上传”在“设置”选项卡中设置好参数(“子目录”前面应该加“\u002F”如“\u002Fweb\u002F”),点击“确定”回到“FTP 上传”选项卡,然后点击“上传”即可;“批量上传”的设置类似。\n【12】软件技巧——如何禁用备份文件功能?\n在“参数选择”的文件选项页,禁用“'保存时自动创建备份文件”选项\n【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件\n要添加 *.STX(语法文件)或 *.ACP(自动完成文件):\n1. 选择“参数选择→语法”\n2. 单击“添加”按钮,命名,在“扩展名”部分输入对应扩展名(不带“.”)\n3. 浏览\u002F输入 STX(语法文件部分) 以及 ACP(自动完成文件部分)。\n添加剪辑库文件(*.CTL)\n复制相应 *.CTL 文件到软件安装目录,重新启动 EditPlus ,则系统自动识别。\n\n上面重复使用了“[0-9]”,表示连续\u003Cem\u003E出\u003C\u002Fem\u003E现的三个数字\n“\\0”代表第一个“[0-9]”对应的原型,“\\1”代表第二个“[0-9]”对应的原型,依此类推\n“[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\\0\\1\\2其它”,则替换结果为:\n\nasdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd\n\n功能增强(by jiuk2k):\n如果将查找内容“[0-9][0-9][0-9]”改为“[0-9]*[0-9]”,对应1 或 123 或 12345 或 …\n大家根据需要定制\n\n相关内容还有很多,可以自己参考正则表达式的语法仔细研究一下\n\n【3】正则表达式应用——删除每一行行尾的指定字符\n因为这几个字符在行中也是\u003Cem\u003E出\u003C\u002Fem\u003E现的,所以肯定不能用简单的替换实现\n比如\n12345 1265345\n2345\n需要删除每行末尾的“345”\n这个也算正则表达式的用法,其实仔细看正则表达式应该比较简单,不过既然有这个问题提\u003Cem\u003E出\u003C\u002Fem\u003E,说明对正则表达式还得有个认识过程,解决方法如下\n解决:\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E中,启用“正则表达式”复选框\n在查找内容里面输入“345$”\n这里“$”表示从行尾匹配\n\n如果从行首匹配,可以用“^”来实现,不过 EditPlus 有另一个功能可以很简单的删除行首的字符串\na. 选择要操作的行\nb. 编辑-格式-删除行注释\nc. 在弹\u003Cem\u003E出\u003C\u002Fem\u003E\u003Cem\u003E对话框\u003C\u002Fem\u003E里面输入要清除的行首字符,确定\n\n【4】正则表达式应用——替换带有半角括号的多行\n几百个网页中都有下面一段代码:\n\\n\n在替换\u003Cem\u003E对话框\u003C\u002Fem\u003E启用“正则表达式”选项,这时就可以完成替换了\n\n【5】正则表达式应用——删除空行\n启动EditPlus,打开待处理的文本类型文件。\n①、选择“查找”菜单的“替换”命令,弹\u003Cem\u003E出\u003C\u002Fem\u003E文本替换\u003Cem\u003E对话框\u003C\u002Fem\u003E。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。然后,选中“替换范围”中的“当前文件”,表明对当前文件操作。\n②、单击“查找内容”组合框右侧的按钮,\u003Cem\u003E出\u003C\u002Fem\u003E现下拉菜单。\n③、下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧\u003Cem\u003E提示\u003C\u002Fem\u003E:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。\n直接在”查找”中输入正则表达式“^[ \\t]*\\n”,注意\\t前有空格符。\n(1)选择“从行首开始匹配”,“查找内容”组合框中\u003Cem\u003E出\u003C\u002Fem\u003E现字符“^”,表示待查找字符串必须\u003Cem\u003E出\u003C\u002Fem\u003E现在文本中一行的行首。\n(2)选择“字符在范围中”,那么在“^”后会增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。\n(3)按一下空格键,添加空格符。空格符是空行的一个组成成分。\n(4)选择“制表符”,添加代表制表符的“\\t”。\n(5)移动光标,将当前插入点移到“]”之后,然后选择“匹配 0 次或更多”,该操作会添加星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中\u003Cem\u003E出\u003C\u002Fem\u003E现0个或多个。\n(6)选择“换行符”,插入“\\n”,表示回车符。\n④、“替换为”组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus有时存在“全部替换”不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。\n\n【6】软件技巧——键盘记录的注意事项\nEditPlus 的键盘记录有些类似于 UltraEdit 的宏操作,不过功能相对单一,录制的文件可编辑性较差。\n由于基本无法编辑录制的文件,所以录制的时候为了避免录制失败,推荐纯粹使用键盘操作,以下是比较关键的几个键盘组合:\n\nCtrl+F = 调\u003Cem\u003E出\u003C\u002Fem\u003E查找\u003Cem\u003E对话框\u003C\u002Fem\u003E\nCtrl+H = 调\u003Cem\u003E出\u003C\u002Fem\u003E替换\u003Cem\u003E对话框\u003C\u002Fem\u003E\nAlt+F4 = 关闭作用,比如,关闭查找\u003Cem\u003E对话框\u003C\u002Fem\u003E、关闭替换\u003Cem\u003E对话框\u003C\u002Fem\u003E,等等\n其它键盘快捷键在“帮助-快捷键列表”里面可以很容易的查找到,这里就\n细说了。\n\n【7】软件技巧——关闭文档标签的便捷方法\n右键单击文档标签工具条,弹\u003Cem\u003E出\u003C\u002Fem\u003E菜单中选择“标签选项”,选中“用鼠标中间的按钮关闭”,这里包括鼠标的滚轮。\n\n【8】软件技巧——如何去掉 EditPlus 保存文本文件时的添加后缀\u003Cem\u003E提示\u003C\u002Fem\u003E?\n如果你使用 EditPlus 进行文本编辑,那么每次创建文本文件,编辑后保存时,尽管文件类型下拉列表中显示的是文本文件, EditPlus 还是询问你是否添加“.txt”后缀,是不是很烦?\n解决方法:\n① 在程序目录建立一个空的文件“template.txt”\n② “工具-参数设置-模板”里面,单击“添加”按钮添加模板,“菜单文本”这里输入“Text”,浏览“template.txt”,之后确定即可\n③ “文件-新建-text”,就可以建立一个空的文本文件,保存时,这个文件自动带有扩展名”.txt”,也就避免了令人头疼的确认\n④ 模板设置文件名称为“template.ini”,如果和主程序同一路径,可以使用相对路径\n罗嗦了点,不过管用\n要自动创建带有某种后缀的文件,方法同上。\n\n【9】软件技巧——\u003Cem\u003E提示\u003C\u002Fem\u003E找不到语法文件 *.stx 的解决办法\n原因多为设置的语法文件不存在或者是路径设置不对。这是因为 EditPlus 的语法是设置文件采用的是绝对路径,而在你设置了语法文件之后,再把程序复制到其它目录,因而导致 EditPlus 无法找到该语法文件。\n解决办法:\n在主程序目录里,找到 Setting.ini 这是 EditPlus 存放语法的文件\n查找后缀为“.stx”、“acp”的文本内容,或者查找带有驱动器符号的行,比如\nSyntax file=C:\\Program Files\\EditPlus 2\\cpp.stx\n那么,就把”C:\\Program Files\\EditPlus 2\\“替换成你当前软件的路径。\n其它\u003Cem\u003E提示\u003C\u002Fem\u003E找不到文件的解决方法同上\n\n【10】软件技巧——设置editplus支持其它文字,如韩文\n在editplus里打开文件,\u003Cem\u003E出\u003C\u002Fem\u003E来打开文件\u003Cem\u003E对话框\u003C\u002Fem\u003E;然后点击“转换器”后面的那个省略号,会\u003Cem\u003E出\u003C\u002Fem\u003E来自定义转换器\u003Cem\u003E对话框\u003C\u002Fem\u003E;在右边选择你需要的编码方式,添加到左边,然后点确定;最后在下拉框中选择需要的编码方式,然后打开文件即可。\n\n【11】软件技巧——FTP 上传的设置\n“文件-\u003E远程操作-\u003EFTP 上传”在“设置”选项卡中设置好参数(“子目录”前面应该加“\u002F”如“\u002Fweb\u002F”),点击“确定”回到“FTP 上传”选项卡,然后点击“上传”即可;“批量上传”的设置类似。\n\n【12】软件技巧——如何禁用备份文件功能?\n在“参数选择”的文件选项页,禁用“’保存时自动创建备份文件”选项\n\n【13】软件技巧——添加语法文件、自动完成文件、以及剪辑库文件\n要添加 *.STX(语法文件)或 *.ACP(自动完成文件):\n1. 选择“参数选择→语法”\n2. 单击“添加”按钮,命名,在“扩展名”部分输入对应扩展名(不带“.”)\n3. 浏览\u002F输入 STX(语法文件部分) 以及 ACP(自动完成文件部分)。\n添加剪辑库文件(*.CTL)\n复制相应 *.CTL 文件到软件安装目录,重新启动 EditPlus ,则系统自动识别。\n\n【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis)\n在“工具→参数选择→用户工具”选项页设置,设置步骤\n\n 设置组名称,这里也可以不设置\n② 单击“添加工具→应用程序”按钮并进行如下设置\n③ 各种类似”$(FilePath)”的参数可以在文本框右侧的箭头下拉菜单中获取,具体含义如下\n参数 描述\n$(FilePath) 文件路径(文件全名,含目录和文件名)\n$(FileDir) 文件目录(不带文件名)\n$(FileName) 文件名(不带目录)\n$(FileNameNoExt) 不带扩展名的文件名(不带目录)\n$(FileExt) 扩展名(当前文件)\n$(ProjectName) 工程名称(当前工程名)\n$(CurLine) 当前行号(光标位置处的行号)\n$(CurCol) 当前列号(光标位置处的列号)\n$(CurSel) 当前文本(插入当前选定文本)\n$(CurWord) 当前单词(插入当前单词)\n$(WindowList) 显示当前窗口列表并选择特定文件\n\n例子 1. Java 编译器\n\n菜单文本:Java 编译器\n命令:c:\\java\\bin\\javac.exe\n参数:”$(FilePath)”\n初始目录:$(FileDir)\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n要运行已编译的 Java 类文件,你可以进行如下设置:\n菜单文本:Java\n命令:c:\\java\\bin\\java.exe\n参数:$(FileNameNoExt)\n初始目录:$(FileDir)\n“命令”部分应当替换为实际的 Java 解释器的路径。\n\n例子 2. Borland C++\n\n菜单文本:Borland C\n命令:c:\\bc\\bin\\bcc32.exe\n参数:-Ic:\\bc\\include -Lc:\\bc\\lib -n$(FileDir) $(FilePath)\n初始目录:c:\\bc\\bin\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n例子 3. Visual C++\n\n菜单文本:Visual C++\n命令:c:\\msdev\\vc98\\bin\\cl.exe\n参数:”$(FilePath)”\n初始目录:$(FileDir)\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n例子 4. Inno Setup\n菜单文本:编译 Inno\n命令:C:\\Program Files\\Inno Setup 4\\Compil32.exe”\n参数:\u002Fcc $(FileName)\n初始目录:$(FileDir)\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n例子 5. nsis\n菜单文本:编译 nsis\n命令:C:\\NSIS\\makensis.exe\n参数:$(FileName)\n初始目录:$(FileDir)\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n例子 6. C#\n菜单文本:编译 C#\n命令:C:\\WINDOWS\\Microsoft.NET\\Framework\\v1.0.3705\\csc.exe\n参数:$(FileName)\n初始目录:$(FileDir)\n捕获输\u003Cem\u003E出\u003C\u002Fem\u003E:开启\n\n在上面设置中,在命令部分,必须使用系统中各自编译器的绝对路径。\n\n设置完毕后,你可以在“工具”菜单运行对应工具了,运行结果会显示在底部的输\u003Cem\u003E出\u003C\u002Fem\u003E窗口,你也可以通过快捷键(Ctrl + 0-9) 运行,或者是通过“用户工具栏”的快捷按钮运行。\n\n要运行已编译的 *.exe 文件,你可以进行如下设置(此时可执行文件需要和编译文件同名):\n菜单文本:Run\n命令:$(FileNameNoExt)\n参数:\n初始目录:$(FileDir)\n\n【15】工具集成—— 让Editplus调试PHP程序\n\n1:打开Editplus,选择”工具-\u003E配置用户工具…”菜单。\n2:在弹\u003Cem\u003E出\u003C\u002Fem\u003E的窗口中选择”添加工具-\u003E应用程序”,给新程序起一个好记的名字,比如这里我们用”Debug PHP”,在”菜单文本”中输入”Debug PHP”。点击”命令行”右边的按钮,找到你的php.exe所在的路径,例如这里是”c:\\php\\php.exe”。再点击”参数”右边的下拉按钮选择”文件路径”,最后再把”捕获输\u003Cem\u003E出\u003C\u002Fem\u003E”前面的复选框选上。\n3:现在测试一下,新建一个php文件,按快捷键Ctrl+1可以激活刚才我们设置的工具(如果你设置了多个工具,快捷键可能会有所不同),现在你可以看到它已经能正常工作了。但是还有一点不太理想:如果你的PHP程序\u003Cem\u003E出\u003C\u002Fem\u003E错,在输\u003Cem\u003E出\u003C\u002Fem\u003E窗口会\u003Cem\u003E提示\u003C\u002Fem\u003E你第几行\u003Cem\u003E出\u003C\u002Fem\u003E错 ,单击这一行\u003Cem\u003E提示\u003C\u002Fem\u003E,Editplus老是\u003Cem\u003E提示\u003C\u002Fem\u003E你找不到某某文件,是否新建。接下下我们要修正这个功能。\n4:打开刚才用户工具设置窗口,找到刚才设置的”Debug PHP”工具。点击”捕获输\u003Cem\u003E出\u003C\u002Fem\u003E”复选框旁边的”输\u003Cem\u003E出\u003C\u002Fem\u003E模式”按钮,会弹\u003Cem\u003E出\u003C\u002Fem\u003E一个定义输\u003Cem\u003E出\u003C\u002Fem\u003E模式的窗体,把”使用默认输\u003Cem\u003E出\u003C\u002Fem\u003E模式”前面的复选框去掉, 在”正则表达式”这一项的文本框中输入” ^.+ in (.+) line ([0-9]+) “(不包括引号),细心的朋友可能会发现,这里使用的也正则表达式的语法。然后,在下面的”文件名”下拉菜单中选择”预设表达式 1″,即上边正则表达式中的第一个参数,”行”下拉菜单项选择”预设表达式 2″,”列”下拉项保持为空。然后保存设置。\n5:好了,现在再来试一下吧,双击\u003Cem\u003E出\u003C\u002Fem\u003E错的行数,Editplus就会自动激活\u003Cem\u003E出\u003C\u002Fem\u003E错文件,并把光标定位到\u003Cem\u003E出\u003C\u002Fem\u003E错行,是不是特别方便呢?!\n现在,Editplus经过我们的”改造“,已经可以即时的调试PHP文件了,虽然还不是”可视化”界面的,但对于一些平常的小程序来查错还是非常好用的。Editplus真是\n款不可多得的好工具,如果你有什么使用技巧,不要忘了大家一起分享哦。^O^\n\n如果不能切换\u003Cem\u003E错误\u003C\u002Fem\u003E行号,请尝试作如下修改: (by aukw)\n1.php.ini 中html_errors = Off打开\n\u002F\u002F如果你不打开,3.中的表达式要修改\n2.参数改成:-q -f “$(FilePath)”\n\u002F\u002F不加“符号的话文件名有空格的文件调试失败。。\n\u002F\u002F-q不输\u003Cem\u003E出\u003C\u002Fem\u003Ehtml头信息,你去掉也行,不过调试时候你一般用不到那些header信息\n3.” ^.+ in (.+) line ([0-9]+) ” 改成 “^.+ in (.+) on line ([0-9]+)$”\n\u002F\u002F如果还是不行,请注意调试结果,自己修改表达式来取\u003Cem\u003E出\u003C\u002Fem\u003E文件名和行号\n\n【16】工具集成——打造 PHP 调试环境(二)\n1: 把剪辑库定位在 PHP4 Functions 上就可以在编辑时, 利用[插入]-\u003E[匹配剪辑]命令,就可以自动完成末输入完整的 PHP 函数(或直接按 F2 键)\n2: 类似上面,在选择部分文字后,同样可以自动完成。(同 F2)\n3: 在[参数选择]-\u003E[设置和语法]-\u003EPHP-\u003E自动完成, 选择目录下的 php.acp 文件,你可以定制自己的自动完成方式.\n4: 想要即时预览文件,可在[参数选择]-\u003E[工具]-\u003EWEB 服务器中添加本地目录,(注意不要加 http:\u002F\u002F , 应是一个有效的站点)。\n    如: 主机-\u003Elocalhost\u002Fphp 根目录-\u003ED:\\php\n主机-\u003Elocalhost\u002Fasp 根目录-\u003ED:\\asp\n主机-\u003Elocalhost\u002Fcgi 根目录-\u003ED:\\cgi\n完成设置后只要脚本文件位于这些目录下(子目录也没问题), 就能够正确解释. 5: 各种语法和模板文件可以在 www.editplus.com 获得,可根据需要选用和编辑。\n6: Ctrl+F11 可显示当前文件中的函数列表.\n7: 添加各种用户工具.如:\n启动MYSQL服务器管理工具-\u003EC:\\mysql\\bin\\winmysqladmin.exe\n启动Apache服务器-\u003EC:\\Apache\\bin\\Apache.exe -k start\n启动Apache服务器-\u003EC:\\Apache\\bin\\Apache.exe -k stop (shutdown)\n8: DBG 附带有一个 prof_results.php 文件,可剖析 PHP 程序的性能.\n虽不是真正的调试器,但已经够了.\nOK! 经过改造后,是不是有点象一个 IDE 什么?还差点,没有即时帮助…看我的,再来:\n9: 把 php_manual_en.chm (最好是扩展帮助手册)加入到用户工具中, 当遇到需要参考的关键字时, 把光标定位其上, 按下快捷键 Ctrl+1, 看到了吗.\n在输入时有想不起来的函数名时, 先按照第 1 条的方法调\u003Cem\u003E出\u003C\u002Fem\u003E函数, 然后…怎么样?\n\n以上有的是对于调试工具的设置,由于此类工具比较多,大家设置时参考以上的基本就差不多了,所以就不过多的列举了。\n\n【17】在 WINPE 中集成 EDITPLUS\n可以基于目前的bartpe做得WINPE中,菜单使用nu2menu制作\n\n默认位置为 \\programs\\editplus\\\n默认系统位置为光盘的 i386 目录\n\ni386\u002Fsystem32 的 autorun.bat 中添加外壳集成(系统右键)\nregedit \u002Fs %SystemDrive%\\programs\\editplus\\REG.REG\nregsvr32 \u002Fs \\programs\\editplus\\EPPSHELL.DLL\n\n复制editplus安装包里面的文件到programs\\editplus\\,注意,如果有setting.ini,删掉该文件在nu2menu里面加入,可以根据需要安排位于特定菜单条目下\nFUNC=”@GetProgramDrive()\\Programs\\EditPlus\\editplus.exe”\u003E本编辑","createTime":"2009-08-08 13:00:27","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-1556901-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-1556901-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"4\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fpjadice\u002F1556901\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-1556901-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"4\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fpjadice\u002F1556901\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-1556901-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282","title":"J2EE面试题","desc":"J2EE高级培训师面试题\n\t时间:120分钟\n\n\n一,填空题\n\n1)\t每个Servlet都必须实现()接口 \n\t\t\n\ta)\tjavax.servlet.Servlet;\n\tb)\tjavax.servlet.HttpServlet;\n\tc)\tjavax.servlet.GenericServlet;\n\td)\tjavax.servlet.http.Servlet;\n\n\n\n2)\t利用JavaMail API发送邮件的过程中,()能获取正确的session对象。\n\t\t\n\ta)\tSession mailsession=Session.getInstance();\n\tb)\tSession mailsession=Session.getInstance(objProperties);\n\tc)\tSession mailsession = request.getSession();\n\td)\tSession mailsession= request.getInstance(objProperties);\n参考答案\tb\n\n\n\n3)\t下面是一\u003Cem\u003EJSP\u003C\u002Fem\u003E页面的代码,请问输\u003Cem\u003E出\u003C\u002Fem\u003E结果是().\n\u003Chtml\u003E \u003C%! int I =1; %\u003E \u003C% i = ++; %\u003E \u003Chead\u003E\u003C\u002Fhead\u003E \u003Cbody\u003E \u003Cscript\u003E  function display(){ \n\t if(i == 1) {      alert(\"Is 1\");    } else if(i==2) {\n\t alert(\"Is 2\"); \n\t}else{      alert(\"Is other\");    }  }  display (); \u003C\u002Fscript\u003E \u003C\u002Fbody\u003E \u003C\u002Fhtml\u003E\n\t\t\n\ta)\t什么也不输\u003Cem\u003E出\u003C\u002Fem\u003E。\n\tb)\t弹\u003Cem\u003E出\u003C\u002Fem\u003E内容为“Is 1”的\u003Cem\u003E对话框\u003C\u002Fem\u003E。\n\tc)\t弹\u003Cem\u003E出\u003C\u002Fem\u003E内容为“Is 2”的\u003Cem\u003E对话框\u003C\u002Fem\u003E。\n\td)\t当第一次访问这个程序时,弹\u003Cem\u003E出\u003C\u002Fem\u003E一个内容为\"Is other\"的\u003Cem\u003E对话框\u003C\u002Fem\u003E,从第二次开始,每次访问这个程序都弹\u003Cem\u003E出\u003C\u002Fem\u003E内容为“Is 2”的\u003Cem\u003E对话框\u003C\u002Fem\u003E。\n\te\t当第一次访问这个程序时,弹\u003Cem\u003E出\u003C\u002Fem\u003E一个内容为\"Is 1\"的\u003Cem\u003E对话框\u003C\u002Fem\u003E,从第二次开始,每次访问这个程序都弹\u003Cem\u003E出\u003C\u002Fem\u003E内容为“Is 2”的\u003Cem\u003E对话框\u003C\u002Fem\u003E。\n参考答案\ta\n\n4)\t下面是一\u003Cem\u003EJSP\u003C\u002Fem\u003E页面的片断代码,请问页面输\u003Cem\u003E出\u003C\u002Fem\u003E结果是().\n\u003C% \n\tStringBuffer buffer =new StringBuffer (”Hello”);\n\tbuffer.append(“World”);\n\tSystem.out.println(buffer.toString());\n%\u003E\n\t\t\n\ta)\tHello\n\tb)\tWorld\n\tc)\tHelloWorld\n\td)\t什么也不输\u003Cem\u003E出\u003C\u002Fem\u003E\n参考答案\td\n\n\n\n5)\taa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E文件如下:\n\u003C%! static int I=0; int j=0; %\u003E\n\u003Chtml\u003E\n\u003Cbody\u003E\n\u003C% for(;I++\u003C2;)\n { out.print(j++); out.print(\" \");}\n%\u003E\n\u003C\u002Fbody\u003E\n\u003C\u002Fhtml\u003E\n两个客户依次使用浏览器浏览aa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E,且每个客户只浏览一次,那么,第2个客户的浏览器将显示什么?\te\n\t\t\t\n\ta)\t0 1\t\n\tb)\t1 2\t\n\tc)\t3 4\t\n\td)\t5 6\t\n\te)\t什么也没有\t\n\n\n\n\n\n6)\t如果用\u003Cem\u003EJSP\u003C\u002Fem\u003E开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。\n\t\t\n\ta)\trequest\n\tb)\tpage\n\tc)\tsession\n\td)\tapplication\n参考答案\td\n\n\n\n7)\t在web.xml中,有如下代码:\n\u003Csession-config\u003E\n \u003Csession-timeout\u003E30\u003C\u002Fsession-timeout\u003E\n\u003C\u002Fsession-config\u003E\n对于以下描述,正确的是:\t\n\t\t\tb\n\ta)\t定义了默认的会话超时时长。时长为30秒。\t\n\tb)\t可以使用HttpSession接口的getMaxInactiveInterval()方法把该值取\u003Cem\u003E出\u003C\u002Fem\u003E来。\t\n\tc)\t定义了默认的会话超时时长。时长为30小时。\t\n\td)\t可以使用Session类的getMaxInactiveInterval()方法把该值取\u003Cem\u003E出\u003C\u002Fem\u003E来。\t\n\n\n\n\n\n8)\t对于\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:param\u003E标记,描述不正确的是()\n\t\t\n\ta)\t一般来说,\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:param\u003E是\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:include\u003E、\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward\u003E标记的子标记。\n\tb)\t如果aa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E有代码:\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward page=\"next.\u003Cem\u003Ejsp\u003C\u002Fem\u003E\"\u003E\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:param name=\"name\" value=\"jb-aptech\" \u002F\u003E\u003C\u002F\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward\u003E,则在next.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中可以使用request.getParameter(\"name\");把属性name的值取\u003Cem\u003E出\u003C\u002Fem\u003E来。\n\tc)\t如果aa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E有代码:\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward page=\"next.\u003Cem\u003Ejsp\u003C\u002Fem\u003E\"\u003E\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:param name=\"name\" value=\"jb-aptech\" \u002F\u003E\u003C\u002F\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward\u003E,则在next.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中可以使用request.getAttribute(\"name\");把属性name的值取\u003Cem\u003E出\u003C\u002Fem\u003E来。\n\td)\t如果\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:param\u003E标记放在\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward\u003E标记外,也就是不作为\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:forward\u003E标记的子标记,则使用浏览器查看时会显示\u003Cem\u003E错误\u003C\u002Fem\u003E页面。\n\n\n9)\taa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E与bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E属于同一应用,在aa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中使用\u003C\u003Cem\u003Ejsp\u003C\u002Fem\u003E:useBean id=\"beanName\" scope=\"session\" class=\"mypackage.mybean\" \u002F\u003E标记,在bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中要把beanName这个bean对象变量所引用的对象取\u003Cem\u003E出\u003C\u002Fem\u003E来。那么对于以下描述,正确的是:\t\n\t\t\tc\n\ta)\t在bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中仅使用代码:mybean bc = session.getAttribute(\"beanName\"); 取\u003Cem\u003E出\u003C\u002Fem\u003EbeanName所引用的对象。\t\n\tb)\t在bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中取beanName所引用的对象前,先要使用\u003C%@ page import=\"mypackage.mybean\" %\u003E导入mypackage.mybean类。\t\n\tc)\t在bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中,对于使用session的getAttribute方法取\u003Cem\u003E出\u003C\u002Fem\u003E的beanName所引用的对象,要进行强制类型转换。\t\n\td)\t在bb.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中使用session的getAttribute方法取\u003Cem\u003E出\u003C\u002Fem\u003E的对象和aa.\u003Cem\u003Ejsp\u003C\u002Fem\u003E中的beanName所引用的对象无关。\t\n\n\n10)\t用\u003Cem\u003EJSP\u003C\u002Fem\u003E2.0表达式语法在\u003Cem\u003EJSP\u003C\u002Fem\u003E页面上正确显示10+20的结果的是()。\n\t\t\n\ta)\t${10+20}\n\tb)\t${10+20};\n\tc)\t$(10+20)\n\td)\t$(10+20);\n参考答案\ta\n\n\n11)\t编写自定义标签处理类后,需要编写一个()去描述。\n\t\t\n\ta)\t.tag 文件\n\tb)\t.tld 文件\n\tc)\t.dtd文件\n\td)\t.xml 文件\n\n12)\t关于Tag File说法不正确的是()。\n\t\t\n\ta)\tTag File是\u003Cem\u003EJSP\u003C\u002Fem\u003E2.0新增的功能\n\tb)\tTag File是\u003Cem\u003EJSP\u003C\u002Fem\u003E1.2增的功能\n\tc)\tTag File 可以让网页开发人员直接使用\u003Cem\u003EJSP\u003C\u002Fem\u003E语法制作标签 \n\td)\tTag File的扩展名可以 .tag\n参考答案\tb\n\n\n\n13)\t关于Servlet Filter,下列说法正确的有()。\n\t\t\n\ta)\tFilter 其实就是一个Servlet\n\tb)\tFilter 可以产生response\n\tc)\tFilter可以在servlet被调用之前截获request\n\td)\tFilter可以用来处理统一认证,过滤不雅字句等。 \n参考答案\tc,d\n\n14)\t会话Bean的状态的说法正确的有(a)。\n\ta)\t有状态会话Bean的状态是借助于序列化保存下来的\n\tb)\t有状态会话Bean被激活后会恢复挂起前的状态\n\tc)\t无状态会话Bean不能有属性\n\td)\t有状态会话Bean的所有属性在挂起的时候都会被保存下来\n参考答案\t\n\n15)\t关于EJB组成部分的说法不正确的是 (ab)\n\ta)\t每一个EJB的实例对象对应于一个JNDI名字,通过JNDI名字找到相应的实例\n\tb)\t所有EJB都包含Home接口,远程接口,Bean类三个部分\n\tc)\tBean类必须实现远程接口中的方法\n\td)\t远程接口实现了RMI的Remote接口\n参考答案\t\n\n16)\t下列关于RMI远程接口定义正确的是 d\n\t\t\n\ta)\tpublic interface Demo {public long test() throws java.rmi.RemoteException;}\n\tb)\tPublic interface Demo extends Remote {public long test() }\n\tc)\tinterface Demo extends Remote {public long test() throws java.rmi.RemoteException;}\n\td)\tpublic interface Demo extends Remote {public long test() throws java.rmi.RemoteException;}\n参考答案\t\n\n17)\t下列选项中能获得UserTransaction的是ab\n\t\t\n\ta)\t通过上下文的.getUserTransaction()方法拿到UserTransaction\n\tb)\t通过查找JNDI名为javax.transaction.UserTransaction的拿到UserTransaction\n\tc)\tnew 一个UserTransaction对象\n\td)\t不需要实例化,直接使用接口中的方法即可\n参考答案\t\n\n18)\t关于事务,下列说法不正确的事 a\n\t\t\n\ta)\tEJB支持平面式和嵌入式两种事务模型\n\tb)\t平面式事务模型是指要么操作都成功,如果失败,所有操作都回滚\n\tc)\tEJB有Bean管理事务和容器管理事务两种方式\n\td)\tBMT方式也可以使用JTA来控制事务边界\n参考答案\t\n\n\n19)\t关于消息确认描述正确的是 ac\n\t\t\n\ta)\t在创建消息会话的时候能指定消息的确认方式\n\tb)\tAUTO_ACKNOWLEDGE方式能确认之前收到的所有消息\n\tc)\tClient_ACKNOWLEDGE方式需要显示调用方法ACKNOWLEDGE方法来显式的确认消息\n\td)\tClient_ACKNOWLEDGE方式可以确认所有的消息\n参考答案\t\n\n20)\t关于消息Bean事务描述正确的是 c\n\t\t\n\ta)\tMDB支持RequiresNew事务方式\n\tb)\tMDB支持Mandatory事务方式\n\tc)\tNotSupported方式在容器回调OnMessage方法之后才启动事务\n\td)\tMDB不支持Required事务属性\n参考答案\t\n\n\n21)\t关于WSDL不正确的说法是 bc\t\n\t\t\ta\n\ta)\t用来描述Web服务的XML文件\t\n\tb)\t全称是WEB SERVICES DEFINITION LANGUAGE\t\n\tc)\t客户端调用时直接用WSDL文件中的地址就可以了\t\n\td)\tSOAP协议可以基于多种底层协议\t\n\n\n二,简答题\n\n1:简述四种会话跟踪技术以及他们的优缺点\n\n\n2:请结合轻量级框架Struts,Spring和重量级框架EJB谈谈轻量级架构和重量级架构的区别?\n\n\n3:说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法\n\n\n\t4:如何给weblogic指定大小的内存?如何设定的weblogic的热启动模式(开发模式)与产品发布模式?\n\t\n\t三,代码题\n\t\n\t1:请写\u003Cem\u003E出\u003C\u002Fem\u003EJavaMail发送邮件的关键代码\n\t\n\t2:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写\u003Cem\u003E出\u003C\u002Fem\u003E程序。\n\t\n\t3:用冒泡法对10个数排序(由小到大)例如: 54,12,-6,6,22,-7,9,0,999,79\n\t\n\t4:有一个登录页面,上面有用户名(name),密码(password)两个字段,对应数据库表User中的两个字段,请用Struts+EJB实现上述登陆场景!","createTime":"2011-10-21 23:03:52","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"5\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"5\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-10124263.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1713519930841_15376\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"}],"staffDOList":[{"id":null,"communityId":301,"username":"community_186","userNickname":"Web 开发社区","roleCode":1,"status":1,"createUsername":"","updateUsername":"","avatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","createTime":"2021-05-12 18:08:41","updateTime":"2021-05-12 18:08:41","lastLoginTime":"2021-05-12 18:08:41"}],"communityConfig":{"scoreType":0,"scoreItems":{"0":"给本帖投票","1":"锋芒小试,眼前一亮","2":"潜力巨大,未来可期","3":"持续贡献,值得关注","4":"成绩优异,大力学习","5":"贡献巨大,全力支持"}},"shouldApply":false,"subscribeAble":false,"operatorAble":false,"commentNeedJoinCommunity":false},"default2014LiveRoom":[{"itemType":"","description":"高峰论坛","title":"2022 技术英雄会","url":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fiframe\u002Fcsdnnews\u002FfsNR5NWp?chat=1&title=1&footer=1","images":["https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221016050009.png"],"ext":{"time":"9:00","liveRoomUrl":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fcsdnnews\u002FfsNR5NWp"}}]},"isGooglebot":false,"canonical":"https:\u002F\u002Fwww.csdn.net\u002Ftopics\u002F10124263","openUrl":"","isApp":false,"localUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F10124263","typeId":"index","hasIndex":false},"CFG":{"ALIPLAYER_VERSION":"v4","ALIPLAYER_H5_VERSION":"mobile_v1","ENV":"prod","ROOT_URL":"https:\u002F\u002Fcms-mall.csdn.net\u002F","VUE_APP_API_URL_SERVER":"http:\u002F\u002Fcms-community-api.internal.csdn.net\u002F","VUE_APP_API_URL":"https:\u002F\u002Fcms-api.csdn.net\u002F","LOGIN_URL":"https:\u002F\u002Fpassport.csdn.net\u002Faccount\u002Flogin","VUE_APP_DOMAIN_SKILL":"https:\u002F\u002Fedu.csdn.net\u002F","VUE_APP_DOMAIN_PATH":"https:\u002F\u002Fedu.csdn.net\u002F","VUE_APP_COMMUNITY_API_URL":"https:\u002F\u002Fcommunity-api.csdn.net\u002F","VUE_APP_CCLOUD_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fcommunity-cloud\u002Fv1\u002F","VUE_APP_SKILL_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fskilltree\u002Fapi\u002F","VUE_APP_SEARCH_PLUGIN_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fsearchplugin\u002F","VUE_APP_COMMUNITY_ASK_API_URL":"https:\u002F\u002Fmp-ask.csdn.net\u002F","VUE_APP_ME_URL":"https:\u002F\u002Fme.csdn.net\u002F","VUE_APP_CCLOUD_RESUME":"https:\u002F\u002Fbizapi.csdn.net\u002Fjob-api\u002F","VUE_APP_CCLOUD_MAIN":"https:\u002F\u002Fwww.csdn.net\u002F","VUE_APP_CCLOUD_UC":"https:\u002F\u002Fwww.csdn.net\u002F","VUE_APP_CCLOUD_BZP_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002F","VUE_APP_CCLOUD_START_API_URL":"https:\u002F\u002Fmp-action.csdn.net\u002F","VUE_APP_PRACTIVE":"https:\u002F\u002Fbizapi.csdn.net\u002Fdaily-practice\u002F","VUE_APP_CCLOUD_HOSTPATH":"https:\u002F\u002Fbbs.csdn.net\u002F"},"queries":{"pageId":[],"domain":["ccloud.csdn.net\u002Fccloud\u002Fdetail1"],"id":["10124263"],"deviceType":"pc","isSpider":"","hostname":["bbs.csdn.net"]},"basePath":"bbs.csdn.net\u002Fccloud\u002Ftopics\u002F10124263","hrefUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F10124263","active":0,"navBarFixed":false,"title":"如何在JSP中弹出对话框提示错误???","isLive":false,"contentType":{"text":"text","picture":"picture","link":"link","video":"video","vote":"vote","live":"live","blog":"blog","long_text":"long_text","task_text":"task_text"},"liveUrl":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fiframe\u002F","spmExtra":{"id":301,"topicId":10124263},"keywords":"","description":"以下内容是CSDN社区关于如何在JSP中弹出对话框提示错误???相关内容,如果想了解更多关于Web 开发社区其他内容,请访问CSDN社区。"}; a) 什么也不输。 b) 弹内容为“Is 1”的对话框。 c) 弹内容为“Is 2”的对话框。 d) 当第一次访问这个程序时,弹一个内容为"Is other"的对话框,从第二次开始,每次访问这个程序都弹内容为“Is 2”的对话框。 e 当第一次访问这个程序时,弹一个内容为"Is 1"的对话框,从第二次开始,每次访问这个程序都弹内容为“Is 2”的对话框。 参考答案 a 4) 下面是一JSP页面的片断代码,请问页面输结果是(). <% StringBuffer buffer =new StringBuffer (”Hello”); buffer.append(“World”); System.out.println(buffer.toString()); %> a) Hello b) World c) HelloWorld d) 什么也不输 参考答案 d 5) aa.jsp文件如下: <%! static int I=0; int j=0; %> <% for(;I++<2;) { out.print(j++); out.print(" ");} %> 两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览一次,那么,第2个客户的浏览器将显示什么? e a) 0 1 b) 1 2 c) 3 4 d) 5 6 e) 什么也没有 6) 如果用JSP开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。 a) request b) page c) session d) application 参考答案 d 7) 在web.xml中,有如下代码: 30 对于以下描述,正确的是: b a) 定义了默认的会话超时时长。时长为30秒。 b) 可以使用HttpSession接口的getMaxInactiveInterval()方法把该值取来。 c) 定义了默认的会话超时时长。时长为30小时。 d) 可以使用Session类的getMaxInactiveInterval()方法把该值取来。 8) 对于<jsp:param>标记,描述不正确的是() a) 一般来说,<jsp:param>是<jsp:include>、<jsp:forward>标记的子标记。 b) 如果aa.jsp有代码:<jsp:forward page="next.jsp"><jsp:param name="name" value="jb-aptech" />jsp:forward>,则在next.jsp中可以使用request.getParameter("name");把属性name的值取来。 c) 如果aa.jsp有代码:<jsp:forward page="next.jsp"><jsp:param name="name" value="jb-aptech" />jsp:forward>,则在next.jsp中可以使用request.getAttribute("name");把属性name的值取来。 d) 如果<jsp:param>标记放在<jsp:forward>标记外,也就是不作为<jsp:forward>标记的子标记,则使用浏览器查看时会显示错误页面。 9) aa.jsp与bb.jsp属于同一应用,在aa.jsp中使用<jsp:useBean id="beanName" scope="session" class="mypackage.mybean" />标记,在bb.jsp中要把beanName这个bean对象变量所引用的对象取来。那么对于以下描述,正确的是: c a) 在bb.jsp中仅使用代码:mybean bc = session.getAttribute("beanName"); 取beanName所引用的对象。 b) 在bb.jsp中取beanName所引用的对象前,先要使用<%@ page import="mypackage.mybean" %>导入mypackage.mybean类。 c) 在bb.jsp中,对于使用session的getAttribute方法取的beanName所引用的对象,要进行强制类型转换。 d) 在bb.jsp中使用session的getAttribute方法取的对象和aa.jsp中的beanName所引用的对象无关。 10) 用JSP2.0表达式语法在JSP页面上正确显示10+20的结果的是()。 a) ${10+20} b) ${10+20}; c) $(10+20) d) $(10+20); 参考答案 a 11) 编写自定义标签处理类后,需要编写一个()去描述。 a) .tag 文件 b) .tld 文件 c) .dtd文件 d) .xml 文件 12) 关于Tag File说法不正确的是()。 a) Tag File是JSP2.0新增的功能 b) Tag File是JSP1.2增的功能 c) Tag File 可以让网页开发人员直接使用JSP语法制作标签 d) Tag File的扩展名可以 .tag 参考答案 b 13) 关于Servlet Filter,下列说法正确的有()。 a) Filter 其实就是一个Servlet b) Filter 可以产生response c) Filter可以在servlet被调用之前截获request d) Filter可以用来处理统一认证,过滤不雅字句等。 参考答案 c,d 14) 会话Bean的状态的说法正确的有(a)。 a) 有状态会话Bean的状态是借助于序列化保存下来的 b) 有状态会话Bean被激活后会恢复挂起前的状态 c) 无状态会话Bean不能有属性 d) 有状态会话Bean的所有属性在挂起的时候都会被保存下来 参考答案 15) 关于EJB组成部分的说法不正确的是 (ab) a) 每一个EJB的实例对象对应于一个JNDI名字,通过JNDI名字找到相应的实例 b) 所有EJB都包含Home接口,远程接口,Bean类三个部分 c) Bean类必须实现远程接口中的方法 d) 远程接口实现了RMI的Remote接口 参考答案 16) 下列关于RMI远程接口定义正确的是 d a) public interface Demo {public long test() throws java.rmi.RemoteException;} b) Public interface Demo extends Remote {public long test() } c) interface Demo extends Remote {public long test() throws java.rmi.RemoteException;} d) public interface Demo extends Remote {public long test() throws java.rmi.RemoteException;} 参考答案 17) 下列选项中能获得UserTransaction的是ab a) 通过上下文的.getUserTransaction()方法拿到UserTransaction b) 通过查找JNDI名为javax.transaction.UserTransaction的拿到UserTransaction c) new 一个UserTransaction对象 d) 不需要实例化,直接使用接口中的方法即可 参考答案 18) 关于事务,下列说法不正确的事 a a) EJB支持平面式和嵌入式两种事务模型 b) 平面式事务模型是指要么操作都成功,如果失败,所有操作都回滚 c) EJB有Bean管理事务和容器管理事务两种方式 d) BMT方式也可以使用JTA来控制事务边界 参考答案 19) 关于消息确认描述正确的是 ac a) 在创建消息会话的时候能指定消息的确认方式 b) AUTO_ACKNOWLEDGE方式能确认之前收到的所有消息 c) Client_ACKNOWLEDGE方式需要显示调用方法ACKNOWLEDGE方法来显式的确认消息 d) Client_ACKNOWLEDGE方式可以确认所有的消息 参考答案 20) 关于消息Bean事务描述正确的是 c a) MDB支持RequiresNew事务方式 b) MDB支持Mandatory事务方式 c) NotSupported方式在容器回调OnMessage方法之后才启动事务 d) MDB不支持Required事务属性 参考答案 21) 关于WSDL不正确的说法是 bc a a) 用来描述Web服务的XML文件 b) 全称是WEB SERVICES DEFINITION LANGUAGE c) 客户端调用时直接用WSDL文件中的地址就可以了 d) SOAP协议可以基于多种底层协议 二,简答题 1:简述四种会话跟踪技术以及他们的优缺点 2:请结合轻量级框架Struts,Spring和重量级框架EJB谈谈轻量级架构和重量级架构的区别? 3:说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法 4:如何给weblogic指定大小的内存?如何设定的weblogic的热启动模式(开发模式)与产品发布模式? 三,代码题 1:请写JavaMail发送邮件的关键代码 2:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写程序。 3:用冒泡法对10个数排序(由小到大)例如: 54,12,-6,6,22,-7,9,0,999,79 4:有一个登录页面,上面有用户名(name),密码(password)两个字段,对应数据库表User中的两个字段,请用Struts+EJB实现上述登陆场景!

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧