web专题 servlet介绍 + servlet生命周期 +XML配置

servlet

直接翻译过来是—小服务程序

简介
Servlet(server applet)服务器的小程序。是用java编写的一个服务器,目的是和浏览器交互并且生成动态的web内容。
Servlet是指实现了servlet接口的类,Servlet运行于支持Java的应用服务器(tomcat,servlet是tomcat的一个组件)中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器

其实servlet就是后台业务的处理和前台交互的中间桥梁,可以用它控制页面之间的一个跳转问题

生命周期 + 案例

在这里插入图片描述

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet{
@Override
public void init() throws ServletException {
	// TODO Auto-generated method stub
	System.out.println("intit");//只会初始化一次
}
@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("service");
		super.service(req, resp);
	}
@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("doget");
	}
@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("dopost ");
	}
@Override
	public void destroy() {
		// TODO Auto-generated method stub
		System.out.println("destory");
	}
}

Web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <servlet>
  	<!-- 给servlet起名 -->
  	<servlet-name>hello</servlet-name>
  	<!-- servlet全类名 -->
  	<servlet-class>com.ujiuye.servlet.HelloServlet</servlet-class>
  </servlet>
    <!--  给servlet一个路径,让浏览器直接通过路径去访问servlet -->
  <servlet-mapping>
    	<servlet-name>hello</servlet-name>
    	<!-- 一定加/路径名 -->
    	<url-pattern>/he</url-pattern>
  </servlet-mapping>
  
</web-app>

在这里插入图片描述

get,post请求区别

在html中,表单提交可以设置method设置提交方式 get post

Get: 走servlet中doget方法
参数是在地址栏中直接明文传输,很不安全
数据大小 2k左右,数据量有限制,比如文件传输不能使用get提交
容易造成乱码,速度炒鸡快,比如指向后台传id,name这种较少的参数的时候
req.setCharacterEncoding(“UTF-8”);//防止中文乱码
在tomcat目录下,conf/server.xml 找到

Post :method=“post”
走servlet中的dopost方法
数据量没有限制,上传文件就可以使用post提交,相对来说不容易乱码
Firdebug
可以在控制台中看到post提交的数据,速度稍微慢,提交数据量比较大,还有汉字,
Post提交
在这里插入图片描述

url-partten

 <servlet-mapping>
    	<servlet-name>hello</servlet-name>
    	<!-- 一定加/路径名 -->
    	<url-pattern>/he</url-pattern>
  </servlet-mapping>

作用是给servlet起路径名,路径前面一定以 / 开始,否则服务器启动失败
在这里插入图片描述
/* 拦截所有的路径 * 就是一个通配符,代表所有可能的名字

/路径1/路径2/…路径可以有多层路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值