java中Lisi集合作用域,Java jsp技术

jsp技术

jsp脚本:

1) ----- 内部的java代码翻译到service方法的内部

2) ----- 会被翻译成service方法内部out.print()

3) ---- 会被翻译成servlet的成员的内容

jsp注释:  不同的注释可见范围是不同

1)Html注释: ---可见范围 jsp源码、翻译后的servlet、页面 显示html源码

2)java注释://单行注释  /*多行注释*/ --可见范围 jsp源码 翻译后的servlet

3)jsp注释: ----- 可见范围 jsp源码可见(安全性会高一些)

jsp运行原理

jsp第一次被访问是会被web容器翻译成servlet:

第一次访问---->helloServlet.jsp---->helloServlet_jsp.java---->编译运行

PS:被翻译后的servlet在Tomcat的work目录中可以找到

jsp指令:

page指令:属性最多的指令,根据不同的属性,知道整个页面特性

格式:

20181116105900136641.png

include指令:可以把一个jsp文件放到另一个jsp页面里面

20181116105900237227.png

20181116105900367110.png

20181116105900383711.png

taglib指令:在jsp页面中引入标签库(jstl标签库、struts2标签库)

20181116105900417891.png

20181116105900442305.png

20181116105900463789.png

jsp的9个内置对象:out, request, response, config, session, application, page, pageContext, exception

out对象:向客户端输出内容     out.write()

out缓冲区默认8kb 可以设置成0 代表关闭out缓冲区 内容直接写到respons缓冲 器

20181116105900581953.png

20181116105900599532.png

20181116105900617110.png

pageContext对象:jsp页面的上下文对象

page对象与pageContext对象不是一回事

1)pageContext是一个域对象

setAttribute(String name,Object obj)

getAttribute(String name)

removeAttrbute(String name)

============

pageContext可以向指定的其他域中存取数据

setAttribute(String name,Object obj,int scope)

getAttribute(String name,int scope)

removeAttrbute(String name,int scope)

findAttribute(String name)

---依次从pageContext域,request域,session域,application域中获取属性,在某个域中获取后将不在向后寻找

四大作用域总结:

pageContext域:当前jsp页面范围

request域:一次请求

session域:一次会话

application域:整个web应用

jsp标签(动作)

1)页面包含(动态包含):

2)请求转发:

=============================================================

EL技术:EL(Express Lanuage)表达式可以嵌入在jsp页面内部,减少jsp脚本的编写,EL 出现的目的是要替代jsp页面中脚本的编写

EL最重要的作用:从域中取出数据

jsp脚本:

EL表达式替代上面的脚本:${requestScope.name}

${requestScope.username}

${sessionScope.username}

${applicationScope.username}

${username }

EL从四个域中获得某个值${key};

---同样是依次从pageContext域,request域,session域,application域中 获取属性,在某个域中获取后将不在向后寻找

1)获得普通字符串2)获得User对象的值3)获得List的值

request.setAttribute("name", "request");//存储一个对象

Users user=newUsers();

user.setId(1);

user.setUsername("lisi");

user.setPwd("123");

session.setAttribute("user", user);//存储一个集合

List list=new ArrayList();

Users user1=newUsers();

user1.setId(1);

user1.setUsername("wangwu");

user1.setPwd("123");

list.add(user1);

Users user2=newUsers();

user2.setId(1);

user2.setUsername("zhaoliu");

user2.setPwd("123");

list.add(user2);

application.setAttribute("List", list);%>


out.write(u.getUsername());%>


${requestScope.name}

${sessionScope.user.username}

${applicationScope.List[0].pwd}


${name }

${user.username}

${List[0].pwd}

EL执行表达式:${1+1},,${user==null?true:false}等等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值