
javaweb
文章平均质量分 67
拾光师
瞧一瞧,看一看,好吃还不贵。量大管饱
多年java开发经验,现征战于互联网广告行业
分享各种java相关知识,每周更新
展开
-
最全的javaweb知识全集
原文链接http://zhhll.icu/2021/01/13/javaweb/servlet/最全的javaweb知识全集Servlet是java定义的Servlet标准接口servlet容器负责Servlet和客户的通信以及调用Servlet的方法public interface Servlet { void init(ServletConfig var1) throws ServletException; ServletConfig getServletConfig();原创 2021-02-17 22:14:22 · 241 阅读 · 3 评论 -
如何解决跨域问题?
浏览器的同源策略不包含、、这几个标签,而jsonp就是利用标签跨域特性来进行的跨域数据访问,其原理是与服务器端约定好一个函数名,服务端接收到请求后,将返回一段JavaScript,在这段JavaScript代码中调用约定好的回调函数,并且将数据作为参数进行传递,当网页接收到这段JavaScript后,就会执行回调函数,数据就成功传输到客户端了。这就需要了解浏览器的同源策略,所谓同源是指 ‘协议+域名+端口’三者相同,而跨域就是非同源的请求。原创 2024-03-05 10:25:28 · 434 阅读 · 0 评论 -
post请求体内容无法重复获取
将tomcat的Request类进行重新实现吗?代价太大了,sun公司当初在设计的时候就已经提供了解决方法,对于请求和响应,sun公司提供了包装类,可以HttpServletRequestWrapper类包装原始的request对象,实现了HttpServletRequest接口的所有方法,内部调用了所包装的request对象的对应方法;而流读取完毕都会进行close,这个流close之后,close状态就置为了true,所以导致流无法进行二次读取。post请求体内容无法重复获取。为什么会无法重复读取呢?原创 2024-03-03 14:21:09 · 463 阅读 · 0 评论 -
JavaWeb之上传文件
对于很多网站都会遇到一些文件上传的功能,比如上传头像,上传excel等,而基于表单的提交对于传送二进制数据有些力不从心,因为表单数据是拼接在url上的,而url本身是有长度限制的,所以出现了multipart格式的数据,将一个表单拆分为多个部分(part),每个部分对应一个输入域。使用读取流的方式来读取太过于麻烦 request.getInputStream() 获取到的是整个请求体,需要解析各个字段和分隔。commons-fileupload.jar 依赖于 commons-io.jar。原创 2024-02-25 15:31:35 · 480 阅读 · 0 评论 -
JavaWeb之会话管理
session代表着服务器和客户端一次会话的过程,是记录在服务器端,获取session需要把sessionId传递给服务端,通过sessionId来取到对应的session,关闭浏览器,session不会被销毁,还可以通过sessionId找到该session(但是此时浏览器发送数据时已不会携带该sessionId,导致出现session销毁的错觉),在同一个application下的servlet/jsp可以共享一个session,前提是同一个客户端窗口。原创 2024-02-22 10:24:17 · 1103 阅读 · 0 评论 -
JavaWeb之监听器
ServletContextListener最常用,在当前WEB应用加载的时候对当前WEB应用的相关资源进行初始化操作:创建数据库连接池,创建Spring的IOC容器,读取当前WEB应用的初始化参数。 保存到Session域中的对象可以有多种状态:绑定到Session中,从Session中解除绑定;随Session对象持久到到一个存储设备中;用于监听ServletContext、HttpSession、ServletRequest等对象的创建和销毁,以及属性修改。实现相应的接口,监听不同的域对象。原创 2024-02-21 10:35:13 · 925 阅读 · 0 评论 -
JavaWeb之请求转发和重定向
重定向使用的是response.sendRedirect方法,sendRedirect方法会产生一个302的响应码和Location的响应头,从而通知客户端去重新访问Location响应头中指定的URL,此时会创建一个新的请求。请求转发是将一个请求转到服务器的另一个资源,在处理完初步请求另外的资源之后生成响应,使用的是RequestDispatcher.forward方法来实现的,先看一下RequestDispatcher这个接口是什么。本质区别:请求转发是在服务器内部转发,重定向是在客户端转发。原创 2024-02-19 10:00:04 · 539 阅读 · 0 评论 -
JavaWeb之Servlet接口
对于每个Servlet可能在启动时都需要一些初始化参数,而所有的Servlet是交由Servlet引擎去实例化的,那么也就是需要将每个Servlet的初始化参数也都配置到web.xml中,Servlet引擎将Servlet容器对象和Servlet的配置信息封装到ServletConfig中,并在Servlet初始化时将ServletConfig传递给该Servlet。该方法由GenericServlet的调用,如果需要使用到ServletConfig则调用getServletConfig()方法来获取。原创 2024-02-16 22:57:15 · 1592 阅读 · 0 评论 -
javaweb之国际化
原文链接 [https://zhhll.icu/2021/javaweb/基础/11.国际化/]- 国际化(i18n): i18n internationalization,网站能够提供翻译成访问者的语言或国籍的不同版本的内容- 本地化(i10n): 向网站添加资源,使其适应特定的地理或文化区域,例如将网站翻译为中文- 区域设置:通常为语言符号后跟一个由下划线分隔的国家符号。例如"en_US"原创 2022-05-16 08:50:02 · 547 阅读 · 1 评论 -
javaweb之文件上传
原文链接 [https://zhhll.icu/2021/javaweb/基础/10.上传文件/]对于很多网站都会遇到一些文件上传的功能,比如上传头像,上传excel等,而基于表单的提交对于传送二进制数据有些力不从心,因为表单数据是拼接在url上的,而url本身是有长度限制的,所以出现了multipart格式的数据,将一个表单拆分为多个部分(part),每个部分对应一个输入域原创 2022-05-15 11:15:48 · 326 阅读 · 1 评论 -
javaweb之会话管理
原文链接 [https://zhhll.icu/2021/javaweb/基础/7.会话管理/]HTTP是无状态的协议,每次客户端访问web页面时,都会打开一个单独的连接到web服务器,服务器不会自动保存客户端请求的任何记录,需要使用cookie和session来将一系列的请求和响应关联起来,维持客户端和服务器之间的会话原创 2022-05-11 08:03:39 · 366 阅读 · 1 评论 -
javaweb之监听器Listener
原文链接 [https://zhhll.icu/2021/javaweb/基础/6.监听器/]Servlet中存在一个EventListener接口,该接口有很多的子接口,如ServletContextListener、HttpSessionListener、ServletRequestListener等用于监听ServletContext、HttpSession、ServletRequest等对象的创建和销毁,以及属性修改原创 2022-05-09 09:43:54 · 578 阅读 · 0 评论 -
javaweb之过滤器Filter
原文链接 [https://zhhll.icu/2021/javaweb/基础/5.过滤器/]依赖于servlet容器,基于函数回调,可以对请求和响应进行拦截,在访问后端资源之前,拦截这些来自客户端的请求,在发送回客户端之前,处理这些响应原创 2022-05-08 09:43:04 · 564 阅读 · 0 评论 -
javaweb之请求转发和重定向
原文链接 [https://zhhll.icu/2021/javaweb/基础/4.请求转发和重定向/]请求转发使用的是RequestDispatcher.forward方法来实现的,先看一下RequestDispatcher这个接口是什么RequestDispatcher的实例是由Servlet引擎创建的,用于包装一个要被其他资源调用的资源,并可以通过其中的方法将客户端的请求转发给所包装的资源原创 2022-05-06 08:28:29 · 616 阅读 · 1 评论 -
Servlet接口
原文链接 [https://zhhll.icu/2021/javaweb/基础/1.Servlet接口/]在java web中不管是使用J2EE原生的servlet/jsp还是使用springmvc/springboot,在web服务器看来只是对外暴露出来的Servlet,而这个Servlet是javax.servlet.Servlet接口,该接口定义了Servlet引擎与Servlet程序之间通信的协议约定。原创 2022-05-01 14:16:40 · 1731 阅读 · 1 评论