关于jsp中的问题

2024-11-18 17:29:40
推荐回答(5个)
回答(1):

其实它们都是JSP的语法,刚学的话可以先看看JSP的语法,看得多了见的多了就明白了。

在通常的jsp代码中,脚本标识使用的比较频繁,包括以下三种元素:声明标识,JSP表达式和脚本程序。

<%=a.getId()%>中的<%= %>是jsp的表达式脚本标识,用于向页面输出信息
<%=a.getId()%>将输出 a.getId()的结果

再举个例子:

<% String name ="楼主" %>
用户名:<%=name%>

以上代码运行结果为如下:

用户名:楼主

下面是部分的JSP语法,楼主可以在网上找到更多的资料来学习
1.page指令

page指令的设置语法格式是:<%@ page attribute1=”value1” attribute2=”value2”…%>
下面介绍指令中包括的几个常用属性,并作简要说明。
l import
import指令是所有page指令中,唯一可以多次设置的指令,而且累加每个设置。它用来指定jsp网页中所需要使用到的一些类。例如:
<%@ page import=”java.io.*,java.util.Date”%>
l session
定义当前页面是否参与http会话。当设置为”true”时,可以获得隐含名为session的对象,为”false”时,则不能。默认设置为”true”。
l contentType
设置jsp网页输出时数据时,所使用的字符压缩方式,以及所使用的字符集,当编写中文网页时,设置如下:
<%@page contentType=”text/html;charset=Gb2312”%>
此属性的默认值为”text/html;charset=ISO-8859-1”。
l buffer
设置jsp网页的缓冲区大小,默认为”8k”,如果设置为”none”,则表示不使用缓冲,所有的响应输出都将被PrintWriter直接写到ServletResponse中。
l isTreadSafe
定义当前页面是否支持线程安全。如果为”true”,则该页面可能同时收到jsp引擎发出的多个请求,反之,jsp引擎会对收到的请求进行排队,当前页面在同一时刻只能处理一个请求。默认为”true”。
l info
设置页面的文本信息,可以通过Servlet.getServletInfo()的方法获得该字符串。
l errorPage
定义指向另一个jsp页面的URL。当页面出现一个没有被捕获的异常时,错误信息将以throw语句抛出,而被设置为错误信息网页的jsp页面,将利用exception隐含对象,取得错误信息。
默认没有错误处理页面。
l isErrorPage
设置此jsp网页是否为错误处理页面。默认值为”false”。当设置为”true”时,jsp页面将可存取隐含的exception对象,并通过该对象取得从发生错误之网页所传出的错误信息。取得错误信息的语法如下:
<% =exception.getMessage()%>
² 一个页面错误处理的例子
产生错误的页面文件为MakeError.jsp,处理错误的页面文件为ErrorPage.jsp,它们的源程序如下:
MakeError.jsp

<%@ page errorPage="ErrorPage.jsp"%>


产生错误页面


<%
int i=8,j=0;
out.println(ij);
%>


ErrorPage.jsp
<%@ page isErrorPage="true"%>


错误处理页面



错误原因:<%=exception.getMessage()%>




2.include指令

使用include指令可以把其他的文本文件加入到当前的jsp页面,格式如下:
<%@ include file=”header.inc”%>
如此,则在当前页面中加入header.inc源代码然后再编译整个文件。
可以使用include指令把一个页面分成不同的部分,最后合成一个完整的文件,使用jsp的include指令有助于实现jsp页面的模块化。

3.taglib指令

该指令主要是在JSP页面插入插件!具体的用法尚不熟悉~

接下来说说JSP页面中的标准动作吧!

标准动作元素用于执行一些常用的JSP页面动作,例如:将页面转向、使用JavaBean、设置JavaBean的属性等。在JSP中,标准动作元素共有以下几种:
l
l
l
l
l
l
l
其中这三个是专门用来操作JavaBeans的。
下面分别介绍它们。
1.
动作用于传递参数,必须配合动作一起使用。
语法格式:

2.
动作用于动态加载HTML页面或者JSP页面。
语法格式:




在jsp页面中,可以利用下面的语法取得返回的参数:
request.getParameter(“name1”);
若不传递参数时,则语法格式如下:

举例:
a.jsp页面代码如下:






b.jsp页面代码如下:
名字1、;<%=request.getParameter("name1")%>



名字2、;<%=request.getParameter("name2")%>
执行结果如下:

“include标准动作”和“include指令”的差别在于:“include标准动作”包含的页面在运行时被加入,而“include指令”在编译时就被加入了。
3.
动作用于将浏览器显示的页面导向到另一个HTML页面或者jsp页面。
语法格式:

当然,动作中也可以加入参数,其设置和获得参数的方法与类似。
4.
动作用于加载applet,用途与HTML语法中的标记相同。该动作是在客户端执行的,这里就不作介绍了。
5.
(见后文的“JavaBeans”的使用)
6.
(见后文的“JavaBeans”的使用)
7.
(见后文的“JavaBeans”的使用)

另外,附加的讲一下JSP中的内置对象

内置对象

在jsp页面中有一些已经完成定义的对象,称之为内置对象。这些对象可以不经过定义就直接使用,因为它们是由jsp页面自己定义的。
jsp程序常用的内建对象有如下几个:request、response、out、session、pageContext、application、config、page、exception。你可以在jsp页面中直接使用它们,用以加强jsp程序的功能。
下面分别介绍它们。
1. request
与request相联系的是HttpServletRequest类。通过getParameter方法可以获得相应的参数值。
2. response
与response相联系的是HttpServletResponse类。表示Web页面针对请求的应答。
3. out
与out相联系的是PrintWrite类。可以使用此对象将内容输出到页面中。
4. session
与session相联系的是HttpSession类。用来传递客户的会话内容。
5. pageContext
与pageContext相联系的是pageContext类。用它能方便的访问本页面中设置的共享数据。
6. application
与application相联系的是ServletContext类。用它能够实现应用程序级别的数据共享。
7. config
与config相联系的是ServletConfig类。用来在jsp页面范围内处理jsp配置。
8. page
代表jsp页面编译成的Servlet实例,一般不用。
9. exception
与exception相联系的是Throwable类。用来捕获jsp执行时抛出的异常。

回答(2):

你说的是脚本:
1. 声明:<%! %> 用于声明变量和方法的Java代码 (分号结束)
2。表达式:<%= %> 能够生成一个结果值的表达式 (无分号))
(比如value="<%=a.getId()%>" <%=a.getId()%> 就是一个动态值,也可写成
<% String idStr= a.getId() %>
value="<%=idStr>"
)

3。小脚本:<% %> 任意的Java代码

回答(3):

<% %>可以在jsp页面里面写java代码
<%= %>只是用普通的java代码得到值
<% String str= "123"; %>
这样我就可以在页面中显示我刚才定义的值
文本框中会显示123

a.getId()得到的是a中id的值 a.getName得到的是a中name的值
这样做是为了实现动态显示的效果

selected是一个变量 通过赋值给它 可以实现某个下拉选项被选定

例如;


这样就做了一个下拉框 页面中下拉框中显示的是 我的值是? 这个文本内容 action传值就会变成这样 ---> url?sel="123"

回答(4):

这行代码的功能实现下拉列表。
<%= %>是输出,<%=a.getId() %>就相当于输出a的Id
value=“<%=a.getId() %>”是该项的值为a的Id值,
<%= selected %>是该项被选中,因为下拉列表中应有某一项被选中。
之间的事实际下拉列表显示的内容。

回答(5):

取值,
如我在jsp中定义了一个变量。
<%
String str="人才";

%>
此时input中的值就是人才