文章目录
JavaWeb
C/S模式:
客户端 服务器C(Client)/S(Server)
B/S模式:
浏览器 服务器B(Broswer)/S(Server)
Web服务器
1、是可以向发出请求的浏览器提供文档的程序
2、提供网上的信息浏览服务
常用的Web服务器
Microsoft:IIS
Apache:Tomacat 开源免费,小型项目
Oracle:WebLogic 商用较多
IBM:WebSphere 商用较多
Nginx 处理高并发,稳定
。。。
Tomcat服务器
1、Apache Jakarta的开源项目
2、轻量级应服务器
3、开源、稳定、资源占用小
操作Tomcat注意事项
(1)startup.bat启动后,不许关闭,一定是最小化
(2)启动时,窗口一闪而过问题:
配置JDK:系统环境变量path:C:\Program Files\Java\jdk1.7.0_80\bin
JAVA_HOME:C:\Program Files\Java\jdk1.7.0_80
(3)http://localhost:8080/ 端口号修改:conf/server.xml中的port
在Tomcat中部署静态网页
将网页资源复制到webapps文件夹中,通过http://localhost:8080/文件名称/index.html
JSP概述
JSP(Java Server Pages)
运行在服务器端的Java页面
使用HTML嵌套Java代码实现
使用JSP实现输出
oage指令
通过属性定义了JSP的特性,实现与JSP容器的通信
属性说明language指定JSP页面使用的脚本语言
import通过该属性来引用脚本语言中使用到的类文件
pageEncoding用来指定JSP的字符编码方式
out对象
1、out对象时JSP的内置对象
无需实例化即可使用
2、实现数据的输出显示
out对象的方法
属性说明print想页面输出显示
println向页面输出显示,在结尾处添加换行
添加注释
1、HTML注释:
2、JSP注释:
3、JSP脚本中注释:、
JSP执行过程
JSP声明全局变量和方法
全局变量和方法写在
Web程序调试和排错
404错误–找不到访问的页面或资源
1、运行时,URL输入错误
2、将页面放在WEB-INF下
3、外部启动Tomcat,未部署项目
500错误–JSP页面代码有误
JSP页面代码有错误
JSP实现数据传递和保存
获取表单提交的数据
请求对象:request
public String getParameter(String name)
获取同名的多个参数
request.getParameterValues("mailld");
示例:
//HTML代码:
//JSP代码:
String userNamerequest.getParameter("userName");
//获取同名多个参数
String[] maillds = request.getParameterValues("mailld");
if(maillds!=null&&maillds.length!=0){
//循环maillds访问提交的数据
}else{
//未提交与参数mailld相关的数据
}
get与post区别
表单post方式提交中文乱码处理
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
表单get方式提交中文乱码处理
在请求中存取属性
在请求中保存属性
public void setAttribute(String name,Object o)
request.setAttribute("mess","注册失败");
请求的常用方法:
在请求中获取属性
public Object getAttribute(String name)
1、在使用属性值的时候要做非空判断,否则会出现空指针异常
2、它的返回值类型是Object类型,需要做数据类型的转换
转发与重定向
转发与重定向的区别:(重定向是客户端行为,转发是服务器行为)
转发
1、RequestDispatcher对象
2、forward()方法
request.getRequestDispatcher("url").forward(request,response);
重定向
将用户请求重新定位到一个新的URL
response.sendRedirect("url");
jsp的内置对象
1、请求对象:request
2、输出对象:out
3、响应对象:response
4、用用程序对象:application
5、会话对象:session
6、页面上下文对象:pageContext
7、页面对象:page :相当于java中的this,作用域仅限于当前页面
8、配置对象:config
9、异常对象:exception
session
setAttribute()作用域试一次会话
getAttribute()
会话:一个会话就是浏览器和服务器之间的一次通话,会话可以在多次请求中保存和使用数据
服务器端使用的记录客户端状态的机制--sessionId
会话的清除和过期:
1、程序主动清除session数据:
a.设置会话失效:session.invalidate()
b.移除会话的一个属性:session.removeSttribute()
2、服务器主动清除长时间没有再次发出请求的session
a、在jsp中设置会话过期时间:session.setMaxInactivaInterval(int interval)【单位是秒】
b、在xml中设置会话过期时间:
30【单位是分钟】
cookie
1、跟踪用户的整个会话
2、通过在客户端记录信息
3、以文件方式保存数据
添加数据:response.addCookie(Cookie cookie)
获取数据:Cookie[] getCookies()
设置有效期:setMaxAge(int expiry)【单位为秒,expiry设置为0,相当于删除Cookie,默认是浏览器关闭后失效】
application
1、作用域在于整个项目中,除非是服务器关闭重启
常用方法:setAttribute(String name,Object object)
Object getAttribute(String name)
request、session、application对比