JSP第二篇

来源:互联网 发布:运维自动化软件 编辑:程序博客网 时间:2024/05/21 23:33

1.javabean

特点:
1.是公共类
2.有无参的构造方法
3.属性都是私有的
4.每个属性都有get和set方法。

2.jsp动作元素:

jsp动作

2.1 useBean

<jsp:useBean id="实例" class="包.类"></jsp:useBean>实例.get/set

2.2 setProperty

//和表单关联<jsp:setProperty name="实例" property="*" /><jsp:setProperty name="实例" property="属性名" />//手工设置,与表单无关<jsp:setProperty name="实例" property="属性名" value="值" /><jsp:setProperty name="实例" property="属性名" param="request对象中的参数名" />

2.3 getProperty

<jsp:getProperty name="实例" property="属性名" />

2.4 scope(javaBean作用域范围)

1.page//仅在当前页面有效
2.request//在当前请求及服务器转发后的请求中有效 HttpRequest.getAttribute()获取JavaBean对象
3.session//在当前会话中有效
使用HttpSession.getAttribute()获取JavaBean对象
4.application//在当前application有效
//使用application.getAttribute()获取JavaBean对象

3.model1

Model1分为三层:
1.界面层:由JSP页面进行与客户端浏览器的交互,可以直接调用JavaBeans
2.业务逻辑层:由JavaBeans进行处理业务逻辑,封装数据,并与数据库层进行交互
3.数据库层:底层数据库,可被javaBeans访问
避免了JSP页面直接进行业务逻辑处理所带来的维护性,扩展性差的弱点.体现了分层设计的思想

4.Jsp状态管理

由于http的无状态性;需要对象来保存浏览器的信息

4.1内置对象session

4.2 cookie:WEB服务器保存在用户客户端的文本信息(登录,购物车)

cookie对象

tips: cookies.getName()得到的字符串不能直接用==与字符串做比较!否则会发现它们俩不相等

方法:void setMaxAge(int);设置有效期
int getMaxAge();获得有效期
void setValue(String Value);对cookie赋值
String getName()
String getValue()

tips:由于保存cookie时默认编码为xxx,所以在未设置编码的情况下输入中文会出现乱码现象。所以外面需要用到特殊的转码工具,在java.net.*包内,URLEncoder以及URLDecoder对象的转码方法。

String username= URLEncoder.encode(request.getParameter("username"),"utf-8");//转码方法username=URLDecoder.decode(c.getValue(),"utf-8");//解码

与session的区别:
Session和cookie的区别

5.JSP指令与动作元素

5.1 include

指令:<%@ include file="url" %>动作:<jsp:include page(包含页面)="URL" flush(被包含的页面是否从缓冲区读取)="true|false" />

区别:指令和动作的区别

5.2 forward

动作:<jsp:forward page="URL" />相当于request.getRequestDispatcher("url").forward(request,response);

5.3 param(传参)

动作:<jsp:param name="" value="" />常常与forward一起使用,作为其子标签:<jsp:forward> <jsp:param /></jsp:forward>

6. 在web.xml中设置初始化参数:

1.先在web.xml里加入标签<init-param /><param-name /><param-value />2.在Init()方法中利用get方法获取设置的参数:this.setUsername(this.getInitParameter("username"));

7.MVC(model,view,controller),MODEL2

MVC模型

其中,浏览器提交一个请求,发送到控制器(servlet),servlet实例化一个模型,通常是JavaBean类,实现数据库操作,然后返回给servlet,最后servlet将信息传递给视图(JSP),返回到浏览器。

0 0
原创粉丝点击