JAVA笔记 | HttpServletRequest/HttpServletResponse的简单理解

理解

当客户端通过http向服务端发起请求,每一次请求均会创建请求对象request存放客户端请求的信息,响应对象response存放响应的信息。

HttpServletRequest

获取客户端所有的请求信息,每一个请求包含(请求行,请求头,请求正文)。

获得请求行的方法

getRequestURL() 获取请求的完整URL

getMethod()获取Http请求方式(GET等)

getQueryString()获取带在URL中?后面的请求参数部分

getProtocol()获取请求协议与版本,如HTTP/1.1

获取请求头相关方法

每个请求包含多好个请求头,用于存放附加信息,由多个请求头构成

如请求头:

Content-Type: 表示文档的类型,servlet默认为text/plain,通常会设置为text/html

Cookie:存放客户端Cookie信息等

获取请求头的方法:

getHeader(string var)根据var获取对应请求头

Enumeration getHeaderNames() 获取所有请求头

获取请求参数相关方法

getParameter(String var)根据var获取请求参数

setAttribute("key", value) 设置新的键值参数

getAttribute(String key) 获取key对应的值

HttpServletResponse

输出文字至浏览器

@RestController
@RequestMapping("/test")
public class TestTextController {

    @GetMapping("/get")
    public void getText(HttpServletResponse response) throws IOException {
        //数据源
        String data = "你好世界";
        //将数据源转为字节码数组 指定编码转换
        byte[] dataBytes = data.getBytes("UTF-8");
        //设置响应头中的编码为UTF-8,避免浏览器输出中文出现乱码
        response.setHeader("content-type","text/html;charset=UTF-8");
        //获取请求该接口后创建的response对象的输出流
        OutputStream os = response.getOutputStream();
        //将字节码写入输出流,通过流输出至客户端
        os.write(dataBytes);
        //刷新输出流,并强制输出缓冲的字节数据
        os.flush();
        //关闭输出流
        os.close();
    }
}

浏览器输出:你好世界

(后续补充)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要实现简单笔记本功能,您可以使用JSP和Servlet来完成。下面是一个基本的示例,帮助您开始: 1. 创建一个名为 "index.jsp" 的 JSP 文件,用于显示笔记列表和添加新笔记的表单。 ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>笔记本</title> </head> <body> <h1>我的笔记</h1> <ul> <%-- 在这里迭代并显示所有笔记 --%> <%-- 这里使用一个假设的笔记列表 --%> <% List<String> notes = new ArrayList<>(); notes.add("笔记 1"); notes.add("笔记 2"); notes.add("笔记 3"); for (String note : notes) { out.println("<li>" + note + "</li>"); } %> </ul> <h2>添加新笔记</h2> <form action="note" method="post"> <input type="text" name="content" required> <input type="submit" value="保存"> </form> </body> </html> ``` 2. 创建一个名为 "NoteServlet.java" 的 Servlet 类,用于处理添加新笔记的请求。 ```java import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class NoteServlet extends HttpServlet { private static final long serialVersionUID = 1L; private List<String> notes = new ArrayList<>(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String content = request.getParameter("content"); notes.add(content); // 重定向到主页显示更新后的笔记列表 response.sendRedirect("index.jsp"); } } ``` 3. 配置 Servlet,在 web.xml 文件中添加以下内容: ```xml <servlet> <servlet-name>NoteServlet</servlet-name> <servlet-class>NoteServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>NoteServlet</servlet-name> <url-pattern>/note</url-pattern> </servlet-mapping> ``` 这样,您就可以在浏览器中访问 "index.jsp",查看笔记列表并添加新的笔记了。 请注意,这只是一个简单示例,没有使用数据库等持久化存储。真实的应用可能需要更复杂的架构和数据存储方式。希望这能帮助到您!如果有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值