Java 在Jsp页面中关闭html和主体标记的目的
我有一个关于Jsp和HTML的基本问题,下面的例子来自JavaEE7黑皮书 Login.htmlJava 在Jsp页面中关闭html和主体标记的目的,java,html,jsp,Java,Html,Jsp,我有一个关于Jsp和HTML的基本问题,下面的例子来自JavaEE7黑皮书 Login.html <html> <body> <pre> <form action="LoginProcess.jsp"> <b>User Name</b> : <input type="text" name="uname"/> <b>Password</b>
<html>
<body>
<pre>
<form action="LoginProcess.jsp">
<b>User Name</b> : <input type="text" name="uname"/>
<b>Password</b> : <input type="password" name="pass"/>
<input type="submit" value="LogIN"/>
</form>
</pre>
</body>
</html>
用户名:
密码:
下面是JSp的代码
1. <jsp:useBean >
2. <jsp:forward > etc.
为用户名提供的用户详细信息:和
密码:无效
请重试
这是一个主页
欢迎
我的问题是关于“代码>和/代码>标签,它们挂在返回语句上面的代码中间(不知道如何在代码中突出它们)。我不明白这两个标签的用途。我不明白为什么html和body标记是关闭的。以及在html标记关闭后如何呈现进一步的代码。有人能解释一下吗
提前感谢。因此,尽管它的代码非常陈旧,但还是让我来解释一下(为了其他初学者): 首先,你给出的代码是非常丑陋和陈旧的 从学术角度来看—— 在jsp中,可以有3种类型的基本标记-
- scriptlet中声明的变量成为_jspService(httpServletRequest,httpServletResponse)方法的局部变量
- 因为java不支持方法嵌套,所以我们不能在Scriptlet中放置任何方法
- 在声明标记中,可以声明变量
- 放置在jsp声明标记中的代码来自 _等价servlet的jspService(httpServletRequest,httpServletResponse)方法
- 并且声明标记中声明的变量成为实例 等效servlet类的变量
- 在jsp中,我们有9种类型的隐式对象(请求、响应、输出、, 页面等)
- 所有隐式对象都是_jspService(req,res)的局部变量 方法,因此这些隐式对象在内部不可访问 jsp的声明标记
- 表达式标记计算给定表达式并写入 将生成的输出作为网页内容输出到浏览器窗口
- 算术运算、逻辑运算、java方法调用 返回值等可以放在表达式标记内
<%
return;
}//if
}//try
finally
{
try
{
con.close();
}catch(Exception e){}
}//finally
%>
1。
2.等
现在来回答您的问题:
您对html和body标记为何关闭感到困惑。以及在html标记关闭后如何呈现进一步的代码
首先,我在上面告诉过你的,那是非常老式的编码方式,完全过时了。我们总是建议使用JSTL和其他
jsp中的标签使jsp文件易于阅读、清洁和易于维护。JSP文件用于视图层,我们不应该在JSP文件中放入任何java代码。
所以,您提供的jsp文件是一个完全混乱的问题
在关闭body和html标记之后编写的代码是一个scriptlet,它将在_jspService(req,rs)方法中转换为等价的java代码,该方法用于jsp等价的servlet类
This is a Home Page <br/>
Welcome, <%=uname%>
这段代码是简单的文本和一个表达式标记(这同样给了您一个以文本格式显示在网页上的输出)
这是一个主页
欢迎
[>省略html、head和body标记并在外部写入文本
他们
HTML规范当然允许
浏览器一直寻求与现有网页保持一致,
HTML的早期版本没有定义这些元素
HTML2.0首先做到了这一点,它的实现方式与标记相同
缺失时推断。][来源]
有关更多详细信息,请参见我不知道这本书,但我认为这是打字错误。把那本书扔掉。脚本在JSP中没有位置。那是1990年的风格。可怕、丑陋的东西。除了底部呈现的奇怪内容外,所有内容都是正确的。看起来主体和html标记的结尾在if语句中。这显然是一个错误。同时,打印密码意味着将密码以明文形式存储在数据库中,这是您永远不应该做的。这本书很过时。谢谢你,谢里什。很好的解释。
This is a Home Page <br/>
Welcome, <%=uname%>