J2EE之路(二)ServletContext和JSP基础

ServletContext,可以把它想象成一个公用的空间,可以被所有用户访问。

也就是说A客户能访问,B客户能访问,C客户也能访问。

在asp或者jsp中称之为Application.

 

1:如何得到ServletContext实例

this.getServletContext();

 

2:与Session非常相似,也是键值对,键是String型,值是Object型。

添加属性:setAttribute(String name,Object ob);

得到值:getAttribute(String name); 返回Object

删除属性removeAttribute(String name)

 

3:生命周期

ServletContext中的属性的生命周期从创建开始,到服务器关闭结束。

 

 

JSP基础

--JSP的基本语法

(1)指令元素用于从JSP发送一个信息到容器,比如设置全局变量,文字编码,引入包等

1,page指令

<%@page contentType="text/html;charset=gb2312"%>

2,include指令

<%@include file="filename"%>

3,taglib指令:这个指令允许在JSP页面使用自定义标签

<myTag:yourTag numl="123">

 

(2)脚本元素

1.script <%java代码%>

2.表达式 <%=java表达式%> <%=rs.getString(1)%>

3:declaration

<%!变量声明 %> <%! int count = 10%>

<%!函数声明 %>

<%!int jisuan(int num)

          int result=0;

          for(int i=0;i<num;i++){

                result = result + i;

          }

%>

 

(3)动作元素--动作元素是使用xml语法写的,是jsp规定的一系列标准动作,在容器处理jsp时,当容器遇到动作元素时,就执行响应的操作

1:<jsp:useBean>      //创建一个javaBean实例

2:<jsp:setProperty>  //给一个javaBean实例设置初始值

3:<jsp:param>          //给一个jsp设置参数,常常与<jsp:include>结合使用

      <jsp:include file="info.jsp">

           <jsp:param name="parameter1" value="parameterValue"/>

           <jsp:param name="parameter2" value="parameterValue"/>

      </jsp:include>

4:<jsp:getProperty>   //取得一个javabean实例的成员变量

5:<jsp:include>        //引入另外一个文件

6:<jsp:plugin>         //使用插件

7:<jsp:forward>       //转发

8:<jsp:fallback>      //

 

--jsp九大内置对象(jsp的核心)

(1)out //向客户端输出数据,字节流

(2)request //接受客户端http请求

            getParameter(String name);  //name表示表单的参数名

            getParameterValue(String name);//使用得到是String[]

            getAttribute(String name,Object obj);//设置名字为name的obj,值为obj

            getAttribute(String name);//返回由name制定的属性值,如果不存在就返回null;

            getCookie();

(3) response//封装jsp的产生的回应

            addCookie(Cookie cookie);

            sendRedirct("/wecome.jsp");

(4) session//用于保存用户的信息,跟踪用户的行为

            getAttribute(String name,Object obj);

            getAttribute(String name);

(5)application  //多个用户共享该对象,可以做计数器

(6)pageContext  //代表jsp页面的上下文

(7)execption //代表运行时的一个异常

                getMessage();

(8)page  //代表jsp这个实例本身(使用比较少)

(9)config //代表jsp对应的servlet的配置可以得到web.xml中的参数

 

##访问jsp的过程

如果是第一次访问jsp,文件被服务器翻译成一个对应的java文件(servlet)

然后再被加载到.class文件加载到内存中

如果是以后访问jsp,那直接调用内存中的jsp实例,所以第一次访问jsp慢,后面访问jsp的速度就变快了。

 

要注意的事

jsp文件要放在跟WEB-INF文件夹同级的文件夹下,不能放到WEB-INF里面

改了servlet需要reload,改了jsp不需要reload

 

一个jsp的helloword

 

<%@ page contentType="text/html;charset=gb2312"%>

<html>
	<body>
		<h1>jsp1</h1>
		<% 
			out.println("hello jsp");
		%>
	</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值