传智播客学习之Servlet预习

 

今天是预热班结束后假期的最后一天了,这段时间,按照预热班老师提的建议在家复习了java基础部分,并按照毕老师给的意见对后面的课程进行了预习,Servlet这块努力看了好几遍张老师的视频,总算有些明白,下面将我听视频整理的笔记与大家分享一下。

1.什么是动态网页?

在之前没有听张老师视频的时候,一直以为动态网页就是页面上会出现动态效果的页面,直到听完视频,才知道那种只有视觉动态效果的页面只能称之为动态HTML,而那种真正意义上的动态网页是服务器页面的内容可以发生变化,不同时刻或者不同条件下访问web页面,服务器的页面内容会不一样,最主要的区别是其网页的源文件会发生变化。

2.什么是引擎?

引擎就是web服务器上一个专门用来解释执行动态网页程序的程序模块。

3.C/S与B/S架构

B/S结构,即Browser/Server(浏览器/服务器)结构,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现。

C/S结构,即Client/Server(客户机/服务器)结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。

其典型的区别就是C/S结构的应用程序需要在客户端安装一个应用程序,而B/S结构则不用,Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的。至于优势和劣势,由于本人初学,还没有很深的体会,哈哈,等有了深刻体会和大家分享吧。

4.什么是Servlet?

Servlet是用java编写的Servlet端程序,他与协议和平台无关,Servlet运行于java服务器中,可以生成动态的web页面,它担当Web浏览器或其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应用程序之间交互的中间层。

5.Servlet的运行原理

当WEB服务器接收到一个HTTP请求时,它会判断请求内容,如果是静态网页数据,WEB服务器会自行处理,产生响应消息,如果牵扯到动态数据,WEB服务器会将请求转交给Servlet容器,然后Servlet容器会找到对应的处理该请求的Servlet实例来处理,将结果送回给WEB服务器,再由WEB服务器传回给用户端。

6.第一个手动Servlet

编写Servlet类步骤如下:

1)创建SecondServlet类,此类继承自HttpServlet

2)重写doGet和doPost方法中的一个

3)定义初始化的init()方法

4)定义清楚资源的destroy()方法

5)注册运行Servlet

一个<servlet>元素用于注册一个servlet,它包含有两个主要的子元素:<servlet-name>和<servlet-class>,分别用于设置Servlet的注册名称和Servlet的完整类名。

一个<servlet-mapping>元素用于映射一个已经注册的Servlet的一个对外访问路径,它包含有两个子元素:<servlet-name>和<url-pattern>,分别用于指定Servlet的注册名称和Servlet的对外访问路径。下面是注册和运行的小程序:

<servlet>

<servlet-name>HelloJava</servlet-name>

<servlet-class>itcast.servlet.HelloJava</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>HelloJava</servlet-name>

<url-pattern>/*.do</url-pattern>

</servlet-mapping>

注:

1)Servlet程序必须通过Web服务器和Servlet引擎来启动运行。Servlet程序要存储在<Web应用程序目录>/WEB-INF/classes/目录中。Servlet程序必须在Web应用程序的web.xml文件中进行注册和映射其访问路径,才可以被Servlet引擎加载和被外界访问。对于编写web.xml文件

2)在Servlet映射到的url中也可以使用*通配符,但是只能有两种固定的格式:一种格式是"*.扩展名",另一种格式是以正斜线"/"开头的并以"/*"结尾。

3)同一个Servlet可以被映射到多个URL上,即多个<servlet-mapping>元素的<servlet-name>子元素的设置值可以是同一个Servlet的注册名。但是反之不成立。servlet引擎会调用最接近请求url的对外访问url所映射的servlet,或者说最匹配的,一定记住一个原则:*.do的优先级最低,带“/”的优先级稍高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值