jsp的9大内置对象
jsp的原理
cookie的学习:
设置cookie
cookie域的设置:多个域名之间进行访问时:path必须要配置为 /
httpsession:(session保存在服务端,cookie保存在客户端,一个用户只能有一个session,cookie可以多个),application
httpsession底层依赖于cookie或url重写,原因是:
当cookie中的JSESSIONID不存在,会去url中找参数有没有一个参数:JSESSIONID= 值是对应的sessionid,所以底层依赖于cookie或url重写
服务器不会立刻创建session,而是通过当第一次调用session时,才会创建session:
jsp会自动的使用session,servlet需要调用了方法才会创建session
当浏览器中的cookie被禁用了,我们可以在所有的超链接和url上添加一个参数:
我们重写url太麻烦,所以我们response.encodeURL()的方法,会自动帮我们判断如果cookie中没有sessionid,会自动帮我们重写的url
动态生成图片验证码动态图片生成:
验证码刷新:因为我们是请求的是一个servlet,所以担心浏览器缓存,所以我们请求是添加上 一个参数,请求的时间:
请求的servlet
生成图片的verfifycode类
jsp的三大指令和九大内置对象
jsp的exception对象不是所有的页面都可以用,只有当一个页面配置isErrorPage时才可以使用,然后我们可以这样输出错误信息
我们平时只需要配置:
include 静态包含:
九大内置对象:
开发阶段:tomcat的web.xml 中当改了什么东西都不用 重启,会自动重新加载,这个是定时任务
javabean:
内省类:
将map转化为制定类型的bean,map的key对应bean的属性的名,value 对应bean的值
jsp创建javabean的标签,创建的bean的名称是user1
设置javabean的对象的值
el表达式获得域中的值
项目名称:
el表达式:需要这些jar包
自定义el函数
jstl:
jstl自定义标签:
自定义类:
需要重写下面的方法:
然后创建文件,文件类型选择tld
然后修改tld文件:
其中tld文件的头我们应该仿照:jstl的jar包
jsp页面如果引入自定义的标签:
调用我们的标签:因为我们配置时:标签体为空,所以执行时需要将标签体为空
我们可以继承类来实现自定义
在tld文件中配置:
写一个带标签体的标签
tld文件配置
jsp中运行: