早上研究了下jsp的加载顺序,顺便复习下jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<%@ include file="/common/header.jsp" %>
<%
        /**jsp脚本段--执行顺序1. 靠前先执行**/
	request.setAttribute("test", "1111");

%>
<script>

        //jqery 执行顺序3. 这个是整个页面加载完毕后再执行
	$(function(){	

		/**jsp表达式赋值**/
		var test= "<%=request.getAttribute("test")%>";
		alert("2"+test);
	});

	/**在js里,执行顺序2,这块代码先执行 jsp表达式 **/
	var test= "<%=request.getAttribute("test")%>";
	alert("1" + test);
</script>
</head>
<body></body></html>

一、JSP脚本语法
html注释: <!-- context -->,servlet中会生成,会发给浏览器
隐藏注释: <%-- context --%> , servlet不生成, 不发给浏览器
声明:   全局变量,整个页面内有效<%! int t=0 %>    该表达式内有效<% int t=0 %>
        t:<%= ++t %></H1>
        t1:<%= ++t1 %></H1>

表达式:<%=…%>  使用如上面的例子: <%= request.getAttribute("test")%>
Java脚本段:<%...%> 

二、JSP编译器指令
1.page
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
2.include
1)静态导入 <%@ include file="logo.jsp"%> //logo.jsp只放你要准备被别人引入的commons的代码就行了。
         是在jsp引擎转译时,就把此文件内容包含了进去(两个文件的源代码整合到一起,全部放到_jspService方法中         ),所以只生成了一个servlet,所以两个页面不能有同名的变量。
         运行效率高一点点。耦合性较高,不够灵活
2)动态导入 <jsp:include page=“logo.jsp”></jsp:include>
         是在servlet引擎转译后,请求的此页面,所以共生成了两个servlet,所以可以有同名变量。
         生成两个servlet,相当于两个类之间的调用,耦合性较低,非常灵活。
         
   静态-动态,区别:静态导入会把所导入的代码嵌入到所导入的页面。
		  动态导入会把所导入的页面先编译好,把结果显示到所导入的页面。
		  
三、内置对象-九种
request,请求对象  		存放的数据在一次request有效
response,响应对象		存放的数据在一次response有效
pageContext,页面上下文对象,只在本页有效
session会话对象,保存用户的信息,跟踪用户的行为。	存放的数据在一次会话有效。
application应用程序对象.多个用户共享该对象,整个web应用运行期有效。可以做计数器。	相当于servlet的ServletContext 对象
out输出对象 PrintWriter out = response.getWriter();
config配置对象	可以得到web.xml中的参数。
page,页面对象
exception,例外对象

早上研究了下jsp的加载顺序,顺便复习下jsp

时间: 2024-10-06 01:15:02

早上研究了下jsp的加载顺序,顺便复习下jsp的相关文章

requireJS在同一个HTML/JSP页面,加载不同版本的jquery

requireJS支持JS模块化,也能够实现在同一个HTML/JSP页面加载不同版本的模块.这个特性太棒了,下面我们看下如何加载多个版本的jquery.假设在HTML页面中,data-main属性入口文件是main.js,文件存放的目录结构如下: test.html require.js main.js scripts/ demo1.js demo2.js libs/ jquery-1.10.2.js jquery-2.1.1.js 我们在main.js编写如下代码: //创建1个context

浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入

在<浏览器环境下JavaScript脚本加载与执行探析之defer与async特性>中,我们研究了延迟脚本(defer)和异步脚本(async)的执行时机.浏览器支持情况.浏览器bug以及其他的细节问题.而除了defer和async特性,动态脚本和Ajax脚本注入也是两种常用的创建无阻塞脚本的方法.总的来看,这两种方法都能达到脚本加载不影响页面解析和渲染的作用,但是在不同的浏览器中,这两种技术所创建的脚本的执行时机还是有一定差异,今天我们再来探讨一下通过动态脚本技术和Ajax注入的脚本在这些方

jsp页面中的代码执行加载顺序介绍

1. java是在服务器端运行的代码,jsp在服务器的servlet里运行,而javascript和html都是在浏览器端运行的代码.所以加载执行顺序是是java>jsp>js. 2. js在jsp中的加载顺序 页面上的js代码时html代码的一部分,所以页面加载的时候是由上而下加载.所以js加载的顺序也就是页面中<script>标签出 现的顺序.<script>标签里面的或者是引入的外部js文件的执行顺序都是其语句出现的顺序,其中js执行的过程也是页面装载的一部分.

jsp页面中的代码执行加载顺序介绍(转)

原文出处:http://www.3lian.com/edu/2014/01-10/123053.html 本篇文章主要是对jsp页面中的代码执行加载顺序进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 1. java是在服务器端运行的代码,jsp在服务器的servlet里运行,而javascript和html都是在浏览器端运行的代码.所以加载执行顺序是是java>jsp>js. 2. js在jsp中的加载顺序 页面上的js代码时html代码的一部分,所以页面加载的时候是由上而下加

java web项目中classes文件夹下的class和WEB-INF/lib中jar里的class文件加载顺序

如果是发布到weblogic的话,可以在WebContent\WEB-INF\weblogic.xml里面配置.参考配置如下:<?xml version="1.0" encoding="UTF-8"?><weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc

在tomcat下使用jni加载本地库的问题总结——处理UnsatisfiedLinkError错误

最近想使用ICTCLAS分词系统,需要在myeclipse中加载dll(本地库),查阅资料使用jni,ICTCLAS官方也提供了很全面的加载方法,虽然在run as java application下运行没有问题,但是在tomcat下报UnsatisfiedLinkError的错误,错误来自System.loadLibrary("ICTCLAS50"),是jni加载本地库的语句. 之前其实为了省事将dll放在根目录下,显然也不符合tomcat的要求,重新移动到webapps下,想将IC

Android下将图片加载到内存中

Android的系统的标准默认每个应用程序分配的内存是16M.所以来说是非常宝贵的,在创建应用的时候要尽可能的去节省内存,但是在加载一些大的文件的时候,比如图片是相当耗内存的,一个1.3M的图片,分辨率是2560X1920(宽X高)图片当加载到手机内存的时候就会请求19M的一块内存,这是远远超出了系统自带的内存空间,这时候应用程序就会挂掉,所以我们要进行图片的缩放处理,下面我就来带大家创建一个用来图片缩放的应用: 应用效果图如下: 核心代码的实现: package com.examp.loadp

ie6 下图片预加载的问题

1.昨天帮同事看了一个问题 就是 ie6 下 图片预加载图片显示不出来 代码如下 var image = new Image(); image.src = "xx.jpg"; image.onload = function(){ xxxxx } 这样写的问题是 图片缓存的时间 把onload 事件错过了 所以修改一下 var image = new Image(); image.onload = function(){ xxxxx } image.src = "xx.jpg&

记录下页面懒加载代码

今天京东在做图书品类的活动,买了几本心仪的书,闲暇之余看了看京东图书促销页前端代码,有很多的工具类js文件,如用于cookie.跨域.数组.业务方面等.突然看到了页面懒加载代码,做下记录. /** * 图片懒加载 */ (function(){ if(jQuery.fn.lazyLoad) return; jQuery.fn.lazyLoad = function(config){ //相关参数 var conf = jQuery.extend({ defClass:"J_imgLazyload