C/S架构:
(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,需要安装客户端才可进行管理操作。
B/S架构:
(浏览器/服务器)结构,是随着internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现。
| B/S架构 | C/S架构 | |
| 软件安装 | 浏览器 | 需要专门的客户端应用 |
| 升级维护 | 客户端零维护 | 客户端需要单独维护和升级 |
| 平台相关 | 与操作系统平台的关系最小化 | 对客户端操作系统一般有限制 |
| 性能安全 | 在响应速度和安全性上需要花费更多的设计成本 | 能充分发挥客户端处理能力,客户端响应快 |
什么是URL?
http://localhost:8080/news/index.html
http:协议部分
localhost:8080:主机的IP地址:端口号
news/index.html:项目资源地址
Tomcat介绍
| 目录 | 说明 |
|---|---|
| /bin | 存放各种平台下用于启动和停止Tomcat的脚本文件 |
| /conf | 存放Tomcat服务器的各种配置文件 |
| /lib | 存放Tomcat服务器所需的各种JAR文件 |
| /logs | 存放Tomcat的日志文件 |
| /temp | Tomcat运行时用于存放临时文件 |
| /webapps | 当发布web应用时,默认情况下会将web应用的文件存放于此目录 |
| /work | Tomcat把由jsp生成的Servlet放于此目录中 |
Tomcat服务器应用
- 解压缩版本Tomcat的配置
- 添加系统变量,名称为CATALINA_HOME,值为Tomcat的安装目录
- 因Tomcat运行依赖JRE,确保已安装JRE并配置JRE_HOME环境变量。或针对已安装的JDK配置JAVA_HOME环境变量。
- Tomcat服务启动检测
- 在IE地址栏中输入http://localhost:端口号
- 页面进入到Tomcat启动成功界面
HttpServletRequest接口
| 方法名称 | 功能描述 |
|---|---|
| String getContextPath() | 返回请求URL中表示请求上下文的路径,上下文路径是请求URL的开始部分 |
| Cookie[] getCookies() | 返回客户端再次请求中发送的所有cookie对象 |
| HttpSession getSession() | 返回和此次请求相关联的session,如果没有给客户端分配session,则创建一个新的session |
| String getMethod() | 返回此次请求所使用的HTTP方法的名字,如GET,POST |
| String getHeader(String name) | 返回指定的请求头信息 |
HttpSession接口
| 方法名称 | 说明 |
|---|---|
| String getId() | 获取sessionid |
| void setMaxinactiveInterval(int interval) | 设定session的非活动时间 |
| int getMaxInactiveInterval() | 获取session的有效非活动时间(以秒为单位) |
| void invalidate() | 设置session对象失效 |
| void setAttribute(String key,Object value) | 以key/value的形式保存对象值 |
| Object getAttribute(String key) | 通过key获取对象值 |
| void removeAttribute(String key) | 从session中删除指定名称key所对应的对象 |
HttpServletResponse接口
| 方法名称 | 功能描述 |
| void addCookie(Cookie cookie) | 增加一个cookie到响应中,这个方法可以多次调用,设置多个cookie |
| void addHeader(String name,String value) | 将一个名称为name,值为value的响应头包头添加到响应中 |
| Void sendRedirect(String location) | 发送一个临时的重定向响应到客户端,一边客户端访问新的url |
| void encodeURL(String url) | 使用session ID 对于重定向的URL进行编码 |
servlet生命周期
- 实例化——sevlet容器创建servlet的实例
- 初始化——该容器调用init(ServletConfig)方法
- 服务——如果请求Servlet,则容器调用service()方法
- 销毁——销毁实例之前调用destroy()方法
注意:jsp本质上就是一个servlet,jsp适合表示层开发, servlet适合封装控制逻辑。