JavaWEB【application&javabean封装】

  • Post author:
  • Post category:java



如需温习上一节的内容,请点击下方链接进行跳转:




javaweb之session&Cookie_云彩123的博客-CSDN博客


session-内置对象1.概述 服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象。jsp:session servlet:HttpSession 2.快速入门 (1)getAttribute(String name); (2)setAttribute(String name,Object value) (3)removeAattribute(String name) 3.细节 1.当客户端关闭后,服务器不关闭,两次…



https://blog.csdn.net/m0_64522859/article/details/124023058




目录


一、application


1、概述:


2、常用方法:


3、经典案例:application实现统计网站访客


4、application对象常用的方法


5、案例演示


二、javabean封装


1、概述:


2、javabean规则:


3、为什么需要使用Javabean?


4、javabean的优点:


5、javabean分类:


6、JavaBeans的使用


7、JavaBean简介及设计原则


8、 什么是jsp动作


9、关于JavaBean的jsp动作


10、 在jsp页面中如何使用Javabeans


11、案例演示


一、application

1、概述:


application对象为多个应用程序保存信息,对于一个容器而言每个用户都共同使用一个application,这和session对象是不一样的。服务器启动后,就会自动创建application对象,这个对象一直会保持,直到服务器关闭为止。

2、常用方法:


(1)getAttribute(String name)

** 返回有name指定的名字的application对象的属性的值


(2)setAttribute(String name,Object object)

** 设置有name指定名字的application对象的属性的值object


(3)Enumeration getAttributeNames()

** 返回所有可用属性名的枚举


(4)getServerInfo():返回jsp(servlet)

** 引擎及版本号

3、经典案例:application实现统计网站访客

<%
	//判断application对象中有没有保存为count的参数
	//如果没有,在application对象中新增一个名为count的参数
	if(application.getAttribute("count")!=null){
		application.setAttribute("count",new Integer(0));
	}
	使用application对象读取count参数的值,再在原值基础上累加1 
	Integer count = (Integer)application.getAttribute("count");
	application.setAttribute("count", new Integer(count.intValue()+1));
%>
欢迎,您是第:<%=application.getAttribute("count") %>位访问者

4、application对象常用的方法


  • public void setAttribute(String name,Object value):使用指定名称将对象绑定此会话。

  • public Object getAttribute(String name):返回与此会话中的指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回null。

  • Enumeration getAttributeNames():返回所有可用属性名的枚举

  • String getServerInfo():返回jsp(servlet)引擎及版本号

5、案例演示


(1) application的方法演示—–建application.jsp页面


<!– 使用application对象setAttribute()保存信息 –>

<%

application.setAttribute(“city”,”长沙市”);//所在城市

application.setAttribute(“postCode”,”410000″);//邮编号码

application.setAttribute(“email”,”15084961293@163.com”);//邮箱

%><br/>

<!– 使用application对象getAttribute()保存信息 –>

所在城市:<%=application.getAttribute(“city”) %><br/>

<!– 使用application对象getAttributeNames()获取所有属性包括系统内置属性 –>

application对象中的属性有:<%

Enumeration<String> attributes =  application.getAttributeNames();

//遍历枚举

while(attributes.hasMoreElements()){//如果存在下一条数据

out.println(attributes.nextElement()+”<br/>”);

}

%><br/>

JSP(SERVLET)引擎名及版本号:<%=application.getServerInfo() %>


(2) application实现统计网站访客


<!– 使用application实现统计网站访客 –>

<%

//判断application对象中有没有保存为count的参数

//如果没有,在application对象中新增一个名为count的参数

if(application.getAttribute(“count”)!=null){


application.setAttribute(“count”,new Integer(0));

}

使用application对象读取count参数的值,再在原值基础上累加1

Integer count = (Integer)application.getAttribute(“count”);

application.setAttribute(“count”, new Integer(count.intValue()+1));

%>


欢迎,您是第:<%=application.getAttribute(“count”) %>位访问者

二、javabean封装

1、概述:


(1)javabean是一种组件技术


(2)javabean技术有助于将JSP页面中的处理业务的逻辑代码与展示页面效果的显示代码分离


(3)JavaBean就是一个普通的java类,也称之为简单java对象–POJO


(Plain Ordinary Java Object),是Java程序设计中一种设计模式,是


一种基于 Java 平台的软件组件思想


(4)web中的javabean开发模式—DAO模式一样的

2、javabean规则:


(1)有无参的构造函数


(2)成员属性私有化


(3)封装的属性如果需要被外所操作,必须编写public类型的setter、getter方法

3、为什么需要使用Javabean?


使用javaBean的好处就是:封装,重用,可读!

4、javabean的优点:


(1)减少代码冗余,相同功能的代码不必重复编写。


(2)功能区分明确,相同功能写在一个类中。相似功能放在同一个包中


(3)提高代码的可维护性

5、javabean分类:


(1)封装数据


(2)封装业务逻辑


6、JavaBeans的使用



内容:

①JavaBean简介

②JavaBean设计原则

③Jsp中如何使用Javabean

④<jsp:useBeans>

⑤<jsp:getProperty>

⑥<jsp:setProperty>

⑦Javabean的四个作用域范围

7、JavaBean简介及设计原则


  • 【JavaBean简介】符合某种特定的规范的Java类,使用Javabeans的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性。

  • 【Javabean的设计原则】①公有类②无参的公有的构造方法③属性私有化④get和set方法封装

  • –举例:Student

public class Student{

private String name;

//无参构造方法

public Student(){}

public   void setName(String name){


this.name = name;

}

public String getName(){


return name;

}

}

8、 什么是jsp动作



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

9、关于JavaBean的jsp动作



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

10、 在jsp页面中如何使用Javabeans



①使用普通的java类一样,创建javabean实例。–案例实现登录

第一步:在src中编写com.entity包再编写User类,并遵循javabean设计原则

第二步:在dologin.jsp页面中实例化Users类并设置值与login.jsp页面输入的信息比较,匹配成功登录admin.jsp



②在jsp页面中通常使用jsp动作标签使用javabean:useBean、getProperty、setProperty

**<jsp:useBean>  在jsp页面中实例化或者在指定范围内使用javabean,语法如下:

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

第一步:在页面编写:

<jsp:useBean id = “myUsers” class = “com.entity.Users” scope = “page”>

第二步:获取

<%=myUsers.getUsername%>//null值,没有初始化


③<jsp:setProperty>  给已经实例化的Javabean对象的属性赋值,一共有四种形式。

** <jsp:setProperty name = “JavaBean实例名” property = “*” />(跟表单关联)

** <jsp:setProperty name = “JavaBean实例名” property = “JavaBean属性名” />(跟表单关联)

** <jsp:setProperty name = “JavaBean实例名” property = “JavaBean属性名” value= “BeanValue” />(手工设置)

** <jsp:setProperty name = “JavaBean实例名” property = “propertyName” param = “request对象中的参数名” />(跟request参数关联)

11、案例演示

    <h1>系统登录</h1>
        <hr>
         <form name="loginForm" action="dologin.jsp?mypass=999999" method="post">
      <table>
        <tr>
          <td>用户名:</td>
          <td><input type="text" name="username" value=""/></td>
        </tr>
        <tr>
          <td>密码:</td>
          <td><input type="password" name="password" value=""/></td>
        </tr>
        <tr>
          <td colspan="2" align="center"><input type="submit" value="登录"/></td>
          
        </tr>
      </table>
    </form>
--------------------------------------------------------------------------------------------------------------------------------
    <jsp:useBean id="myUsers" class="com.po.Users" scope="page"/>
    <h1>setProperty动作元素</h1>
    <hr>
   <!--根据表单自动匹配所有的属性 -->
   <%-- 
   <jsp:setProperty name="myUsers" property="*"/>  
   --%>
   <!--根据表单匹配所有部分的属性 -->
   <%-- 
   <jsp:setProperty name="myUsers" property="username"/>  
   --%>
   <!--根表单无关,通过手工赋值给属性 -->
   <%-- 
   <jsp:setProperty name="myUsers" property="username" value="lisi"/>
   <jsp:setProperty name="myUsers" property="password" value="888888"/>
   --%>
   <!--通过URL传参数给属性赋值 -->
   <jsp:setProperty name="myUsers" property="username"/>
   <jsp:setProperty name="myUsers" property="password" param="mypass"/>
   <!-- 使用传统的表达式方式来获取用户名和密码 -->
   <%--     
       用户名:<%=myUsers.getUsername() %><br>
       密码:<%=myUsers.getPassword() %><br> 
   --%>
   <!-- 使用getProperty方式来获取用户名和密码 -->
      用户名:<jsp:getProperty name="myUsers" property="username"/> <br>
      密码:<jsp:getProperty name="myUsers" property="password"/><br>



版权声明:本文为m0_64522859原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。