一、JSP(java server pages)
1、概念:
jsp是一种动态网页技术标准。jsp部署在服务器上,根据请求来动态生成html、xml和其他格式的网页,然后返回给请求者。jsp以java语言为脚本语言。
jsp将java代码和特定变动内容放在静态页面中,以静态页面为模板,动态生成其中的部分内容。jsp在运行时会先被jsp编译器编译成servlet.java文件,然后再被编译成class文件。
2、为什么要使用jsp
jsp就是一个特殊的servlet。
普通的servlet也可以通过wirte()来向客户端生成网页,但是css,html,java代码写在了一块,耦合度高,可读性差。所以官方就制定了一个标准,即可显示数据,又可以设置css和js.
3、JSP创建过程
①客户端发送请求到服务器,服务器根据请求来加载指定的jsp文件
②web服务器的jsp引擎编译将jsp文件加载为servlet.java文件
③jsp引擎将servlet.java文件再编译成class文件
④服务器执行class文件
⑤服务器将执行结果返回给客户端
4、jsp的组成
Ⅰ、指令
作用:用于配置jsp页面,加载资源文件
格式:<%@ 指令名称 属性名=属性值%>
<!--导入jar包--> <%@ page import="java.util.List" %> <%@ page import="java.util.Map" %> <!--设置页面的字符集编码 和mime 类型--> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
Ⅱ、注释
<!-- --> 只能注释html代码
<%-- --%>所有代码都可以注释
Ⅲ、9大内置对象:在jsp中不用创建对象,直接使用的对象
pageContext 、request、session、application、response、page、out、config、exception
Ⅳ、四大域对象
pageContext、request、session、application
注意:
<% %> 这个标签中写java代码
<%=变量名 %> 这种方式表示可以将java变量显示在jsp页面中
<%@ page import="java.util.Map" %> <%@ page import="java.util.List" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>用户信息展示</title> <style> table{ background-color: red; border: 2px solid blue; } td{ border: 1px solid green; } </style> </head> <body> <table> <thead> <tr> <th>编号</th> <th>用户名</th> <th>密码</th> </tr> </thead> <tbody> <% List<Map<String, Object>> maps = (List<Map<String, Object>>)request.getAttribute("maps"); for (Map<String, Object> map : maps) { %> <tr> <td><%=map.get("id")%></td> <td><%=map.get("username")%></td> <td><%=map.get("password")%></td> </tr> <% } %> ${requestScope.maps} ${sessionScope.msg} </tbody> </table> </body> </html>