创新互联公司为客户提供专业的成都网站设计、网站制作、程序、域名、空间一条龙服务,提供基于WEB的系统开发. 服务项目涵盖了网页设计、网站程序开发、WEB系统开发、微信二次开发、手机网站开发等网站方面业务。>Jsp
Web服务器访问jsp的过程.
如果是第一次访问jsp文件,web服务器会把jsp翻译成一个servlet文件.再将其编译成一个.class文件.然后加载到内存.蓝色的地方也是为什么java的空间要贵一些.
Jsp的运行原理
Jsp的语法
1.指定元素:用于从jsp发送一个信息到容器,比如设置全局变量,文字编码,引入包.
<%@ page contentType=”text/html;charset=utf-8”%>
<%@ include file=’文件的路径’%> 这个是引入其它的jsp文件main.jsp 注意:这里的路径不要加 /
<%@ mytag:xx 属性/>
2. 脚本元素:可以理解为java片段
<% java片段 %>
<%=表达式 %>
<%! Int i=90; %> 这里的i 是成员变量. 在这里还可以使用方法,
例:<%! Public int getInt(){ int i=90;return i;} %>
3. 动作元素
的作用
在开发jsp的过程,我们通常把jsp放在WEB-INF目录下,为了防止用户直接访问jsp文件.在webRoot下我们有一个入口页面,它的主要功能是转发:
: 动态引入
<%@ include file=””%> 静态引入
相同点:把一个文件引入到另外一个文件.
区别: 静态引入 把两个jsp翻译成一个servlet文件,所以被引入的文件,不能包括
动态引入: 分别把两个jsp文件翻译成servlet文件,可以包括
Jsp的注释<%-- %-->
Jsp中的九大内置对象
pageContext也是一个域对象.也可以用setAttribute(),getAttribute().但是它的生命周期只是在本页面有用.
Web开发的几个模式:web-service
Web-service-dao (data access object)
这两个模式其实就是mvc模式
通过看书的jsp的内容
可以在WEB.xml统一默认的网页编码、,内容、缓冲大小等。
*.jsp
utf-8
tect/type
16kb
也可以声明指定的jsp的开头和结尾包括的网页
*.jsp
/WEB-INF/jspf/pre.jsp
/WEB-INF/jspf/coda.jspf
如果想禁用JSP上的Scriptlet则可以在web.xml中设置
*.jsp
true
可以通过pageContext来设置四种范围属性。
例如:要设置一个session的属性
pageContext.setAttribute(“width”,”50px”,pageContext.SESSION_SCOPE);
返回
String width=
pageContext.getAttribte(“width”,pageContext.SESSION_SCOPE);
这个pageContext.SESSION_SCOPE 可以是request page application
用SESSION交换一下就可以了。
如果使用getAttribte()不知道是什么范围属性时,可以用
String width= pageContext.findAttribute(“width”);
想要做一个error.jsp的界面.必须要<%@ isErrorPage=”true”%>
这样的error.jsp才可能使用exception隐式对象。才能获取错误界面抛出的错误信息。
把错误信息打印出来
Exception.printStackTrace(new PrintWriter(out));
Jsp书的内容
一些标签
引用一个类
例:
id是cc.openhome.User这个包.类的一个实例
class是指包.类
scope 是指范围 有session request application page(默认)
type 要转换的接口 如 ServletRequest转换到HttpServletRequest
type要写上HttpServletRequest
这个是设置User中的属性
这个是返回User中的属性
其中name表示JavaBean的名字,对应useBean标签中的id属性;property为星号,表示不用再具体指定JavaBean属性的值将对应表单中的那个参数,系统会自动根据名字进行匹配.但要求表单参数的名字必须与JavaBean中属性的名字完全相同.
3.通过request的参数值设置
语法格式:
其中name表示JavaBean的名字,对应useBean标签中的id属性;property表示要给哪个属性设置值;param表示表单中的参数名字.此种格式通过request获得表单中的参数值,JSP引擎自动将request获取的参数值传递给JavaBean中对应的属性.但要求request参数名字必须与JavaBean中的属性名字一致.
如:使用JavaBean验证客户身份
如果是scope= session 或 要用request传递的
在的中间和不在中间 是不一样的
中间:是假如user==null的才会加入到request user!=null不会
不在中间:user==null !=null都会加入到request
与配合使用
includeAction.jsp
<%double i = Math.random();%>
//加载come.jsp //传递参数
可以在come.jsp中取出来
come.jsp
<%//获得includeAction.jsp传来的值: String str = request.getParameter("number");
double n = Double.parseDouble(str);
与配合使用
跟上面是一样的,也是传递参数
Jsp
Web服务器访问jsp的过程.
如果是第一次访问jsp文件,web服务器会把jsp翻译成一个servlet文件.再将其编译成一个.class文件.然后加载到内存.蓝色的地方也是为什么java的空间要贵一些.
Jsp的运行原理
Jsp的语法
1.指定元素:用于从jsp发送一个信息到容器,比如设置全局变量,文字编码,引入包.
<%@ page contentType=”text/html;charset=utf-8”%>
<%@ include file=’文件的路径’%> 这个是引入其它的jsp文件main.jsp 注意:这里的路径不要加 /
<%@ mytag:xx 属性/>
2. 脚本元素:可以理解为java片段
<% java片段 %>
<%=表达式 %>
<%! Int i=90; %> 这里的i 是成员变量. 在这里还可以使用方法,
例:<%! Public int getInt(){ int i=90;return i;} %>
3. 动作元素
的作用
在开发jsp的过程,我们通常把jsp放在WEB-INF目录下,为了防止用户直接访问jsp文件.在webRoot下我们有一个入口页面,它的主要功能是转发:
: 动态引入
<%@ include file=””%> 静态引入
相同点:把一个文件引入到另外一个文件.
区别: 静态引入 把两个jsp翻译成一个servlet文件,所以被引入的文件,不能包括
动态引入: 分别把两个jsp文件翻译成servlet文件,可以包括
Jsp的注释<%-- %-->
Jsp中的九大内置对象
pageContext也是一个域对象.也可以用setAttribute(),getAttribute().但是它的生命周期只是在本页面有用.
Web开发的几个模式:web-service
Web-service-dao (data access object)
这两个模式其实就是mvc模式
通过看书的jsp的内容
可以在WEB.xml统一默认的网页编码、,内容、缓冲大小等。
*.jsp
utf-8
tect/type
16kb
也可以声明指定的jsp的开头和结尾包括的网页
*.jsp
/WEB-INF/jspf/pre.jsp
/WEB-INF/jspf/coda.jspf
如果想禁用JSP上的Scriptlet则可以在web.xml中设置
*.jsp
true
可以通过pageContext来设置四种范围属性。
例如:要设置一个session的属性
pageContext.setAttribute(“width”,”50px”,pageContext.SESSION_SCOPE);
返回
String width=
pageContext.getAttribte(“width”,pageContext.SESSION_SCOPE);
这个pageContext.SESSION_SCOPE 可以是request page application
用SESSION交换一下就可以了。
如果使用getAttribte()不知道是什么范围属性时,可以用
String width= pageContext.findAttribute(“width”);
想要做一个error.jsp的界面.必须要<%@ isErrorPage=”true”%>
这样的error.jsp才可能使用exception隐式对象。才能获取错误界面抛出的错误信息。
把错误信息打印出来
Exception.printStackTrace(new PrintWriter(out));
Jsp书的内容
一些标签
引用一个类
例:
id是cc.openhome.User这个包.类的一个实例
class是指包.类
scope 是指范围 有session request application page(默认)
type 要转换的接口 如 ServletRequest转换到HttpServletRequest
type要写上HttpServletRequest
这个是设置User中的属性
这个是返回User中的属性
其中name表示JavaBean的名字,对应useBean标签中的id属性;property为星号,表示不用再具体指定JavaBean属性的值将对应表单中的那个参数,系统会自动根据名字进行匹配.但要求表单参数的名字必须与JavaBean中属性的名字完全相同.
3.通过request的参数值设置
语法格式:
其中name表示JavaBean的名字,对应useBean标签中的id属性;property表示要给哪个属性设置值;param表示表单中的参数名字.此种格式通过request获得表单中的参数值,JSP引擎自动将request获取的参数值传递给JavaBean中对应的属性.但要求request参数名字必须与JavaBean中的属性名字一致.
如:使用JavaBean验证客户身份
如果是scope= session 或 要用request传递的
在的中间和不在中间 是不一样的
中间:是假如user==null的才会加入到request user!=null不会
不在中间:user==null !=null都会加入到request
与配合使用
includeAction.jsp
<%double i = Math.random();%>
//加载come.jsp //传递参数
可以在come.jsp中取出来
come.jsp
<%//获得includeAction.jsp传来的值: String str = request.getParameter("number");
double n = Double.parseDouble(str);
与配合使用
跟上面是一样的,也是传递参数
文章标题:jsp笔记-创新互联
网站路径:
http://bzwzjz.com/article/djjjjd.html