---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net
下面是使用javabBean的一个小例子:
<%@ page language="java" import="java.util.*,javaBean.*" pageEncoding="UTF-8"%>
首先导入要使用的javaBean类,
<body>
<jsp:useBean id="person" class = "javaBean.Person"></jsp:useBean>
<jsp:getProperty property="name" name="person"/><br>
<jsp:getProperty property = "age" name = "person"/><br>
<jsp:setProperty property="name" name="person" value = "lishi"/>
<jsp:setProperty property="age" name="person" value = "30"/>
<jsp:getProperty property="name" name="person"/><br>
<jsp:getProperty property = "age" name = "person"/><br>
</body>
上面是使用javaBean来获取javaBean的相应 的属性的值及更改里面相应的属性值。
也可以这样写:<%=person.getName()%>通过这个可以说明,上面也是获得javaBean的一个对象。
编译好的jsp程序可以 明显看出 name 会转化为getName();可以看出javaBean定义的用意 。
jsp:setProperty property="name" name="person" param="hello"/>
<%=person.getName() %>
http://localhost:8080/test/javaBean/javaBean.jsp?hello=50
上面是param参数的用法。在地址后面加上参数的值: ?hello=50;即可去给相应的属性赋值。
跟以前的存活范围一样。
<jsp:useBean id="person" class = "javaBean.Person" scope="page"></jsp:useBean>
Scope就是声明javaBean的存活范围的。
Request的使用:
<jsp:useBean id="person" class = "javaBean.Person" scope="request"></jsp:useBean>
<jsp:forward page="javaBean2.jsp"></jsp:forward>
javaBean2.jsp:
<body>
<%Person p = (Person)request.getAttribute("person"); %>
<%=p.getName() %>
</body>
可以这样获得 javaBean的对象。
这是session的生成代码。
<jsp:useBean id="date" class = "java.util.Date" scope = "session"></jsp:useBean><br>
<%=date.toLocaleString() %>
如果是这种,结果只会是第一次刷新的时间 ,以后就不会再变了。
为什么,可以从上面原代码中找到答案,因为如果没有存在当前对象,才会去new一个当前对象把它放到session范围内,所以第二次刷新时该对象就已经存在了,所以直接从里面取出其值就可以了,取出的值就是第一次放入的值 ,所以它的值一直不会改变。
但是如果是set方法时其值是会改变的。
上面是HttpServlet的源代码:其中service方法是负责把请求传给相应的方法,如doget , dopost。 等。 HttpServlet 继承自……,只需重写service方法就可以了。HttpServlet有自己的service方法,参数接收的是HttpServletRequest与HttpServletResponse。
首先调用getMethod()方法或得是get post 等,然后根据相应的名字调用 doget ,dopost
如下等于什么就调用哪个方法。
下面是doGet方法的实现,可以看到,它的实现是返回一个错误,这就要求子类要重写这些doGet , doPost方法才可以。