码迷,mamicode.com
首页 > 编程语言 > 详细

javaWeb_Servlet_Servlet基础_Servlet概述以及HelloWorld

时间:2019-02-08 13:10:39      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:info   资源   就是   代码片段   ret   init   特性   目录   name   


Servlet基础_Servlet概述以及helloworld

1.Servlet概述

(1).Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,
主要功能在于交互式地浏览和生成数据,生成动态Web内容等。

(2).Servlet是和平台无关的服务器端组件,它运行在Servlet容器中(如Tomcat,weblogic等)。Servlet容器负责Servlet和客户的通讯以调用Servlet的
相关方法,并且Servlet和客户端采用的是"请求/响应"的模式。


2.Servlet能够完成功能

(1).创建并返回基于客户端请求的动态html页面。

(2).创建能够嵌入页面中的部分html代码片段。(实现动态的数据返回)

(3).与其他的服务器资源通信,如数据库

 

3.Servlet的helloworld

(1).和一般的java应用程序不同,由于Servlet是运行在服务器端的组件,所以想要使用它,先得把服务器起起来。

(2).如何找到那你写的Servlet?
需要告诉服务器,找到你写的这一个Servlet的方式,有俩种实现:

A:在web.xml里面配置和映射该Servlet,代码实现如下:(只给出必要的代码段)
<!--配置-->
<servlet>
<!--servlet注册的名字-->
<servlet-name>HelloServlet</servlet-name>
<!--servlet全类名-->
<servlet-class>com.cn.servlet.HelloServlet</servlet-class>
</servlet>

<!--映射-->
<servlet-mapping>
<!--servlet需要和某一个Servlet节点名称一样-->
<servlet-name>HelloServlet</servlet-name>
<!--"/表示的是项目的根目录(http://localhost:8080/ServletTest/),这一个就是访问该Servlet的时候需要的url"-->
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>


流程:url--->mapping-name--->servlet---->servlet-class



B: 在Servlet3.0以后,Servlet就开始支持注解。
@WebServlet(name="helloworld",urlPatterns={"/HelloServlet"})
public class HelloServlet implements Servlet{
}

(3).如何访问?
我们在配置和映射这一个Servlet的时候,给出了一个URL,那么我们要访问这一个Servlet应该是通过url访问它,那么一般通过URL访问
的模式是啥呢?网络链接的模式:http://localhost:8080/ServletTest/HelloServlet。我们通过浏览器直接访问的其实是一个java类

详解:localhost:本地,也可以理解为你现在使用的这一台计算机。
8080:端口号,Tomcat服务器的端口号
ServletTest/HelloServlet:项目以及你要访问的内容


(4).代码实现如下

@WebServlet(name="helloworld",urlPatterns={"/HelloServlet"})
public class HelloServlet implements Servlet{

//无参构造
public HelloServlet(){

}

@Override
public void destroy() {
System.out.println("method destory");

}

@Override
public ServletConfig getServletConfig() {
System.out.println("method getServletConfig");
return null;
}

@Override
public String getServletInfo() {
System.out.println("method getServletInfo");
return null;
}

@Override
public void init(ServletConfig arg0) throws ServletException {
System.out.println("method init");
}

@Override
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
System.out.println("method service");

}

 

javaWeb_Servlet_Servlet基础_Servlet概述以及HelloWorld

标签:info   资源   就是   代码片段   ret   init   特性   目录   name   

原文地址:https://www.cnblogs.com/nwxayyf/p/10356050.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!