WEB核心【案例:JSP回显信息】第七章
目录
1,JSP回显信息
1,1 引言
1,2 概述及格式
1,3 课堂案例
1,4 JSP作用域回显
1,5 JSP导包及集合回显
1,6 案例代码实现
1,JSP回显信息
1,1 引言
目标:熟练掌握JSP信息回显技术
想要进行题目要求的回显:
使用Servlet拼接字符串是可以实现的
举个例子:一个Servlet程序进行写入页面回显:缺点就是很有缺点基本没人用,写了个示例大家了解一下
public void run1() throws IOException { boolean result = true; String str = ""; if(result){ str = "登录成功"; }else{ str = "登录失败"; } PrintWriter w = getResponse().getWriter(); w.write("\n" + "\n" + "\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\t传智商城-登录页面 \n" + "\n" + "\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\n" + "\n" + "\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\n" + "\t\t\t\n" + "\t\t\t\t\n" + "\t\t\t\t\t\n" + "\t\t\t\t\n" + "\t\t\t\t\n" + "\t\t\t\n" + "\t\t\n" + "\t\t\n" "");
1,2 概述及格式
JSP是Java独有,比HTML更强大。重要:JSP本质是一个Servlet
除了可以展示HTML效果,还可以嵌入Java代码进行编程
IDEA源码中,可以看到JSP独有内容(包括java代码)
浏览器源码中,看不到JSP独有内容,只能看到htm+css+js
Title 你好
小结:
JSP可以编写java代码,html不行。
1,3 课堂案例
课堂案例:JSP编写九九乘法表
Title 九九乘法表
<% //外层控制行 for (int i = 1; i <=9 ; i++) { //内层控制列 for (int j = 1; j <=i ; j++) { out.write(j+"*"+i+"="+(j*i)+" "); } out.write("
"); } %>
1,4 JSP作用域回显
JSP展示作用域数据案例:
Servlet
//需求:访问run2,向request作用域传递 username=小李,请求转发到demo3.jsp//demo3.jsp上进行username信息回显public String run2(){ getRequest().setAttribute("username","小李"); return "forward:/demo3.jsp";}
JSP:
Title ${username}
${xxxx}
Servlet:getRequest().setAttribute("key","value");
请求转发到JSP
JSP:${key}
如果获取不到该键值对,JSP表达式,返回空字符串
1,5 JSP导包及集合回显
JSP导包和集合数据回显:
Demo1Servlet:
//需求:访问run4,向request作用域传递 List数据,请求转发到demo4.jsp//demo4.jsp上进行List数据回显public String run4(){ List plist = new ArrayList(); Collections.addAll(plist, new Person("007","坤哥","20"), new Person("008","隆哥","20"), new Person("009","骄姐","18") ); getRequest().setAttribute("plist",plist); return "forward:/demo4.jsp";}
Jsp:
Title ${plist}
<% List plist = (List) request.getAttribute("plist"); for (Person p : plist) { out.write(p.getId()+","+p.getName()+","+p.getAge()+"
"); } %>
1,6 案例代码实现
login.jsp
Demo2Servlet
public String login(){ boolean result = true; String str = ""; if(result){ str = "登录成功"; }else{ str = "登录失败"; } getRequest().setAttribute("msg",str); return "forward:/login.jsp";}
login.jsp
会员登录 USER LOGIN
${msg}