当前位置:K88软件开发文章中心编程全书编程全书02 → 文章内容

JSP动作元素jsp:useBean,jsp:setProperty,jsp:getProperty

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-4 8:18:01

-->

什么是jsp动作:

jsp动作元素(action elements),动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性、可选内容、与开始标签匹配的结束标签。

  • 第一类是与存取JavaBean有关的,包括:

<jsp:useBean> <jsp:setProperty> <jsp:getProperty>

  • 第二类是JSP2.1就开始有的基本元素,包括6个动作元素

<jsp:include> <jsp:forward> <jsp:param> <jsp:plugin> <jsp:params> <jsp:fallback>

  • 第三类是JSP2.0新增加的元素,主要与JSP Document有关,包括六个元素

<jsp:root> ?<jsp:declaration> <jsp:scriptlet> <jsp:expression> <jsp:output>

  • 第四类是JSP2.0新增元素,用来动态生成XML元素标签的值,包括3个元素

<jsp:attribute> ?<jsp:body> <jsp:element>

  • 第五类是JSP2.0新增元素,主要用在Tag File中,有2个元素

<jsp:invoke> ?<jsp:dobody>

在JSP页面中如何使用Javabeans

1.像使用普通java类一样,创建javabean实例。(需使用page指令声明。 例:<%@ page import=”com.User” %>?)

2.在Jsp页面中通常使用jsp动作标签使用javabean。

  • useBean动作
  • setProperty动作
  • getProperty动作

[t]<jsp:useBeans>[/t]

作用:在jsp页面中实例化或者在指定范围内使用javabean:

<jsp:useBean id=”标识符” class=”java类名” scope=”作用范围” />

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/*title:User.java

writer:冰封、*/


package com;

public class User {
private String Username;
private String Passwd;

public User() {

}

public String getUsername() {
return Username;
}

public void setUsername(String username) {
Username = username;
}

public String getPasswd() {
return Passwd;
}

public void setPasswd(String passwd) {
Passwd = passwd;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/*jsp_Userbean.jsp*/

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="com.User" %> //声明java类
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>usebean</title>
</head>
<body>
<h1>使用普通方式创建java usebean的实例</h1>
<%
User user=new User();
user.setUsername("wangzheng");
user.setPasswd("123456");
%>
用户名:<%=user.getUsername() %>
密码:<%=user.getPasswd() %>
</body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*jsp_Userbean2.jsp*/

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>usebean</title>
</head>
<body>
<h1>使用usebean动作创建java usebean的实例</h1>
<hr />
<jsp:useBean id="user" class="com.User" scope="page" /> //无需再声明user类

用户名:<%=user.getUsername() %><br />
密码:<%=user.getPasswd() %><br />
</body>
</html>

[t]jsp:setProperty[/t]

作用:给已经实例化的javabean对象的属性赋值,一共有4中形式。

  1. <jsp:setProperty name=”javabean对象” property=”*” /> ?(跟表单相关联。)
  2. <jsp:setProperty name=”javabean对象” property=”javabean属性名” /> ?(跟表单关联。)
  3. <jsp:setProperty name=”javabean对象” property=”javabean属性名” value=”属性值” /> ?(手工设置)
  4. <jsp:setProperty name=”javabean对象” property=”propertyName” param=”request对象中的参数名” ?/> ?(跟request参数关联)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!-- user.jsp -->

package com.jsp_action;

public class User {
private String Username;
private String Passwd;

public User() {

}

public String getUsername() {
return Username;
}

public void setUsername(String username) {
Username = username;
}

public String getPasswd() {
return Passwd;
}

public void setPasswd(String passwd) {
Passwd = passwd;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!--login.jsp -->

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>login.jsp</title>
</head>
<body>
<form name="loginForm" action="dologin.jsp?mima=739696033" method="post">
<table >
<tr>
<td>用户名:</td>
<td><input type="text" name="username" value="" /></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="passwd" value="" /></td>
</tr>
<tr>
<td colspan="2" align="center"> <input type="submit" value="登录"></td>
<td></td>
</tr>
</table>
</form>
</body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!-- dologin.jsp -->

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dologin.jsp</title>
</head>
<body>
<jsp:useBean id="user" class="com.jas_action.User" scope="page" />
<h2>使用usebean动作创建javabean实例</h2>
<hr >
<!-- 根据表单自动匹配所有属性 -->
<%--
<jsp:setProperty name="user" property="*" />
--%>

<!-- 根据表单匹配部分属性 -->
<%--
<jsp:setProperty name="user" property="username" />
--%>

<!-- 跟表单无关,通过手工赋值给属性 -->
<%--
<jsp:setProperty name="user" property="passwd" value="12345678" />
<jsp:setProperty name="user" property="username" value="wangzheng" />
--%>
<!-- 通过URL传参,给属性赋值 -->
<jsp:setProperty name="user" property="username" />
<jsp:setProperty name="user" property="passwd" param="mima" />
用户名:<%=user.getUsername() %> <br>
密码:<%=user.getPasswd() %>
</body>
</html>

[t]jsp:getProperty[/t]
<jsp:getProperty name=”user” property=”username” />


JSP动作元素jsp:useBean,jsp:setProperty,jsp:getProperty