‘壹’ 什么叫web容器以及作用
tomcat 是SERVLET的容器。
web 容器就是实现了JAVA的那些接口:javax.servlet。
而且JSP也是SERVLET的
web 容器启动后一直运行,监听所有提交到他所监控的那个端口的请求,并对此做出反映。
个人理解, 之前有看过人家别人写的web容器的例子, 不过忘记了,如果你写深入理解, 自己搜索把。
‘贰’ web容器 web服务器 servlet/jsp容器 之间的区别和关系
Servlet是Java代码为主,JSP是html为主。JSP是Servlet的化生。JSP最后会自动生成.java/.clsss文件。
Servlet擅长Java代码,JSP擅长html。但是Servler也能输出Html代码,JSP也能书写Java代码。不过有点不方便。
‘叁’ 如何选择适合的web容器
例如apache、nginx等都是此类。
不过现实中很多web服务器出于种种考虑回内置针对特定语言或架构的处理体系,例如iis内置了asp.net的处理架构,apache也可以通过扩展提供php、rails等处理架构(这些特别内置的模块,你也可以简单理解为web容器了)。
如果web服务器自己不处理特别请求,那么可以通过cgi等方式转发给后端处理,例如apache、nginx都可以通过fastcgi将请求转发给后端端口,例如php-fpm服务,或python的什么服务等等。
其实在java之前一直不太有web容器这种说法,到目前似乎也只有java是这么提的。这主要是因为整个java的web开发是基于javaEE的servlet技术体系,该体系规范规定了web请求的整个生命周期的方方面面。
但是规范只是规定了实现的标准,或者说是接口(interface),具体实现都是各厂商自己搞定,所以这就出现了各种不同的web容器,例如tomcat、jetty、jboss等等。
又说回来,这些容器为了方便开发者,大多都提供了web服务器的功能,不过和专业的web服务器相比总有些缺失不足,所以一般只用来做开发用,生产环境主要还是作为后端服务。
‘肆’ java问题:什么是web容器列举几个常见的web容器
Web Container也是一个组件,是J2EE本身提供的。它封装了一般Web组件与Web Server打交道的一些底层的细节。就是说,你自己开发的组件并不是直接调用WebServer的功能,而是通过Web Container间接与WebServer对话,这样你就不许要知道许多关于WebServer的底层技术。
‘伍’ Web组件与Web容器有哪些,WEB组件的三种关联
Web组件:有Jsp,Servlet等
Web容器:有tomcat ,jboss, resin, weblogic ,websphere, glassfish。可以理解为Web服务器。
WEB应用程序如此强大的原因之一就是他们能彼此链接和聚合信息资源。WEB组件之间存在三种关联关系:
l 请求转发
l URL重定向
l 包含关系
存在以上关联关系的Web组件可以是JSP或Servlet,对于Struts应用,则还包含Action,这些Web组件都可以访问HttpServletRequest和HttpServletResponse对象,具有处理请求、生成响应结果的功能。
1. 请求转发。
请求转发允许把请求转发给同一个应用程序中的其他Web组件。这种技术通常应用于Web应用中的Servlet流程控制器。
Servlet类使用 javax.servlet.RequestDispatcher.forward()方法来转发。转发目标将处理该请求并生成响应结果,或者将请求转发到另一个组件,最初请求的ServletRequest,ServletResponse对象被传递给转发目标组件,这使得目标组件可以访问整个请求上下文。值得注意的是,只能把请求转发给同一个web应用中的组件。下面是一个例子,当前的servlet组件要把请求转发给一个JSP组件,如hello.jsp,可以在Servlet的service()方法中执行以下代码:
RequestDispatcher rd = request.getRequestDispatcher(“hello.jsp”);
Rd.forward(request,response);
在jsp页面中,可以使用<jsp:forward>标签来转发请求,例如:
<jsp:forward page=”hello.jsp”/>
对于请求转发,转发的源组件和目标组件共享request范围内的共享数据。
2. 请求重定向
请求重定向类似于请求转发,但也有一些重要的区别:
l Web组件可以将请求重定向到任一URL,而不仅仅是同一应用中的URL。
l 重定向的目标组件与源组件之间不共用同一个HttpServletRequest对象,因此不能共享request范围内的共享数据。
例如当前应用的Servlet组件把请求转发到URL:http://jakarta.apache.org/struts,可以在Servlet的service()方法中执行以下代码:
Response.sendRedirect(“http://jakarta.apache.org/struts”);
HttpServletResponse的sendRedirect()方法向浏览器返回包含重定向的信息,浏览器根据这一信息迅速发出一个新的HTTP请求,请求访问重定向目标组件。
3. 包含
Servlet类使用javax.servlet.RequestDispatcher.include()方法包含其他的Web组件。例如当前的Servlet组件包含三个JSP文件:header.jsp/main.jsp/footer.jsp,则可以在servlet的service()方法中执行以下代码:
RequestDispatcher rd;
Rd = req.getRequestDispatcher(“/header.jsp”);
Rd.include(req,res);
Rd = req.getRequestDispatcher(“/main.jsp”);
Rd.include(req,res);
Rd = req.getRequestDispatcher(“/footer.jsp”);
Rd.include(req,res);
在JSP文件中,可以通过〈include〉指令来包含其他的web资源,例如:
<%@ include file=”header.jsp”%>
<%@ include file=“main.jsp”%>
<%@ include file=”footer.jsp”%>
‘陆’ java 笔试简答题什么是web容器
WEB容器:给处于其中(JSP,SERVLET)提供一个环境,使JSP,SERVLET直接与容器中的环境变量接口交互,不必关注其它系统问题。主要有WEB服务器来实现。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。该容器提供的接口严格遵守J2EE规范中的WEB APPLICATION 标准。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器。
‘柒’ Java中Web容器
web容器可以理解为打开浏览器后并有一个提交请求所形成的环境.
‘捌’ java中web容器的作用
比方说:tomcat是一个web应用服务器,它其中包含了servlet容器和jsp容器,而servlet容器就是负责管理servlet的生命周期的,如果没有这个容器,那你的请求就无法实例化为servlet,你需要自己去写代码解析http请求。如果你想解析http请求,你就必须了解http协议,这是一个比较复杂的过程,现在有servlet容器,容器就会帮你去解析。
常见的web容器有tomcat,JBOSS或webloigc。
‘玖’ 什么是web容器
web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如JAVA中的Tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以多个容器。
‘拾’ 什么是 web 容器
web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求。
如JAVA中的Tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以多个容器。