Servlet基础(一)
JavaEE:企业级开发技术
<一.基础概念>
j2ee:jdk1.1--1.4 ----->> j2ee1.1 1.2
javaee:jdk--5,6,7 --->>javaee 5,6,7
javaee与servlet,jsp
Servlet:前后台传递数据,基于网络的HTTP请求的处理
实现需要借助web容器
JSP:HTML和嵌入之中的java代码组成
http服务器,web容器,Javaee应用服务器:
http服务器:处理http请求,默认处理静态资源(项目资
源分为静态资源(可被浏览器直接解析)和动态资源(不可以
被浏览器直接解析,需要服务器进行解析或者支持web容器))
apche
web容器:可以处理http请求,既可以处理静态资源,又可
以处理动态资源,但效率低
tomcat
javaee应用服务器:大型服务器,处理大型项目
jboss weblogic
tomcat服务器和http协议请求
1.浏览器向服务器发送请求
(将浏览器想要发送的内容以字符串的形式传给服务器
请求行:请求方式(form表单 get/post)+请求资源
+http版本号
请求头:k:v格式
k:v
content-type:text/html(代表从服务器返回的
资源类型)
回车换行(空白行)
请求体
)
2.服务器响应
(在服务器内部寻找,存在,返回响应
响应行:响应状态(200 ok)
响应头:k:v格式
k:v
空白行
响应体:返回响应内容
)
字符串形式:io流
遵从HTTP协议
HTTP协议:1.客户端和服务端传输数据的方式
2.传输数据的格式
tomcat服务器与jsp,servlet
运行需要web容器,在服务器中运行,要部署在tomcat服务
器中
<二.Tomcat>
bin:存放运行tomocat需要的命令文件
stratup.bat 开启 .sh unix系统
shutdown.bat 关闭服务器 .sh unix系统
conf:配置文件
server.xml
web.xml:servlet配置模板
lib:项目运行所需要的jar包,可共享到项目中
jsp-api.jar
servlet-api.jar
logs:存放日志信息
temp:运行时产生的临时文件,缓冲数据
webapps:存放web项目的位置
work:管理jsp页面
<三.Web项目机构>
1.web项目名就是文件夹
2.固定文件夹:WEN-INF
文件夹:classes --java代码编译为class文件后存放在该
文件夹中
lib--存放web项目在运行时需要的第三方jar包,
这些jar包是项目自己所使用的,而多个项目中需要的jar包放
在tomcat的jar包中
文件:web.xml--web项目的配置文件,,tomcat服务器在
启动期间会自动读取其中内容
(自动读取原因:
1.web项目是在tomcat中部署的
2.web项目结构是固定的
)
<四>浏览器通过url地址,访问web项目中的java代码(动态资源)
要求:
浏览器中输入
http://127.0.0.1:8989/web_test/hello
访问到
HelloWorld类中指定的方法
实质:通过浏览器向web服务器中某个地址发送http协
议的请求(get或post等),让服务器自动调用某个对象中的指定
方法,从而让该方法执行完可以给本次http请求返回一个http响
应。最后浏览器收到响应后进行解析并显示给用户结果(一般会
是一个页面)。
url地址--调用-->java对象中的方法(servlet技术)
在javaee规范中,想实现 这种通过浏览器的地址访问
web项目中的java对象里面的方法 这个功能,就必须按照javaEE
中的相关规范来编写代码(servlet技术就是这个规范
<五>实现servlet功能的步骤:
1.编写servlet
自己写一个普通类,然后去实现或者继承
javaEE规范中所提供的指定接口或者父类,然后再重写指定方法
.这个指定接口或者父类都在tomcat的lib目录里面的servlet-
api.jar中
2.在web.xml文件中配置自己编写好的servlet
因为servlet对象的创建,以及对象中指定方
法的调用,都是由tomcat服务器来负责处理的。
web.xml配置文件有tomcat服务器在期间必须
要读取的web项目的中的一个文件,所有要把自己写好的servlet
相关信息配置到web.xml中,以便让tomcat及时的知道这些信息,
然后就可以创建对象和调用方法了.
<servlet>
<servlet-name>test</servlet-
name>
<servlet-
class>com.briup.test.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
Servlet基础(一)的更多相关文章
- JSP数据交互(二)和Servlet基础
01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...
- Servlet基础(三) Servlet的多线程同步问题
Servlet基础(三) Servlet的多线程同步问题 Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率. 由于Servlet/JSP默认是以多线程模式执行的, ...
- Servlet基础(二) Servlet的生命周期
Servlet基础(二) Servlet的生命周期 Servlet的生命周期可以分为三个阶段: 1.初始化阶段 2.响应客户请求阶段 3.终止阶段 Servlet的初始化阶段 在下列时刻Servlet ...
- Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解
Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...
- JSP/Servlet基础语法
相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...
- Servlet基础简单总结(上)
Servlet基础一些简单总结(上): 1.Java Servlet是运行在Web服务器上的Java程序2.Java平台给Servlet开发者提供了强大的API/面向对象编程平台无关/强类型/垃圾回收 ...
- servlet总结:Servlet基础
Servlet基础 1.手工编写第一个Servlet ⑴继承HttpServlet ⑵重写doGet()或者doPost()方法 ⑶在web.xml中注册Servlet 2.使用eclipse编写第一 ...
- servlet基础(组成与生命周期)
servlet基础作用:servlet是运行在Web服务器或应用服务器上的程序:担当web浏览器或其他HTTP客户程序发出的请求与HTTP服务器上的数据库或应用程序之间的中间层.1.读取客户程序发送的 ...
- Unit01: Servlet基础 、 HTTP协议
Unit01: Servlet基础 . HTTP协议 在页面上输出当前时间 package web; import java.io.IOException; import java.io.PrintW ...
- Servlet基础教程:tutorialspoint-servlet
来自turorialspoint的Servlet基础教程(英文),官网:https://www.tutorialspoint.com/servlets/index.htm 这个教程在国内已经被翻译成中 ...
随机推荐
- TCP/IP协议族简介
OSI网络分层介绍 网络结构的标准模型是OSI模型,由国际互联网标准化组织定义的网络分层模型.虽然目前没有完全按照这种模型实现的网络协议栈,但是学习这个模型对于我们理解网络协议还是很有帮助的. 1.O ...
- Elasticsearch部署异常Permission denied
异常描述 在Linux上部署ElasticSearch时抛出了一个异常如下: log4j:ERROR setFile(null,true) call failed. java.io.FileNotFo ...
- Spring《一》
1.支持的注入方式 构建注入,set注入 2.bean属性 id.name.class.singleton(true.false).depends-on="date"(初始化依赖) ...
- Sqlite基本命令集合(linux/fedora/ubuntu)
注:fedora自带sqlite3,无需安装,直接输入命令sqlite3即可. ------------Ubuntu在命令行输入sqlite3,确认没有安装在进行--- 1.安装sqlite3 ubu ...
- Xcode7 下导入第三方库 图文介绍
网上没有很好的图文介绍,干脆我自己写一个好了,方便新手入门. 这里以导入著名的第三方网络库AFNetWorking v3.0.4和数据库FMDB v2.6.2为例进行说明. 好,下面开始. 下载源文件 ...
- 细数ZBrush这些年的心路历程
ZBrush 的出现,带来了一场3D造型的革命.它完全颠覆了传统三维设计工具的工作模式,将3D空间绘图这种全新的设计理念呈现在广大设计师面前,强大的雕塑建模功能和颜色绘制功能释放了艺术家的灵感,让设计 ...
- Springboot统一异常处理(@ControllerAdvice)
import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind ...
- 解决PL/SQL管理工具database下拉为空和登录出现ORA-12154
前言:昨天捣鼓了一下午,终于可以用plsql连接上oracle了... 测试环境:win10 注意问题: (一).环境变量 我发现按网上别人说的那一大推环境配置,很容易出错,我把它们全删了,就留了两个 ...
- 路飞学城Python-Day42
前端 ...
- (2)RDD的基本操作
一.map操作,map(Transform) 二.collect操作,collect(Action) 三.使用PairRDD来做计算,类似key-value结构 采用groupByKey来.将资料按照 ...