javaservlet,javaservlet和jsp

发布时间:2023-01-09

本文目录一览:

  1. java 怎么配置servlet?
  2. java servlet 主要用来做什么?
  3. java 中web开发servlet主要功能是什么?
  4. Java中的Servlet的定义,Servlet的具体用途

java 怎么配置servlet?

Servlet是组件,必须放在容器中,使用容器访问。访问Servlet之前,必须在web.xml中配置Servlet。 部署Servlet环境(大体分2个步骤): 第一步:在Tomcat根目录下的webapps目录下创建如下目录,并且放相应的文件:

  • /FirstWebApp
  • /FirstWebApp/WEB-INF/classes:存放servlet类编译后的.class文件
  • /FirstWebApp/WEB-INF/web.xml:存放servlet的配置文件 第二步:配置web.xml文件。

java servlet 主要用来做什么?

java servlet是一种编程语言,所以当然是用来“创造”的啦。它能做的事情非常多,涵盖了编程领域的方方面面。

  1. 桌面级应用,简单来说就是主要功能都在计算机上运行的程序,比如Word、Excel等办公软件就归为此类。
  2. 企业级应用(应用最广泛),简单来说就是,使用人数较多,数据量较大的应用。它对系统的稳定性、安全性、扩展性等要求较高。包括HR管理软件、营销管理软件等几乎所有你能想到的应用。
  3. 嵌入式设备及消费类电子产品,包括无线手持设备、智能卡、通信终端、医疗设备、信息家电(如数字电视、机顶盒、电冰箱)、汽车电子设备等都是近年以来热门的Java应用领域,尤其是手机上的Java应用程序和Java游戏等。
  4. 除了上面提到的,Java还有进行数学运算、显示图形界面、进行网络操作、进行数据库操作、进行文件的操作等功能。这也是一种目前非常流行的编程语言,是很有前景的,Java工程师的薪资待遇也是非常高的。
  5. 比如说你在一个网页上输入姓名和密码,然后点击提交。这时候页面就会跳转(跳转方法有POST和GET)。
  6. 跳转到哪呢,这就通过web.xml文件配置你的跳转,一般就跳转到servlet来处理。
  7. servlet说白了,就是一个Java类,继承HttpServlet,主要有doGetdoPost方法,你在页面代码写的是GET方法跳转,那么就运行servlet里doGet方法里面的代码(POST同理)。

java 中web开发servlet主要功能是什么?

JavaWeb中servlet主要功能是承载网络连接,业务逻辑处理,比如一些编码格式的转换、登录拦截等,如下是详细解释:

  1. servlet是一个类。最初没有JSP,只有servlet,也就是说最初的开发过程是.java -> .class
  2. 后来因为HTML代码在servlet里写入太繁琐,加入了JSP类型。servlet单纯处理后台程序。 在WEB-INF下的web.xml文件下:
<servlet>
    <servlet-name>hello</servlet-name>
    <servlet-class>org.lxh.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>hello</servlet-name>
    <url-pattern>/servletdemo</url-pattern>
</servlet-mapping>

具体例子如下:

  1. 先编写一个表单,建在D:/java/tomcat jsp/webdemo/servletdemo(新建一个文件夹): input.html
    <form action="input" method="get"> <!-- 或者method="post" -->
        <input type="text" name="ref">
        <input type="submit" value="提交">
    </form>
    
  2. 编写InputServlet类:
    package org.lxh.servlet;
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    public class InputServlet extends HttpServlet {
        public void doGet(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            String param = req.getParameter("ref");
            System.out.println("*************" + param);
        }
        public void doPost(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            this.doGet(req, resp);
        }
    }
    
  3. 然后编译。
  4. 再在web.xml中加入这些内容:
    <servlet>
        <servlet-name>input</servlet-name>
        <servlet-class>org.lxh.servlet.InputServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>input</servlet-name>
        <url-pattern>/servletdemo/input</url-pattern>
    </servlet-mapping>
    
  5. 这时运行Tomcat能找到servletdemo文件夹中的input.html,点击提交按钮。 JSP技术中servlet可以承载很多的功能,但后期如果项目业务逻辑很复杂,会导致servlet的急剧增多,不易维护,所以又发明了JavaWeb,将每一层的功能和逻辑都独立出来,以便于更好的维护管理。

Java中的Servlet的定义,Servlet的具体用途

Servlet是一个实现了Servlet接口的类,一个与访问协议和平台无关的、运行在Servlet容器中的Java程序。 针对Servlet实现技术,SUN公司提供了一套标准的Java Servlet API以便于更快速、规范地开发Servlet程序。这套Servlet API中,最重要的两个软件包是:javax.servletjavax.servlet.httpjavax.servlet是一个与通信协议无关的通用软件包;javax.servlet.http是一个支持HTTP访问协议的软件包,这两个软件包的同时存在,使得Servlet API能支持任何协议的请求/响应。 在javax.servlet中,包含着一套常用接口,负责承担指定的任务。下表中列出了常用的类和接口:

主要类结构图

javax.servlet软件包

javax.servlet包中定义了与通信协议无关的接口和类。

常用接口:

  • RequestDispatcher
  • Servlet
  • ServletConfig
  • ServletContext
  • ServletRequest
  • ServletResponse

常用类:

  • GenericServlet
  • ServletInputStream
  • ServletOutputStream

1. RequestDispatcher接口

public interface RequestDispatcher;

资源调度器接口,用于定义一个在服务器内部直接实现资源转发的对象。 RequestDispatcher对象由Servlet容器创建,用于封装并调度由一个特定的URL定义的服务器资源。

请求传递方法

public void forward(ServletRequest request, ServletResponse response) throws ServletException, IOException

从一个Servlet向服务器上的另一个资源传递请求。 将请求转发给其他资源时,将由被调用的资源负责对请求作出响应,而原先Servlet的执行则终止。

public void include(ServletRequest request, ServletResponse response) throws ServletException, IOException

从一个Servlet向服务器上的另一个资源传递请求。 将请求转发给其他资源时,被调用的Servlet对该请求作出的响应将并入原先的响应对象中,原先的Servlet还可以继续输出响应消息。

2. Servlet接口

public interface Servlet;

开发一个Servlet需要实现的基础接口。 接口中定义了5个方法:

  • init():Servlet初始化方法,通过init()方法可以获得容器创建的ServletConfig对象
  • service():请求处理方法
  • destroy():Servlet实例销毁方法
  • getServletConfig():获取ServletConfig配置对象方法
  • getServletInfo():获取Servlet相关信息方法

(1) 初始化方法

public void init(ServletConfig config) throws ServletException

Servlet容器会在Servlet实例化之后,调用init方法对Servlet对象进行初始化,该方法由Servlet容器顺序调用,无需Servlet自身考虑何时执行。

(2) 服务方法

public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException

当Servlet容器接收到客户请求时,调用service方法响应客户请求,service方法在Servlet实例化、初始化之后被调用,并且可以被多次调用。

(3) 销毁方法

public void destroy()

当Servlet实例从服务器中移除或服务停止时,Servlet容器调用destroy方法销毁Servlet实例。

(4) 获取Servlet配置对象方法

public ServletConfig getServletConfig()

获取一个由Servlet容器创建的ServletConfig配置对象,这个对象常常用在Servlet初始化方法中,将初始化参数封装在ServletConfig对象中,然后传递给Servlet。

(5) 获取Servlet相关信息方法

public String getServletInfo()

获取关于Servlet的一些相关信息,返回的字符串是纯文本格式而不带有任何标记(例如:HTML、XML等)。

3. ServletConfig接口

public interface ServletConfig;

Servlet配置信息接口,在Servlet初始化时,Servlet容器将Servlet初始化参数封装在ServletConfig对象中,并传递给Servlet,一个Servlet实例只有一个ServletConfig对象。 接口中,只定义了4个方法:

  • getInitParameter():获取Servlet指定初始化参数的值
  • getInitParameterNames():获取Servlet所有初始化参数名称
  • getServletContext():获取Servlet容器为WEB应用创建的Servlet上下文环境对象ServletContext
  • getServletName():获取Servlet名称

(1) 获取初始化参数方法

public String getInitParameter(String name)

根据初始化参数名称,获取Servlet指定初始化参数的值,如果指定的参数不存在,返回空值null

public Enumeration getInitParameterNames()

获取Servlet所有初始化参数名称,如果Servlet没有初始化参数,返回一个空列表。

(2) 获取Servlet上下文环境方法

public ServletContext getServletContext()

获取Servlet容器为WEB应用创建的Servlet上下文环境对象ServletContext,WEB服务器启动的时候,在加载WEB应用时,为每个加载的WEB应用创建一个代表WEB应用的Servlet上下文环境对象。

(3) 获取Servlet名称方法

public String getServletName()

获取正在访问的这个Servlet的名称。 以上就是Servlet相关问题的解答,更多关于Java Web方面的问题可以看下这个详细的视频教程网页链接,希望我的回答能帮到你。