javabean

来源:互联网 发布:android ui布局优化 编辑:程序博客网 时间:2024/05/16 05:36
javabean简介:符合某种特定的规范的Java类,使用javabeans的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性。
javabean的设计原则:共有类,无参的共有构造方法,属性私有,getter和setter方法
jsp动作元素,动作元素为请求处理阶段提供信息,动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性,可选内容,与开始标签匹配的结束标签。
什么是JSP动作?
(1)与存取javabean有关的,包括<jsp:useBean><jsp:setProperty><jsp:getProperty>
(2)JSP1.2就开始有的基本元素,包括6个动作元素<jsp:include><jsp:forward><jsp:param><jsp:plugin><jsp:params><jsp:fallback>
(3)JSP2.0新增加的元素,主要与JSP Document有关,包括6个元素,<jsp:root><jsp:declaration><jsp:scriptlet><jsp:expression><jsp:text><jsp:output>
(4)JSP2.0新增加的动作元素,主要是用来动态生成XML元素标签的值,包括3个动作,<jsp:attribute><jsp:body><jsp:element>

(5)JSP2.0新增的动作元素,主要是在Tag File中,有2个元素,<jsp:invoke><jsp:dobody>

[html] view plain copy
  1. <%@ page import="com.User" %>  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
  3. <html>  
  4. <head>  
  5. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">  
  6. <title>Insert title here</title>  
  7. </head>  
  8. <body>  
  9. <%  
  10.     User user=new User();  
  11.     user.setUsername("admin");  
  12.     user.setPassword("123");  
  13. %>  
  14. <h1>使用普通方式创建javabean的实例</h1>  
  15. <hr/>  
  16. 用户名:<%=user.getUsername() %>  
  17. 密码:<%=user.getPassword() %>  
  18. </body>  
  19. </html>  
[html] view plain copy
  1. <strong><span style="font-size:18px;color:#ff0000;">User.java</span></strong><span style="font-size:14px;">  
  2. package com;  
  3.   
  4. public class User {  
  5.     private String username;  
  6.     private String password;  
  7.     public String getUsername() {  
  8.         return username;  
  9.     }  
  10.     public void setUsername(String username) {  
  11.         this.username = username;  
  12.     }  
  13.     public String getPassword() {  
  14.         return password;  
  15.     }  
  16.     public void setPassword(String password) {  
  17.         this.password = password;  
  18.     }  
  19.     public User(){  
  20.           
  21.     }  
  22. }  
  23. </span><span style="font-size:18px;color:#ff6666;"><strong>login.jsp</strong></span><span style="font-size:14px;">  
  24. <body>  
  25. <h1>系统登录</h1>  
  26. <hr/>  
  27. <form name="loginForm" action="dologin.jsp?mypass=9999" method="post">  
  28. <table>  
  29. <tr>  
  30.     <td>用户名:</td>  
  31.     <td><input type="text" name="username" value=""/></td>  
  32. </tr>  
  33. <tr>  
  34.     <td>密码:</td>  
  35.     <td><input type="password" name="password" value=""/></td>  
  36. </tr>  
  37. <tr>  
  38.     <td colspan="2" align="center"><input type="submit" value="提交"/></td>  
  39. </tr>  
  40. </table>  
  41. </form>  
  42. </body>  
  43. </span><span style="font-size:18px;color:#ff0000;"><strong>dologin.jsp</strong></span><span style="font-size:14px;">  
  44. <body>  
  45. <!-- 下面的name都要和id一样 -->  
  46. <jsp:useBean id="myUsers" class="com.User" scope="page"/>  
  47. <h1>setProperty动作元素</h1>  
  48. <hr/>  
  49. <!-- 根据表单自动匹配所有的属性 -->  
  50. <%-- <jsp:setProperty name="myUsers" property="*"/> --%>  
  51. <!-- 根据表单匹配部分的属性 -->  
  52. <%-- <jsp:setProperty name="myUsers" property="username"/> --%>  
  53. <!-- 跟表单无关,通过手工赋值给属性 ,得到的是你自己设定的值。-->  
  54. <%-- <jsp:setProperty name="myUsers" property="username" value="lisi">  
  55. <jsp:setProperty name="myUsers" property="password" value="8888"> --%>  
  56. <!-- 通过URL传参数给属性赋值 ,根据提交参数有关和你在表单填写的无关,param设定的是你传的参数-->  
  57. <jsp:setProperty name="myUsers" property="username">  
  58. <jsp:setProperty name="myUsers" property="password" param="mypass">  
  59. <!-- 使用传统的表达式方式获取用户名和密码 -->  
  60. <%-- 用户名:<%=myUsers.getUsername() %><br/>  
  61. 密码:<%=myUsers.getPassword() %> --%>  
  62. <!-- 使用getProperty方式来获取用户和密码 -->  
  63. 用户名:<jsp:getProperty name="myUsers" property="username"/>  
  64. 密码:<jsp:getProperty name="password" property="password"/>  
  65. </body>  
  66. </span>  

[html] view plain copy
  1. <span style="font-size:14px; font-family: Arial, Helvetica, sans-serif;"><strong>javabean的四个作用于范围</strong></span><span style="font-size:14px;"><strong>j  
  2. <span style="color:#33cc00;">page:仅在当前页面有效,超链接是获取不到的</span></strong></span>  
[html] view plain copy
  1. <span style="font-size:14px;"><strong><span style="color:#ff0000;">success.jsp</span></strong>  
  2. <body>  
  3. <h1>javabean的四个作用域范围</h1>  
  4. <hr/>  
  5. <jsp:useBean id="myUsers" class="com.User" scope="page"/>  
  6. <%  
  7.     String username="";  
  8.     String password="";  
  9.     if(pageContext.getAttribute("myUsers")!=null){  
  10.         username=((User)pageContext.getAttribute("myUsers")).getUsername();  
  11.         password=((User)pageContext.getAttribute("myUsers")).getPassword();  
  12.     }  
  13. %>  
  14. 用户名:<%=username%><br/>  
  15. 密码:<%=password %><br/>  
  16. </body>  
  17. <strong><span style="color:#33cc00;">request:可以通过HttpRequest.getAttribute()方法取得javabean对象</span>  
  18. <span style="color:#ff0000;">dologin.jsp,login页面还是上面的页面</span></strong>  
  19. <body>  
  20. <!-- 下面的name都要和id一样 -->  
  21. <jsp:useBean id="myUsers" class="com.User" scope="request"/>  
  22. <h1>setProperty动作元素</h1>  
  23. <hr/>  
  24. <jsp:setProperty name="myUsers" property="username"/>  
  25. <jsp:setProperty name="myUsers" property="password"/>  
  26. <!-- 使用getProperty方式来获取用户和密码 -->  
  27. 用户名:<jsp:getProperty name="myUsers" property="username"/><br/>  
  28. 密码:<jsp:getProperty name="myUsers" property="password"/>  
  29. <br/>  
  30. <a href="success.jsp">测试javabean的四个作用域范围</a>  
  31.  <%  
  32.     request.getRequestDispatcher("success.jsp").forward(request,response);  
  33. %>  
  34. </body>  
  35. <strong><span style="color:#ff0000;">success.jsp</span></strong>  
  36. <body>  
  37. <h1>javabean的四个作用域范围</h1>  
  38. <hr/>  
  39. <jsp:useBean id="myUsers" class="com.User" scope="request"/>  
  40. <%-- 用户名:<jsp:getProperty name="myUsers" property="username"/><br/>  
  41. 密码:<jsp:getProperty name="myUsers" property="password"/><br/> --%>  
  42. <hr/>  
  43. <%-- 用户名:<%=((User)session.getAttribute("myUsers")).getUsername()%><br/>  
  44. 密码:<%=((User)session.getAttribute("myUsers")).getPassword() %><br/> --%>  
  45. <hr/>  
  46. 用户名:<%=((User)request.getAttribute("myUsers")).getUsername()%><br/>  
  47. 密码:<%=((User)request.getAttribute("myUsers")).getPassword() %><br/>  
  48. </body>  
  49. <strong><span style="color:#33cc00;">session:可以通过HttpSession.getAttribute()方法取得javabean对象  
  50. application:可以通过application.getAttribute()方法取得javabean对象  
  51. </span></strong></span>  

原创粉丝点击