request和response

request相关


获取参数方法:

request.getParameter(): 是常见的方法,用于获取单值的参数
request.getParameterValues(): 用于获取具有多值的参数,比如注册时候提交的 “hobies”,可以是多选的。
request.getParameterMap(): 用于遍历所有的参数,并返回Map类型。

其他常见方法:

request.getRequestURL(): 浏览器发出请求时的完整URL,包括协议 主机名 端口(端口存在情况)(http://127.0.01:8080/login)
request.getRequestURI(): 浏览器发出请求的资源名部分,去掉了协议和主机名(/login)
request.getQueryString(): 请求行中的参数部分,只能显示以get方式发出的参数,post方式的看不到
request.getRemoteAddr(): 浏览器所处于的客户机的IP地址
request.getRemoteHost(): 浏览器所处于的客户机的主机名
request.getRemotePort(): 浏览器所处于的客户机使用的网络端口
request.getLocalAddr(): 服务器的IP地址
request.getLocalName(): 服务器的主机名
request.getMethod(): 得到客户机请求方式一般是GET或者POST

在这里插入图片描述

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<% String basePath = request.getScheme() + "://"+request.getServerName()+ ":" +
    request.getServerPort() + request.getContextPath() + "/"; %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<base href="<%=basePath %>">
<title>Insert title here</title>
<script type="text/javascript" src="<%=basePath %>js/index.js"></script>
<script type="text/javascript" src="/web2/js/index.js"></script>
</head>
<body>
<!-- 注释是html的注释    
	http://localhost:8080/web2/index.jsp  请求地址  
	请求交给tomcat服务器  tomcat会查找index.jsp   如果存在,解析index.jsp 转换成html文本,然后再返回给浏览器
	请求有可能是是https请求
-->
<%
	// 编写的java代码
	//获取请求协议   request对象   tomcat负责创建对象
	String protocol =  request.getProtocol();
	//如何打印输出变量  只会输出到控制台 不会输出到页面
	System.out.println(protocol);
	//out对象可以在页面输出
	out.write("请求的协议:" + protocol + "<br>");
	%>
	<%=protocol %>
	<%
	//获取服务器地址
	String serverName = request.getServerName();
	out.write("服务器地址:" + serverName  + "<br>");
	//端口号
	int port = request.getServerPort();
	out.write("服务器端口:" + port  + "<br>");
	//上下文路径,项目发布路径
	String contextPath = request.getContextPath();
	out.write("上下文路径:" + contextPath  + "<br>");
	//资源路径
	String uri = request.getRequestURI();
	out.write("uri 路径包括上下文路径 :" + uri  + "<br>");
	StringBuffer url = request.getRequestURL();
	out.write("url 是请求地址的一个完整路径 :" + url  + "<br>");
	
	String scheme = request.getScheme();
	out.write("scheme 协议的名称 :" + scheme  + "<br>");
	
	//远程请求的ip 访问者的ip地址
	String addr = request.getRemoteAddr();
	out.write("访问者的ip地址 :" + addr  + "<br>");
	String host = request.getRemoteHost();
	System.out.println(host);
	//访问者的ip地址 :0:0:0:0:0:0:0:1
	//访问者的ip地址 :50918
	int port2 = request.getRemotePort();
	
	out.write("访问者的主机地址 :" + host  + "<br>");
	out.write("访问者的端口 :" + port2  + "<br>");
%>


<!-- 输出jsp的变量 -->
<%-- jsp的注释 --%>
<%--
<%=protocol %>
--%>
	<a href="regUI.jsp">注册</a> <br>
	
	<a href="WEB-INF/testWeb-inf.jsp">访问WEB-INF路径下的资源,是不允许直接访问</a> <br>
	
	<a href="mid.jsp">通过jsp去访问放在WEB-INF路径下的资源</a> <br>
			
</body>
</html>

response相关


1.设置响应内容

PrintWriter writer = response.getWriter();
writer.write("result");
writer.flush();
writer.close();

通过response.getWriter(); 获取一个PrintWriter 对象
可以使用println(),append(),write(),format()等等方法设置返回给浏览器的html内容。

2.设置响格式和编码

需要在response.getWriter调用之前执行才能生效。

response.setContentType("text/html; charset=UTF-8");

总结篇:servlet总结

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值