- 浏览: 98425 次
- 性别:
- 来自: 北京
文章分类
最新评论
8.1 表达式语言简介
JSP用于在网页上显示动态内容,通常需要在JSP页面中嵌入Java脚本以完成复杂功能。但是大量的Java脚本使得JSP页面难以维护。一种类似JavaScript语言—JSP表达式语言可用于在网页上生成动态内容,并代替JSP脚本元素。JSP表达式语言是从JSP2.0规范开始支持的技术。
8.2 禁用EL 表达式计算
8.3 变量
8.4 隐式对象
8.5 文字常量
8.6 运算符
8.7 保留字
8.8 表达式使用案例
8.9 本章小结
EL的主要功能:
精确的访问存储对象
Bean属性的简略记法
空值取代错误消息
之前代码:
Java代码
1.<%
2. pageContext.setAttribute("name","darkness");
3.%>
4.<%
5. if(pageContext.getAttribute("name") != null)
6. {
7.%>
8. <%=pageContext.getAttribute("name")%>
9.<%
10. }
11.%>
12.
13.<!--可以发现,这样,代码较多-->
14.<%
15. pageContext.setAttribute("name","darkness");
16.%>
<%
pageContext.setAttribute("name","darkness");
%>
<%
if(pageContext.getAttribute("name") != null)
{
%>
<%=pageContext.getAttribute("name")%>
<%
}
%>
<!--可以发现,这样,代码较多-->
<%
pageContext.setAttribute("name","darkness");
%>
${name}
使用表达式时不需要去判断属性是否为空
Java代码
1.<!--如果在不同的属性范围中设置了同名的属性,则之后的同名属性无法找到-->
2.<!--按照四中标志位来寻找-->
3.<%
4. pageContext.setAttribute("name","darkness");
5. request.setAttribute("name","darkness");
6.%>
7.${name}
<!--如果在不同的属性范围中设置了同名的属性,则之后的同名属性无法找到-->
<!--按照四中标志位来寻找-->
<%
pageContext.setAttribute("name","darkness");
request.setAttribute("name","darkness");
%>
${name}
EL的主要功能在于MVC设计模式之中
后台:
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo01 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. req.setAttribute("name","www.sky.org") ;
12. // 服务器端跳转
13. req.getRequestDispatcher("eldemo03.jsp").forward(req,resp) ;
14. }
15. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
16. {
17. this.doGet(req,resp) ;
18. }
19.};
20./*
21. <servlet>
22. <servlet-name>el01</servlet-name>
23. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo01</servlet-class>
24. </servlet>
25. <servlet-mapping>
26. <servlet-name>el01</servlet-name>
27. <url-pattern>/eldemo/el_1</url-pattern>
28. </servlet-mapping>
29.*/
30.后台:${name}
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo01 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
req.setAttribute("name","www.sky.org") ;
// 服务器端跳转
req.getRequestDispatcher("eldemo03.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el01</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el01</servlet-name>
<url-pattern>/eldemo/el_1</url-pattern>
</servlet-mapping>
*/
后台:${name}
*访问Bean的属性 :
1、点号记法
${beanName.beanProperty}
2、数组记法
${beanName[“beanProperty”]}
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo02 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. Simple s = new Simple() ;
12. s.setName("darkness") ;
13. req.setAttribute("sim",s) ;
14. // 服务器端跳转
15. req.getRequestDispatcher("eldemo04.jsp").forward(req,resp) ;
16. }
17. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
18. {
19. this.doGet(req,resp) ;
20. }
21.};
22./*
23. <servlet>
24. <servlet-name>el02</servlet-name>
25. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
26. </servlet>
27. <servlet-mapping>
28. <servlet-name>el02</servlet-name>
29. <url-pattern>/eldemo/el_2</url-pattern>
30. </servlet-mapping>
31.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo02 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
Simple s = new Simple() ;
s.setName("darkness") ;
req.setAttribute("sim",s) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo04.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el02</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el02</servlet-name>
<url-pattern>/eldemo/el_2</url-pattern>
</servlet-mapping>
*/Java代码
1.
2.package org.sky.darkness.servlet.el ;
3.
4.public class Simple
5.{
6. private String name ;
7. public void setName(String name)
8. {
9. this.name = name ;
10. }
11. public String getName()
12. {
13. return this.name ;
14. }
15.};
package org.sky.darkness.servlet.el ;
public class Simple
{
private String name ;
public void setName(String name)
{
this.name = name ;
}
public String getName()
{
return this.name ;
}
};
如果保存的是一个对象,则在 JSP页面中要写以下代码:
Java代码
1.<%@ page import=”org.sky.darkness.servlet.el.*”%>
2.<%
3.If(request.getAttribute(“sim”) != null){
4. Simple simp = (Simple)request.getAttribute(“sim”);
5.%>
6. <%=simp.getName()%>
7.<%
8. }
9.%>
10.<h1>${sim.name}</h1>
11.嵌套调用: ${ emp.name.firstName }
<%@ page import=”org.sky.darkness.servlet.el.*”%>
<%
If(request.getAttribute(“sim”) != null){
Simple simp = (Simple)request.getAttribute(“sim”);
%>
<%=simp.getName()%>
<%
}
%>
<h1>${sim.name}</h1>
嵌套调用: ${ emp.name.firstName }Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.public class NameBean
4.{
5. private String firstName ;
6. private String lastName ;
7.
8. public void setFirstName(String firstName)
9. {
10. this.firstName = firstName ;
11. }
12. public void setLastName(String lastName)
13. {
14. this.lastName = lastName ;
15. }
16. public String getFirstName()
17. {
18. return this.firstName ;
19. }
20. public String getLastName()
21. {
22. return this.lastName ;
23. }
24.};
package org.sky.darkness.servlet.el ;
public class NameBean
{
private String firstName ;
private String lastName ;
public void setFirstName(String firstName)
{
this.firstName = firstName ;
}
public void setLastName(String lastName)
{
this.lastName = lastName ;
}
public String getFirstName()
{
return this.firstName ;
}
public String getLastName()
{
return this.lastName ;
}
};
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.public class EmployeeBean
4.{
5. private NameBean name ;
6. private CompanyBean company ;
7.
8. public void setName(NameBean name)
9. {
10. this.name = name ;
11. }
12. public void setCompany(CompanyBean company)
13. {
14. this.company = company ;
15. }
16. public NameBean getName()
17. {
18. return this.name ;
19. }
20. public CompanyBean getCompany()
21. {
22. return this.company ;
23. }
24.};
package org.sky.darkness.servlet.el ;
public class EmployeeBean
{
private NameBean name ;
private CompanyBean company ;
public void setName(NameBean name)
{
this.name = name ;
}
public void setCompany(CompanyBean company)
{
this.company = company ;
}
public NameBean getName()
{
return this.name ;
}
public CompanyBean getCompany()
{
return this.company ;
}
};Java代码
1.
2.package org.sky.darkness.servlet.el ;
3.
4.public class CompanyBean
5.{
6. private String companyName ;
7. private String business ;
8.
9. public void setCompanyName(String companyName)
10. {
11. this.companyName = companyName ;
12. }
13. public void setBusiness(String business)
14. {
15. this.business = business ;
16. }
17. public String getCompanyName()
18. {
19. return this.companyName ;
20. }
21. public String getBusiness()
22. {
23. return this.business ;
24. }
25.};
package org.sky.darkness.servlet.el ;
public class CompanyBean
{
private String companyName ;
private String business ;
public void setCompanyName(String companyName)
{
this.companyName = companyName ;
}
public void setBusiness(String business)
{
this.business = business ;
}
public String getCompanyName()
{
return this.companyName ;
}
public String getBusiness()
{
return this.business ;
}
};
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo03 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. NameBean nb = new NameBean() ;
12. nb.setFirstName("darkness") ;
13. nb.setLastName("depravedAngel") ;
14.
15. CompanyBean cb = new CompanyBean() ;
16. cb.setCompanyName("www.sky.org") ;
17. cb.setBusiness("JAVA EE、JAVA SE、JAVA ME") ;
18.
19. EmployeeBean eb = new EmployeeBean() ;
20. eb.setName(nb) ;
21. eb.setCompany(cb) ;
22.
23. // 保存属性
24. req.setAttribute("emp",eb) ;
25.
26. // 服务器端跳转
27. req.getRequestDispatcher("eldemo05.jsp").forward(req,resp) ;
28. }
29. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
30. {
31. this.doGet(req,resp) ;
32. }
33.};
34./*
35. <servlet>
36. <servlet-name>el03</servlet-name>
37. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo03</servlet-class>
38. </servlet>
39. <servlet-mapping>
40. <servlet-name>el03</servlet-name>
41. <url-pattern>/eldemo/el_3</url-pattern>
42. </servlet-mapping>
43.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo03 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
NameBean nb = new NameBean() ;
nb.setFirstName("darkness") ;
nb.setLastName("depravedAngel") ;
CompanyBean cb = new CompanyBean() ;
cb.setCompanyName("www.sky.org") ;
cb.setBusiness("JAVA EE、JAVA SE、JAVA ME") ;
EmployeeBean eb = new EmployeeBean() ;
eb.setName(nb) ;
eb.setCompany(cb) ;
// 保存属性
req.setAttribute("emp",eb) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo05.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el03</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo03</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el03</servlet-name>
<url-pattern>/eldemo/el_3</url-pattern>
</servlet-mapping>
*/
Java代码
1.<h1>FirstName:${emp.name.firstName}</h1>
2.<h1>LastName:${emp.name.lastName}</h1>
3.<h1>CompanyName:${emp.company.companyName}</h1>
4.<h1>Business:${emp.company.business}</h1>
<h1>FirstName:${emp.name.firstName}</h1>
<h1>LastName:${emp.name.lastName}</h1>
<h1>CompanyName:${emp.company.companyName}</h1>
<h1>Business:${emp.company.business}</h1>
访问集合操作:
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import java.util.* ;
5.import javax.servlet.* ;
6.import javax.servlet.http.* ;
7.
8.public class ELServletDemo04 extends HttpServlet
9.{
10. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
11. {
12. List l = new ArrayList() ;
13. Simple s = null ;
14. s = new Simple() ;
15. s.setName("darkness") ;
16. l.add(s) ;
17.
18. s = new Simple() ;
19. s.setName("wind") ;
20. l.add(s) ;
21.
22. s = new Simple() ;
23. s.setName("cloud") ;
24. l.add(s) ;
25.
26. req.setAttribute("all",l) ;
27. // 服务器端跳转
28. req.getRequestDispatcher("eldemo06.jsp").forward(req,resp) ;
29. }
30. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
31. {
32. this.doGet(req,resp) ;
33. }
34.};
35./*
36. <servlet>
37. <servlet-name>el02</servlet-name>
38. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
39. </servlet>
40. <servlet-mapping>
41. <servlet-name>el02</servlet-name>
42. <url-pattern>/eldemo/el_2</url-pattern>
43. </servlet-mapping>
44.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import java.util.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo04 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
List l = new ArrayList() ;
Simple s = null ;
s = new Simple() ;
s.setName("darkness") ;
l.add(s) ;
s = new Simple() ;
s.setName("wind") ;
l.add(s) ;
s = new Simple() ;
s.setName("cloud") ;
l.add(s) ;
req.setAttribute("all",l) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo06.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el02</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el02</servlet-name>
<url-pattern>/eldemo/el_2</url-pattern>
</servlet-mapping>
*/
Java代码
1.<%@page import="java.util.*"%>
2.<%--
3. 要使用Iterator进行输出
4.--%>
5.<%
6. // List要使用Iterator输出
7. List l = (List)request.getAttribute("all") ;
8. Iterator iter = l.iterator() ;
9. while(iter.hasNext())
10. {
11. // 将取出的对象放在page范围之中
12. pageContext.setAttribute("sim",iter.next()) ;
13.%>
14. //调用隐式对象
15. <h1>${pageScope.sim.name}</h1>
16.<%
17. }
18.%>
JSP用于在网页上显示动态内容,通常需要在JSP页面中嵌入Java脚本以完成复杂功能。但是大量的Java脚本使得JSP页面难以维护。一种类似JavaScript语言—JSP表达式语言可用于在网页上生成动态内容,并代替JSP脚本元素。JSP表达式语言是从JSP2.0规范开始支持的技术。
8.2 禁用EL 表达式计算
8.3 变量
8.4 隐式对象
8.5 文字常量
8.6 运算符
8.7 保留字
8.8 表达式使用案例
8.9 本章小结
EL的主要功能:
精确的访问存储对象
Bean属性的简略记法
空值取代错误消息
之前代码:
Java代码
1.<%
2. pageContext.setAttribute("name","darkness");
3.%>
4.<%
5. if(pageContext.getAttribute("name") != null)
6. {
7.%>
8. <%=pageContext.getAttribute("name")%>
9.<%
10. }
11.%>
12.
13.<!--可以发现,这样,代码较多-->
14.<%
15. pageContext.setAttribute("name","darkness");
16.%>
<%
pageContext.setAttribute("name","darkness");
%>
<%
if(pageContext.getAttribute("name") != null)
{
%>
<%=pageContext.getAttribute("name")%>
<%
}
%>
<!--可以发现,这样,代码较多-->
<%
pageContext.setAttribute("name","darkness");
%>
${name}
使用表达式时不需要去判断属性是否为空
Java代码
1.<!--如果在不同的属性范围中设置了同名的属性,则之后的同名属性无法找到-->
2.<!--按照四中标志位来寻找-->
3.<%
4. pageContext.setAttribute("name","darkness");
5. request.setAttribute("name","darkness");
6.%>
7.${name}
<!--如果在不同的属性范围中设置了同名的属性,则之后的同名属性无法找到-->
<!--按照四中标志位来寻找-->
<%
pageContext.setAttribute("name","darkness");
request.setAttribute("name","darkness");
%>
${name}
EL的主要功能在于MVC设计模式之中
后台:
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo01 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. req.setAttribute("name","www.sky.org") ;
12. // 服务器端跳转
13. req.getRequestDispatcher("eldemo03.jsp").forward(req,resp) ;
14. }
15. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
16. {
17. this.doGet(req,resp) ;
18. }
19.};
20./*
21. <servlet>
22. <servlet-name>el01</servlet-name>
23. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo01</servlet-class>
24. </servlet>
25. <servlet-mapping>
26. <servlet-name>el01</servlet-name>
27. <url-pattern>/eldemo/el_1</url-pattern>
28. </servlet-mapping>
29.*/
30.后台:${name}
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo01 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
req.setAttribute("name","www.sky.org") ;
// 服务器端跳转
req.getRequestDispatcher("eldemo03.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el01</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el01</servlet-name>
<url-pattern>/eldemo/el_1</url-pattern>
</servlet-mapping>
*/
后台:${name}
*访问Bean的属性 :
1、点号记法
${beanName.beanProperty}
2、数组记法
${beanName[“beanProperty”]}
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo02 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. Simple s = new Simple() ;
12. s.setName("darkness") ;
13. req.setAttribute("sim",s) ;
14. // 服务器端跳转
15. req.getRequestDispatcher("eldemo04.jsp").forward(req,resp) ;
16. }
17. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
18. {
19. this.doGet(req,resp) ;
20. }
21.};
22./*
23. <servlet>
24. <servlet-name>el02</servlet-name>
25. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
26. </servlet>
27. <servlet-mapping>
28. <servlet-name>el02</servlet-name>
29. <url-pattern>/eldemo/el_2</url-pattern>
30. </servlet-mapping>
31.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo02 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
Simple s = new Simple() ;
s.setName("darkness") ;
req.setAttribute("sim",s) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo04.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el02</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el02</servlet-name>
<url-pattern>/eldemo/el_2</url-pattern>
</servlet-mapping>
*/Java代码
1.
2.package org.sky.darkness.servlet.el ;
3.
4.public class Simple
5.{
6. private String name ;
7. public void setName(String name)
8. {
9. this.name = name ;
10. }
11. public String getName()
12. {
13. return this.name ;
14. }
15.};
package org.sky.darkness.servlet.el ;
public class Simple
{
private String name ;
public void setName(String name)
{
this.name = name ;
}
public String getName()
{
return this.name ;
}
};
如果保存的是一个对象,则在 JSP页面中要写以下代码:
Java代码
1.<%@ page import=”org.sky.darkness.servlet.el.*”%>
2.<%
3.If(request.getAttribute(“sim”) != null){
4. Simple simp = (Simple)request.getAttribute(“sim”);
5.%>
6. <%=simp.getName()%>
7.<%
8. }
9.%>
10.<h1>${sim.name}</h1>
11.嵌套调用: ${ emp.name.firstName }
<%@ page import=”org.sky.darkness.servlet.el.*”%>
<%
If(request.getAttribute(“sim”) != null){
Simple simp = (Simple)request.getAttribute(“sim”);
%>
<%=simp.getName()%>
<%
}
%>
<h1>${sim.name}</h1>
嵌套调用: ${ emp.name.firstName }Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.public class NameBean
4.{
5. private String firstName ;
6. private String lastName ;
7.
8. public void setFirstName(String firstName)
9. {
10. this.firstName = firstName ;
11. }
12. public void setLastName(String lastName)
13. {
14. this.lastName = lastName ;
15. }
16. public String getFirstName()
17. {
18. return this.firstName ;
19. }
20. public String getLastName()
21. {
22. return this.lastName ;
23. }
24.};
package org.sky.darkness.servlet.el ;
public class NameBean
{
private String firstName ;
private String lastName ;
public void setFirstName(String firstName)
{
this.firstName = firstName ;
}
public void setLastName(String lastName)
{
this.lastName = lastName ;
}
public String getFirstName()
{
return this.firstName ;
}
public String getLastName()
{
return this.lastName ;
}
};
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.public class EmployeeBean
4.{
5. private NameBean name ;
6. private CompanyBean company ;
7.
8. public void setName(NameBean name)
9. {
10. this.name = name ;
11. }
12. public void setCompany(CompanyBean company)
13. {
14. this.company = company ;
15. }
16. public NameBean getName()
17. {
18. return this.name ;
19. }
20. public CompanyBean getCompany()
21. {
22. return this.company ;
23. }
24.};
package org.sky.darkness.servlet.el ;
public class EmployeeBean
{
private NameBean name ;
private CompanyBean company ;
public void setName(NameBean name)
{
this.name = name ;
}
public void setCompany(CompanyBean company)
{
this.company = company ;
}
public NameBean getName()
{
return this.name ;
}
public CompanyBean getCompany()
{
return this.company ;
}
};Java代码
1.
2.package org.sky.darkness.servlet.el ;
3.
4.public class CompanyBean
5.{
6. private String companyName ;
7. private String business ;
8.
9. public void setCompanyName(String companyName)
10. {
11. this.companyName = companyName ;
12. }
13. public void setBusiness(String business)
14. {
15. this.business = business ;
16. }
17. public String getCompanyName()
18. {
19. return this.companyName ;
20. }
21. public String getBusiness()
22. {
23. return this.business ;
24. }
25.};
package org.sky.darkness.servlet.el ;
public class CompanyBean
{
private String companyName ;
private String business ;
public void setCompanyName(String companyName)
{
this.companyName = companyName ;
}
public void setBusiness(String business)
{
this.business = business ;
}
public String getCompanyName()
{
return this.companyName ;
}
public String getBusiness()
{
return this.business ;
}
};
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import javax.servlet.* ;
5.import javax.servlet.http.* ;
6.
7.public class ELServletDemo03 extends HttpServlet
8.{
9. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
10. {
11. NameBean nb = new NameBean() ;
12. nb.setFirstName("darkness") ;
13. nb.setLastName("depravedAngel") ;
14.
15. CompanyBean cb = new CompanyBean() ;
16. cb.setCompanyName("www.sky.org") ;
17. cb.setBusiness("JAVA EE、JAVA SE、JAVA ME") ;
18.
19. EmployeeBean eb = new EmployeeBean() ;
20. eb.setName(nb) ;
21. eb.setCompany(cb) ;
22.
23. // 保存属性
24. req.setAttribute("emp",eb) ;
25.
26. // 服务器端跳转
27. req.getRequestDispatcher("eldemo05.jsp").forward(req,resp) ;
28. }
29. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
30. {
31. this.doGet(req,resp) ;
32. }
33.};
34./*
35. <servlet>
36. <servlet-name>el03</servlet-name>
37. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo03</servlet-class>
38. </servlet>
39. <servlet-mapping>
40. <servlet-name>el03</servlet-name>
41. <url-pattern>/eldemo/el_3</url-pattern>
42. </servlet-mapping>
43.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo03 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
NameBean nb = new NameBean() ;
nb.setFirstName("darkness") ;
nb.setLastName("depravedAngel") ;
CompanyBean cb = new CompanyBean() ;
cb.setCompanyName("www.sky.org") ;
cb.setBusiness("JAVA EE、JAVA SE、JAVA ME") ;
EmployeeBean eb = new EmployeeBean() ;
eb.setName(nb) ;
eb.setCompany(cb) ;
// 保存属性
req.setAttribute("emp",eb) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo05.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el03</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo03</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el03</servlet-name>
<url-pattern>/eldemo/el_3</url-pattern>
</servlet-mapping>
*/
Java代码
1.<h1>FirstName:${emp.name.firstName}</h1>
2.<h1>LastName:${emp.name.lastName}</h1>
3.<h1>CompanyName:${emp.company.companyName}</h1>
4.<h1>Business:${emp.company.business}</h1>
<h1>FirstName:${emp.name.firstName}</h1>
<h1>LastName:${emp.name.lastName}</h1>
<h1>CompanyName:${emp.company.companyName}</h1>
<h1>Business:${emp.company.business}</h1>
访问集合操作:
Java代码
1.package org.sky.darkness.servlet.el ;
2.
3.import java.io.* ;
4.import java.util.* ;
5.import javax.servlet.* ;
6.import javax.servlet.http.* ;
7.
8.public class ELServletDemo04 extends HttpServlet
9.{
10. public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
11. {
12. List l = new ArrayList() ;
13. Simple s = null ;
14. s = new Simple() ;
15. s.setName("darkness") ;
16. l.add(s) ;
17.
18. s = new Simple() ;
19. s.setName("wind") ;
20. l.add(s) ;
21.
22. s = new Simple() ;
23. s.setName("cloud") ;
24. l.add(s) ;
25.
26. req.setAttribute("all",l) ;
27. // 服务器端跳转
28. req.getRequestDispatcher("eldemo06.jsp").forward(req,resp) ;
29. }
30. public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
31. {
32. this.doGet(req,resp) ;
33. }
34.};
35./*
36. <servlet>
37. <servlet-name>el02</servlet-name>
38. <servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
39. </servlet>
40. <servlet-mapping>
41. <servlet-name>el02</servlet-name>
42. <url-pattern>/eldemo/el_2</url-pattern>
43. </servlet-mapping>
44.*/
package org.sky.darkness.servlet.el ;
import java.io.* ;
import java.util.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class ELServletDemo04 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
List l = new ArrayList() ;
Simple s = null ;
s = new Simple() ;
s.setName("darkness") ;
l.add(s) ;
s = new Simple() ;
s.setName("wind") ;
l.add(s) ;
s = new Simple() ;
s.setName("cloud") ;
l.add(s) ;
req.setAttribute("all",l) ;
// 服务器端跳转
req.getRequestDispatcher("eldemo06.jsp").forward(req,resp) ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(req,resp) ;
}
};
/*
<servlet>
<servlet-name>el02</servlet-name>
<servlet-class> org.sky.darkness.servlet.el.ELServletDemo02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>el02</servlet-name>
<url-pattern>/eldemo/el_2</url-pattern>
</servlet-mapping>
*/
Java代码
1.<%@page import="java.util.*"%>
2.<%--
3. 要使用Iterator进行输出
4.--%>
5.<%
6. // List要使用Iterator输出
7. List l = (List)request.getAttribute("all") ;
8. Iterator iter = l.iterator() ;
9. while(iter.hasNext())
10. {
11. // 将取出的对象放在page范围之中
12. pageContext.setAttribute("sim",iter.next()) ;
13.%>
14. //调用隐式对象
15. <h1>${pageScope.sim.name}</h1>
16.<%
17. }
18.%>
发表评论
-
JSP复习笔记——文件上传
2010-10-27 00:05 701SmartUpload主要的功能是上传文件 上传图片,可以通 ... -
JSP复习笔记——第11章 JSP 构架和MVC设计模式
2010-10-27 00:03 87911.1 JSP Model I 体系结构 11.2 J ... -
JSP复习笔记——第10章 连接数据库 之 JDBC相关
2010-10-27 00:03 606批处理: Java代码 1.import java.sq ... -
JSP复习笔记——第10章 连接数据库 之 jsp+DAO实现留言管理程序
2010-10-27 00:02 1043案例-jsp+DAO实现留言管理程序 ----------- ... -
JSP复习笔记——第10章 连接数据库 之 使用JSP+DAO完成用户登陆
2010-10-27 00:00 694使用JSP+DAO完成用户登陆 Java代码 1.im ... -
JSP复习笔记——第10章 连接数据库 之 DAO设计模式
2010-10-27 00:00 1113之前的开发可以发现以 ... -
JSP复习笔记——第10章 连接数据库 之 JSP+JDBC留言管理程序
2010-10-26 23:59 718JSP+JDBC留言管理程序 Java代码 1.-- 创 ... -
JSP复习笔记——第10章 连接数据库 之 使用JSP基于数据库完成用户登陆程序
2010-10-26 23:57 1047使用JSP基于数据库完成用户登陆程序 使用Statement ... -
JSP复习笔记——第10章 连接数据库 之 使用数据源
2010-10-26 23:57 609JDBC基本操作过程: 打开数据库连接 操作数据库 ... -
JSP复习笔记——第10章 连接数据库 之 连接Oracle数据库
2010-10-26 23:56 675使用JDBC连接Oracle数据库: 在Tomcat中配置O ... -
JSP复习笔记——第10章 连接数据库 之 批处理
2010-10-26 23:55 701批处理: Java代码 1.< ... -
JSP复习笔记——第10章 连接数据库 之 移动游标
2010-10-26 23:54 563JDBC2.0: * 批处理 * ... -
JSP复习笔记——第10章 连接数据库之JDBC简介与基本使用
2010-10-26 23:54 582动态web的最大特点--> 可以操作数据库 JSP属于 ... -
JSP复习笔记——第10章 访问数据库
2010-10-26 23:53 66310.1 安装与配置MySQL数据库 10.2 JDBC的实 ... -
Jsp/Servlet复习笔记-----第9章 自定义标签和JSP标准标签库
2010-10-26 23:51 732标签库: 原因:在JSP的开发中,在标准的MVC设计模式里, ... -
Jsp/Servlet复习笔记-----第7章 JavaBean组件和JSP 中的标准动作
2010-10-26 23:50 7097.1 JavaBean 简介 7.1.1 使用Bean的原 ... -
Jsp/Servlet复习笔记-----第6章 JSP基础
2010-10-26 23:48 12726.1 JSP 简介 6.1.1 JSP的需求和优点 ... -
Jsp/Servlet复习笔记-----第5章 过滤器和事件监听器
2010-10-26 23:42 7615.1.1 概念 过滤器(filter)是能够对请求和响应 ... -
Jsp/Servlet复习笔记-----第4章 会话跟踪
2010-10-26 23:39 6284.1会话跟踪的需求 4.2 创建会话 4.3 ... -
Jsp/Servlet复习笔记-----第3章 Servlet技术
2010-10-26 23:38 6303.1 简介 3.1.1 Servlet的功用 ...
相关推荐
el表达式语言,jsp标签库,servlet,过滤器,监听器,基础语法,内置对象,站点配置,常见错误,学习总结
Java网站开发(jsp+servlet)笔记,里面还包括EL表达式,JSTL标签库的使用,网站文件上传的源代码截图等
第三篇为“JSP技术基础”,主要讲述JSP的基本语法和内建对象及JSP和Servlet的集成,JavaBean和表达式语言;第四篇为“数据库访问技术”,主要讲述JDBC技术及JSP和Servlet如何通过JDBC访问数据库,以及如何改进数据库...
第八章 JDBC and Application Architecture..........................178 Hibernate学习笔记..........180 第一章 Hibernate入门.....................180 第二章 对象/关系映射基础.............183 第三章 关联...
JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料: 2014年最新Java笔试题及答案.docx 225道Java面试题 学会了Java面试随你问.docx Ant和Maven的作用是什么?两者之间功能、特点有哪些区别?.docx ...
EL表达式语言 JSTL标签库: JSP标准标签库 MVC程序架构思想&案例 [总结]Path路径问题 [总结]JavaWeb乱码问题 [转自IBM]中文编码问题 JDBC入门 Jdbc事务控制管理 常用数据库连接池 编写JDBC框架 客户信息管理系统 ...
{8}多线程}{121}{chapter.8} {8.1}线程的常用属性与方法}{121}{section.8.1} {8.2}后台线程}{123}{section.8.2} {8.3}创建线程的两种方法}{123}{section.8.3} {8.4}Runnable}{123}{section.8.4} {8.5}Sleep...
第八章 图形用户接口:GUI.............78 第十一章 事件处理模型....................79 第十三章 线程(Threads)....................80 第十四章 标准I/O流与文件.............84 第十五章 网络编程.89 Tiger学习...
EL表达式语言. GET和POST区别. Jsp语法. EL表达式语言. iBATIS. JDBC编程. JDBC驱动加载. Servlet.过滤器,监听器 struts相关笔记. 等等...... 里面是当年自学JAVA时的一些笔记,内容都是TXT格式的,都是一些基础性的...
模块二:使用eclipse和idea快速开发jsp(idea和tomcat的相关配置、eclipse创建web项目、jsp页面元素、jsp九大内置对象、四大作用域对象、解决get/post请求乱码问题、cookie和session详解、请求重定向);模块三:...
恭喜你,环境搭建配置成功,接下来第二章,将讲述基于接口的操作方式,增删改查。 整个工程目录结构如下: 除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! mybatis实战教程(mybatis in action)之二:以...
详细Javaweb笔记,源码解析 纯粹Servlet实现增删查改 请求转发和重定向 session和cookie JSP指令、EL表达式、JSTL标签库 过滤器、监听器
1.Tomcat和HTTP协议 2.Servlet基础 3.HttpServletRequest请求对象 4.JSP技术和会话跟踪 5.JSTL和EL表达式 6.过滤器 7.监听器 8.JDBC 9.文件上传和下载 10.JSP的开发模型——MVC设计架构
web开发课程笔记、源码和课程视频,适合自学web、有编程基础...内含:html、css、javascript、jQuery、XML、Tomcat、Servlet、jsp、EL表达式、JSTL标签库、cookie、session、Filter过滤器、json、Ajax请求、项目实战。
笔记说明:包含servlet(高新技术、dom解析、sax解析、HTTP协议、JSP、DTD、自定义标签库、JSTL标签库、 EL表达式、Filter)、mysql、jdbc、文件上传与下载、Ajax、jQuery、struts2、struts2高级、spring、hibernate、...
八进制数,零开头 011(八进制)=9(十进制) 十六进制数,零x开头 0x55(十六进制)=5*16+5(十进制) 类型:数据都必须有类型 boolean (8bit,不定的)只有true和false两个值 char 16bit, 0~2^16-1 (2^16=6万6) byte ...