关于java:JavaWeb学习

53次阅读

共计 1758 个字符,预计需要花费 5 分钟才能阅读完成。

Servlet

开发动静 web 的一门技术

Servlet 原理

ServletContext

web 容器在启动时,会为每一个 web 利用都创立一个对应的 ServletContext,它代表了以后的 web 利用。

  • 共享数据

在同一个 web 利用中,不同的 servlet 之间的数据能够共享

  • 获取初始化参数
  • 申请转发
  • 获取资源文件
@override
protected void doGet(HttpServletRequest rq,HttpServletResponse resp) throws ServletException,IOException {Properties prop = new Properties();
InputStream is = this.getservletContext().getResourceAsStream( s: "/WEB-INF/classes/com/cy/servlet/aa.properties");
prop. load(is);
string user = prop.getProperty("username");
String pwd = prop.getProperty("password");
resp.getwriter().print(user+":"+pwd);
}

HttpServletRequest

获取前端传输的数据

申请转发

HttpServletResponse

web 服务器接管到用户的 http 申请,针对这个申请,web 服务器会别离创立一个代表申请的 HttppServletResquest 对象,代表响应的对象 HTTPServletResponse 对象

  • 如果要获取客户端发送过去的参数找 HttPServletRequest
  • 如果要给服务器响应一些数据应用 HTTPServletResponse

下载文件

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    String relPath = "D:Interlij IDEACGBIII2007projects01-springboot-startsrcmainresourcesfile.text";
    String fileName = relPath.substring(relPath.indexOf("")+1);
    resp.setHeader("Content-Disposition", "attachment;filename="+ URLEncoder.encode(fileName, "UTF-8"));
     FileInputStream in = new FileInputStream(relPath);
    int len = 0;
    byte[] buffer = new byte[1024];
    ServletOutputStream out = resp.getOutputStream();
    while ((len=in.read(buffer))>0){out.write(buffer,0,len);
 }
    out.close();
    in.close();}

重定向

//resp.setHeader("/url");
//resp.setStatus(304);
resp.sendRedirect("/url");

Cookie Session

Cookie

Cookie 能够把用户数据保留在浏览器,并且浏览器能够保留多个 Cookie。敞开浏览器,Cookie 生效,每次登入浏览器都会有新的 cookie 被创立。

Session

  • Session 把用户的数据写到用户独占的 Session 中, 保留在服务器端。(保留重要的信息,缩小服务器资源的节约)
  • Session 由服务器创立

应用场景:

  • 保留用户的登录信息
  • 购物车信息
  • 在整个网站中常常应用的数据

JSP 九大内置对象

  • Application:保留的数据只在服务器中无效,从关上服务器到敞开服务器。
  • Session:保留的数据在一次会话中无效,从关上浏览器到敞开浏览器。
  • Request:保留的数据只在一次申请中无效,申请转发会携带这个数据。
  • PageContext:保留的数据只在一个页面无效。
  • Response
  • out
  • page
  • exception

拦截器(Filter)

正文完
 0