java,php,asp.net,linux,javascript,mysql,mssql,oracle,编程
java编程
java编程
jsp基础速成
转载请注明:http:
//
www.pmjava.com/Article/ShowInfo.asp?ID=56542
Servlet三个要素:
1
.必须继承自HttpServlet
2
.必须实现doGet()或者doPost()
3
.必须在web.xml中配置Servlet
HttpServeltRrequest:请求对象
getParameter():获得表单元素的值
getAttribute():获得request范围中的属性值
setAttribute():设置reqeust范围中的属性值
setCharacterEncoding():设置字符编码
HttpSerletResponse:相应对象
sendRedirect():外部跳转
getWriter():获得输出流对象
setContentType(
"
text/html; charset=utf-8
"
):设置相应内容格式和编码
四种会话跟踪方式:
1
.Session
HttpSession session
=
request.getSession();
session.setAttribute(
"
name
"
,
"
zhangsan
"
);
session.setAttribute(
"
pwd
"
,
"
aaa
"
);
String name
=
(String) session.getAttribute(
"
name
"
);
2
.cookie:
//
创建Cookie
Cookie cookie
=
new
Cookie(
"
name
"
,
"
zhangsan
"
);
//
设置Cookie的超时时间
cookie.setMaxAge(
24
*
60
*
60
*
60
);
//
把Cookie发送到客户端
response.addCookie(cookie);
//
得到客户端发送的Cookie
Cookie [] cookies
=
request.getCookies();
for
(
int
i
=
0
; i Cookie temp
=
cookies[i];
String key
=
temp.getName();
String value
=
temp.getValue();
}
3
.隐藏表单域
request.getParameter(
"
name
"
);
4
.Url重写
问号传参
LoginServlet
?
username
=
zhangsan
&
pwd
=
123
String name
=
request.getParameter(
"
username
"
);
String pwd
=
request.getPareameter(
"
pwd
"
);
内部跳转:
LoginServlet
request.getRequestDispatcher(
"
index.jsp
"
).forward(request, resposne);
外部跳转:
response.sendRedirect(
"
index.jsp
"
);
内部跳转是一次请求和一次响应
外部跳转是两次请求和两次响应
ServletContext:Servlet上下文对象
它是一个公共区域,可以被所有的客户端共享
setAttribute():向公共区域里放入数据
getAttribute():从公共区域里取数据
二:
三:三个标准范围:request, session, ServletContext
共同点:都有setAttribute(), getAttribute()
区别:范围不同,request
<
session
<
servletContext
四:四种会话跟踪方式
五:服务器上的五大对象
request, response, servlet, session, servletContext
Jsp:java Server Page
页面构成:7种元素
1
.静态内容:html
2
.指令:page, include, taglib:
3
.表达式:
4
.Scriptlet
5
.声明: :变量和方法
6
.动作:
7
.注释:
客户端看不到的:
客户端可以看到的:
Jsp的执行过程:
1
.转译:Jsp
--->
Servlet
2
.编译:Servlet
---->
.
class
3
.执行:.
class
第一次访问jsp的时候响应速度较慢,后面请求时响应速度快
脚本:
表达式:
Scriptlet:
声明:
指令:
page:language,
import
, errorPage, isErrorpage
include:file
taglib:uri:指定标签库描述符的路径 prefix:指定标签的前缀
隐式对象:
分类:
1
.输入和输出对象:request(HttpServletRequest),
response(HttpServletResponse),
out(JspWriter), servlet中的out是PrintWriter
2
.作用域通信对象:pageContext, request,
session(HttpSession),
application(ServletContext)
3
.Servlet对象:page(
this
), config
4
.错误对象:exception
javaBean:
一个标准的javaBean有三个条件
1
.共有的类
2
.具有不带参数的公共的构造方法
3
.具有set()和get()方法
4
.私有属性
Jsp中的标准动作:
1
.useBean:创建javaBean的一个实例
2
.setProperty:给javaBean的属性赋值
value和param不能同时使用
偷懒的方法:
这个时候需要注意的是,表单元素的名字必须和javaBean的属性值
一模一样
3
.getProperty:获得JvaBean的属性值
4
.forward:内部跳转,相当于request.getRequestDispatcher().forward(request, response);
5
.include:包含
表达式语言:
EL: Expression Language
语法格式: $
{表达式 }
表示式
=
运算符
+
操作数
运算符:跟java比较,多了一个empty, 少了一个赋值运算符
$
{empty
""
}
:
true
$
{empty
null
}
:
true
操作数:
-->
常量:布尔型(
true
/
false
), 整型, 浮点型, 字符串(可以用
''
, 还可以用
""
), Null
-->
变量:
1
.指的是放在四个标准范围里的属性(page, request, session, application)
2
.在编准范围内的搜索顺序:page
-->
request
--->
session
--->
application
3
.怎么取得变量值:点运算符., 还以用[]
$
{requestScope.name}
或者
$
{requestScope[
"
name
"
]}
-->
隐式对象
1
.pageContext:通过它可以访问request, session, servletContext
2
.跟范围由关的:pageScope, requestScope, sessionScope, applicationScope
3
.跟输入有关的:param, paramValues
4
.其他的:header, cookie, headervalues,
EL表达式适用的场合:
1
.可以在静态文本中使用
2
.与自定义标签结合使用
3
.和javaBean结合使用
$
{stu.stuName}
自定义标签:
1
.标签处理程序实现
--->
实现:继承自BodyTagSupport或者TagSupport
一般会重写doStartTag(), doEndTag(), doAfterBody()
--->
描述:在标签库描述符文件中描述(.tld)
1.0
2.0
simpletag
showbody
com.westaccp.test.ShowBodyTag
empty
/
jsp
color
--->
使用:
2
.标签文件
--->
实现和描述
在.tag文件中实现
设置主体内容:
设置属性:
有主体内容:
--->
使用
WEB
-
INF
/
tags
/
sayhello.tag
标准标签库:
1
.核心标签库
-->
通用:
set:
out:
remove:
-->
条件:
if
:
..
choose:
..
-->
迭代:
forEach:
foTokens:
java,C#;SQL
|
C
2
.I18N与格式化标签库
-->
setLocale:设置本地区域
-->
bundle:设置资源包
-->
setBundle:设置资源包
-->
message:输出消息
3
.SQL标签库
-->
setDataSource:设置数据源,用于获得与数据库的连接
-->
query:执行查询
-->
update:执行增,删,改
-->
transaction:事务
-->
param:参数
4
.XML标签库
过滤器:
生命周期:
1
.实例华:
2
.初始化:init()
3
.过滤:doFilter()
4
.销毁:destroy()
5
.不可用
配置:
几个重要的接口:
1
.Filter:init(), doFilter(), destroy()
2
.FilterChain: doFilter(request, response)
3
.FilterConfig:getFilterName(), getInitParameter(),
过滤器链:
--->
1
--->
2
--->
3
--->
Servlet 请求
<----
1
<---
2
<---
3
<---
响应
MvC设计模式
1
.ModelI:jsp
+
javaBean
2
.ModelII:jsp
+
Servlet
+
javaBean
jsp
---
view
servlet
---
control
javabean
---
model
MVC:
M
--
Model:模型:访问后台数据库
V
--
view:视图:展示
C
--
control:控制器:控制程序流程
ModelII和MVC的关系:
MVC是一种设计模式,ModelII它是MVC的一种具体的实现
posted on 2009-06-10 21:03
rrong_m
阅读(180)
评论(0)
编辑
收藏
Powered by:
BlogJava
Copyright © rrong_m
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
导航
BlogJava
首页
新随笔
聚合
管理
统计
随笔 - 38
文章 - 115
评论 - 0
引用 - 0
常用链接
我的随笔
我的文章
我的评论
我的参与
随笔档案
2009年7月 (1)
2009年6月 (42)
文章分类
j2ee
(rss)
java(4)
(rss)
javascript(8)
(rss)
文章档案
2009年6月 (110)
java编程
java php asp.net编程
java php asp.net编程
搜索
积分与排名
积分 - 72371
排名 - 762
最新评论
阅读排行榜
1. hibernate映射clob blob字段(4528)
2. java去标点符号 正则(3469)
3. java substring截取字符串 汉字和字母(2980)
4. java获取google 的简单天气预报(2002)
5. 递归删除父节点及所有子节点(1655)
评论排行榜
1. 博客搬家(0)
2. sql版 魔方算法(0)
3. mysql 保留字(0)
4. java去标点符号 正则(0)
5. java全角半角转换(0)