您的位置:首页 > Web前端 > JavaScript

Servlet和JSP之初步了解

2017-03-13 15:41 281 查看
Servlet:全称Java Servlet。是使用java编写的服务器端程序。必须在容器(如Tomcat)中运行。是一个Java类,遵守一定的规范。

主要功能:交互式地浏览和修改数据,生成动态的Web内容。(狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下人们将Servlet理解为后者。)

JSP(Java Server Pages):java服务器页面。JSP页面由HTML代码和嵌入其中的Java代码组成,用来实现动态视图。

在常用的JavaEE应用架构中,客户端可能是浏览器,也可能是应用程序客户端。客户端的请求发送给JavaEE服务器,由服务器调用客户端请求的组件(Servlet、JSP、EJB等)。组件可以通过JDBC连接到数据库,进行数据永久存储操作,也可以通过其他服务访问不同的资源,如通过JMS访问消息服务器,JNDI访问名字和目录服务器等。

目前,大多数企业应用都是B/S结构,即客户端是浏览器。浏览器只能直接访问Web容器中的组件(Servlet和JSP)。

Servlet和JSP技术统称为JavaEE Web组件开发技术。

注意事项:

1、是否可以写一个main()方法,在main方法中调用servlet中的doGet和doPost?

不可以,因为servlet是一个组件,必须放在容器中才能运行。(因为doGet和doPost中的两个参数HttpServletRequest request,HttpServletResponse response(请求和响应)实例是靠容器初始化的,只有容器才能帮助我们得到并传递这两个参数)

2、请求与响应的理解

对Servlet的访问是基于HTTP协议的访问。所以也是基于请求和响应的模式的。

ServletAPI中定义了HttpServletRequest类型封装请求,定义了HttpServletResponse类型封装响应。当客户端请求servlet时,容器将来自客户端的请求信息封装成HttpServletRequest类型对象,将响应信息封装成了HttpServletResponse类型对象,传递给doXXX(如doGet、doPost)方法进行处理。

请求接口:HttpServletRequest

响应接口:HttpServletResponse

3、不用Servlet生成复杂的动态页面,而会使用JSP技术来生成复杂的动态页面,那么Servlet有什么作用呢?

Servlet往往承担着MVC模式中控制者的角色,是控制器。Servlet负责接受客户端的请求,调用业务逻辑处理请求,然后根据处理结果跳转到不同视图上。

4、JSP运行原理:

1、客户端发出请求(request),请求访问JSP网页。

2、容器将要访问的.JSP文件翻译成.java文件(Servlet的源代码)。

3、容器编译.java文件生出.class文件。

4、容器实例化JSP类。

5、容器将请求和响应对象传递给JSP类中的_jspService方法,并运行该方法为客户端提供服务,将响应内容返回给客户端。

其实JSP本质上就是Servlet。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: