jsp基础
2016-10-17 22:52
369 查看
1、web应用和web.xml
结构webApp
|-WEB-INF
|-classes
|-lib
|-web.xml
|-index.jsp
配置web.xml
配置jsp
配置和管理Servlet
配置和管理Listener
配置和管理Filter
配置标签库
配置jsp属性
配置和管理资源引用
Web应用首页
Web3.0新增配置:
metadata-complete:该属性接受true和false两个属性值。当该属性为true,该web应用将不会加载annotation配置的web组件(如servlet,filter,listener等);
配置web应用的首页列表
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.xhtml</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
2、jsp输出
<% out.println(newjava.util.Date());%><% =i%>
3、jsp流程控制语句
<% for(inti=0;i<7;i++){%><p>java<%=i%></p>
<%}%>
4、jsp注释
Jsp注释不会输出到客户端<%--jsp注释 --%>
5、jsp声明
<%!//声明一个整型变量
public
int count;
//声明一个方法
public String info(){
return
"hello world";
}
%>
<%
out.println(count++);
out.println(info());
%>
6、jsp脚本
<%//注册数据库驱动
Class.forName("com.mysql.jdbc.Driver");
//获取数据库连接
Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbc",
"root","");
Statementstmt=conn.createStatement();
//获得结果集
ResultSet rs=stmt.executeQuery("select * from tb_user");
%>
<%
while(rs.next()){
%>
<tr><td><%=rs.getString(1)
%></td></tr>
<%}
%>
7、jsp的三个编译指令
page:该指令时针对当前页面的指令include:用于指定包含另一个页面
taglib:用于定义和访问自定义标签
page指令
page指令通常位于jsp页面的顶端,一个jsp页面可以使用多个page指令。
errorPage
testError.jsp
<%@
page language="java"import="java.util.*"
pageEncoding="UTF-8"
errorPage="error.jsp"%>
<%@
page import="java.sql.*"%>
Error.jsp
<%@
page language="java"import="java.util.*"
pageEncoding="UTF-8"
isErrorPage="true"%>
Include指令
将一个外部文件嵌入到jsp页面,同时解析页面中的jsp语句
<%@
include file="part.jsp"%>
8、jsp的七个动作指令
动作指令与编译指令不同,编译指令时通知servlet引擎处理消息,而动作指令只是运行时的动作。编译指令在将jsp编译成servlet时起作用;而处理指令通常可替换成jsp脚本,它只是jsp脚本的标准化写法。Jsp动作指令只要有如下7个:
jsp:forward
jsp:param
jsp:include
jsp:plugin
jsp:useBean
jsp:setProperty
jsp:getProperty
forward指令
forward指令用于将页面相应转发到另外的页面。
执行forward转发请求时候,客户端的请求参数不会丢失。
index.jsp
<jsp:forward
page="forward-result.jsp">
<jsp:param
value="29"name="age"/>
</jsp:forward>
forward-result.jsp
<%=request.getParameter("age")%>
include指令
include指令用于包含某个页面,将被导入页面的body内容插入本页面。
静态导入和动态导入有三点区别:
1、静态导入时将被导入页面的代码完全融入,两个页面融合成一个整体servlet;而动态导入则在servlet中使用include方法来导入被导入页面的内容。
2、静态导入时被导入页面的编译指令起作用,而动态导入时被导入页面的编译指令失去作用。只是插入被导入页面的body内容。
3、动态包含还可以增加额外的参数。
Index.jsp
<jsp:include
page="forward-result.jsp">
<jsp:param
value="32"
name="age"/>
</jsp:include>
forward-result.jsp
<%=request.getParameter("age")%>
useBean、setProperty、getProperty指令
这三个指令时与javabean相关的指令。
id 属性石javabean的实例名;
class属性石javabean的实现类;
scope属性用于指定javaBean实例的作用范围,该范围有以下4个值:
1、page:该javabean实例仅在该页面有效;
2、request:该javabean实例在本次请求有效;
3、session:该javabean实例在本次session内有效;
4、application:该javabean实例在本应用内有效;
setProperty指令
name属性确定需要设定的javabean的实例名;
property属性确定需要设置的属性名;
value属性则确定需要设置的属性值;
getProperty指令
name属性确定需要输出的javabean的实例名;
property属性确定需要输出的属性名;
<!-- 创建javabean实例,该实例的实例名为p1
-->
<jsp:useBean
id="p1"class="com.xxx.domain.Person"
scope="page"/>
<!-- 设置p1的name属性
-->
<jsp:setProperty
property="name"name="p1"
value="wawa"/>
<!-- 设置p1的age属性值
-->
<jsp:setProperty
property="age"name="p1"
value="23"/>
<!-- 输出p1的name属性值
-->
<jsp:getProperty
property="name"name="p1"/><br>
<!-- 输出p1的age属性值
-->
<jsp:getProperty
property="age"name="p1"/>
下面和上面的效果是一样
<%
//实例化javabean
Person p1=new Person();
//将p1放到page的生存范围中
pageContext.setAttribute("p1", p1);
//将p1放入request的生存范围中
//request.setAttribute("p1",p1);
//将p1放入session的生存范围中
//session.setAttribute("p1",p1);
//将p1放入application的生存范围中
//application.setAttribute("p1",p1);
//设置p1的name属性值
p1.setName("wawa");
//设置p1的age属性
p1.setAge(23);
%>
<!-- 输出p1的name属性值
-->
<%=p1.getName()%>
<!-- 输出p1的age属性值
-->
<%=p1.getAge()%>
plugin指令
用于下载服务器端的javabean或applet到客户端执行。
很少使用
Param指令
Param指令用于设置参数值,这个指令不能单独使用。
Param指令可以与以下三个指令结合使用
jsp:include
jsp:forward
jsp:plugin
相关文章推荐
- Servlet/JSP配置详解(非常基础)
- jsp基础学习资料
- jsp基础学习资料
- JAVA基础:提升JSP应用程序的七大绝招
- JSP基础知识
- OpenCms JSP基础文档——OpenCms中JSP特性
- Jsp配置基础
- Servlet和JSP知识复习(2)Servlet基础
- Jsp基础知识总结.
- jsp基础学习资料
- 【Java基础】第十讲 JSP与Servlet
- jsp基础学习资料(3)
- jsp基础学习资料
- jsp 基础
- jsp基础语法
- 一、Servlet和JSP概述 (基础教程1)
- jsp基础
- 基础开发入门级:JSP与ASP的比较
- OpenCms JSP基础文档——在JSP中访问OpenCms特性
- 资源共享之Jsp基础