【无标题】

JavaWeb笔记(一)

一、获取添加应用参数
写一个继承HttpServlet的类,加@WebServlet()注解
设置响应内容类型

resp.setContentType("text/html;charset=utf-8");

直接返回HTML页面

PrintWriter printWriter = resp.getWriter();
        printWriter.write("<div>get小滴课堂<div>");

web.xml中添加key-value

    <context-param>
    <param-name>url</param-name>
    <param-value>xdclass.net</param-value>
    </context-param>
    <context-param>
        <param-name>username</param-name>
        <param-value>jack</param-value>
    </context-param>

获取web.xml中添加的数据

ServletContext servletContext =  req.getServletContext();
        //拿到xml中定义的context参数
        String url = servletContext.getInitParameter("url");

        System.out.println(url);

在Servlet中直接添加数据和获取

//UerServlrt
ServletContext servletContext =  req.getServletContext();
servletContext.setAttribute("appInfo","xdclass.net info");
//=========================================================
//TestServlet
String value = (String)req.getServletContext().getAttribute("appInfo");
System.out.println("appInfo="+value);

二、HttpServletRequest请求
JSP的使用
1、导入依赖
2、在body中加JSP语法
HttpServletRequest
HttpServletRequest代表浏览器客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求中的所有信息都封装在这个对象中,通过这个对象提供的⽅法可以获得请求的所有信息。
常用api

http://127.0.0.1:8080/request?userName=jack&age=11&sport=ball&sport=sleep
//客户端请求信息
System.out.println("应⽤上下⽂路径getContextPath="+request.getContextPath());
System.out.println("客户端发出请求时的完整URL
getRequestURL="+request.getRequestURL()) ;
System.out.println("请求⾏中的资源名部分
getRequestURI="+request.getRequestURI()) ;
System.out.println("请求⾏中的参数部分
getQueryString="+request.getQueryString()) ;
System.out.println("发出请求的客户机的IP地址
getRemoteAddr="+request.getRemoteAddr()) ;
System.out.println("客户机发请求使⽤的⽹络端⼝号
getRemotePort="+request.getRemotePort()) ;
//获取请求头
System.out.println("获取请求头
getHeader(Accept)="+request.getHeader("Accept")) ;
//获取请求参数
System.out.println("客户端请求参数
getParameter="+request.getParameter("userName"));
String[] sport = request.getParameterValues("sport");
System.out.println("客户端请求参数列表,多个值
getParameterValues="+sport.toString());
Map<String,String[]> map = request.getParameterMap();
System.out.println("客户端请求参数封装成的map类型
getParameterMap="+map.toString());

三、表单提交
写一个表单

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>$Title$</title>
  </head>
  <body>
  <div>xxxxx</div>
  <form action="/user1" method="post">
    <div>用户名:<input type="text" name="userName" /></div>
    <div>密码:<input type="password" name="pwd"></div>
    <div> <input type="submit" value="登录"></div>
  </form>
  </body>
</html>

UserServlet类中重写doPost方法判断

@Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=utf-8");
        //拿到表单提交(req)的参数
        String userName = req.getParameter("userName");
        String pwd = req.getParameter("pwd");
        if (userName.equals("xxxx")&& pwd.equals("1234")){
            resp.getWriter().write("成功登录");
        }else {
            resp.getWriter().write("登录失败");
        }
    }

getOutputStream():
创建的字节输出流对象,可以按字节形式输出响应正⽂,直接输出字节数组中的⼆进制数据
getWriter():
创建的字符输出流对象,可以按字符形式输出响应正⽂,只能输出输出字符⽂本内容,和上⾯的互斥

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值