
JavaWeb
文章平均质量分 66
JavaWeb
陈鹏的博客
保持常态
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
json 和java对象 互相转换(java)
java 解析json1.使用 alibaba 的 fastJson添加依赖或者jar2.fastJson 简单使用JSON > Java对象java对象 > jsonpublic class MyJson { public static String jsonmap = "{\"001\":{\"name\":\"xiaohong\",\"password\":\"654321\"},\"002\":[{\"$ref\":\"$.001\"},{\"name\":\"x转载 2021-09-04 15:12:53 · 471 阅读 · 1 评论 -
转发和重定向的区别和使用
页面的跳转:转发1.转发的原理2.转发的方法疑问能否在OneServlet中保存值到请求域中,在另一个TwoServlet中打印出来?如果是不同的请求,不能取出来。如果是同一次请求是可以取出来的。转发与重定向的作用在Servlet中实现页面的跳转有两种方式:转发和重定向什么是转发?概念由服务器端进行的页面跳转原理图转发的方法案例需求实现从OneServlet中转发到TwoServlet步骤1.OneServlet向请求域中添加了一个键和值,转发给TwoServlet转载 2021-06-24 15:41:34 · 151 阅读 · 1 评论 -
cookie和session的详解与区别
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。一.Cookie机制 在程序中,会话跟踪是很重要的事情。理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个会话,.原创 2021-05-23 11:34:48 · 207 阅读 · 2 评论 -
HTTP协议客户端是如何向服务器发送请求
一.HTTP协议解读HTTP协议:超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。 所有的HTML文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的 方法。HTTPS协议(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在 HTTP下加入SSL层。SSL (Secure Sockets Layer 安全套接层)主要用于Web原创 2021-06-24 15:27:57 · 2633 阅读 · 2 评论 -
RSA简介(*)
什么是RSARSA算法是应用最广泛的公钥密码算法。1977年,RSA算法由MIT的罗纳德 · 李维斯特(Ron Rivest)、阿迪 · 萨莫尔(Adi Shamir)和伦纳德 · 阿德曼(Leonard Adleman)共同设计,于1978年正式发布,以他们三人的首字母命名。在这之前所用的对称加密方式只采用一个密钥,知道加密密钥就可以知道解密密钥。但是由于双方需要事先约定加密的规则,就导致没有办法安全地交换密钥,建立安全的传递通道。但是1976年出现的非对称加密算法的思想就可以解决密钥的交换和存放转载 2021-12-17 21:51:57 · 4580 阅读 · 0 评论 -
Http中Content-Type常用类型
一.常见的媒体格式类型如下:1.text/html : HTML格式2.text/plain :纯文本格式3.text/xml : XML格式4.image/gif :gif图片格式5.image/jpeg :jpg图片格式6.image/png:png图片格式二.以application开头的媒体格式类型:1.application/xhtml+xml :XHTML格式2.application/xml: XML数据格式3.application/atom+xml :Atom XML聚原创 2021-09-17 19:38:18 · 861 阅读 · 1 评论 -
Json简介
前言:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON选用完全独立于语言的文本格局,但是也使用了类似于C语言宗族的习气(包含C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使json调试成为抱负的数据交换语言。 易于人阅览和编写,同时也易于机器解析和生成(一般用于提高网络传输速率)。Json是JavaScript对象表示法(JavaScript Object Notatio转载 2021-09-22 18:27:49 · 442 阅读 · 0 评论 -
HttpClient发送Post请求————StringEntity 和 UrlEncodedFormEntity 的区别
一直用hutool的工具类做http调用,今天有空看了一下apache的httpclient,在实现带参数的post请求的时候看到有两个entity可以作为参数,再分别看了两个类在这做一下笔记。首先说StringEntityStringEntity extends AbstractHttpEntity implements Cloneable继承于AbstractHttpEntity类,这个类做参数的时候设置比较灵活,通过类的构造方法可以看到有两个参数,一个是具体的参数值(string串),另一个是转载 2021-09-20 09:06:09 · 766 阅读 · 0 评论 -
HttpClien高并发请求连接池 - PoolingHttpClientConnectionManager(*)
连接池技术作为创建和管理连接的缓冲池技术,目前已广泛用于诸如数据库连接等长连接的维护和管理中,能够有效减少系统的响应时间,节省服务器资源开销。其优势主要有两个:其一是减少创建连接的资源开销,其二是资源的访问控制。连接池管理的对象是长连接,对于HTTP连接是否适用,我们需要首先回顾一下长连接和短连接。所谓长连接是指客户端与服务器端一旦建立连接以后,可以进行多次数据传输而不需重新建立连接,而短连接则每次数据传输都需要客户端和服务器端建立一次连接。长连接的优势在于省去了每次数据传输连接建立的时间开销,能够大幅度原创 2021-10-29 14:31:41 · 4707 阅读 · 0 评论 -
Java基础——HSSFworkbook,XSSFworkbook,SXSSFworkbook区别简述
区别:用JavaPOI导出Excel时,我们会考虑到Excel版本及数据量的问题。针对不同的Excel版本,要采用不同的工具类。HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls;XSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx;对于不同版本的EXCEL文档要使用不同的工具类,如果使用错了,会提示如下错误信息。org.apache.poi.openxml4j.exceptions.InvalidOperationExc转载 2021-06-03 13:15:46 · 2467 阅读 · 1 评论 -
Java中的过滤器和拦截器
一.简介1.什么是拦截器?(1)在AOP中用于在某个方法或字段被访问之前,进行拦截然后再之前货之后加入某些操作。拦截是AOP的一种实现策略。(2)拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者定义一个action前后执行的代码,也可以在一个action执行阻止其执行,同时也是提供了一种可以提取action可重用部分的方式。(3)实现原理:大部分是通过代理的方式来调用的。(4)自定义拦截器步骤:【1】自定义一个实现了Interceptor接口的类,或者继承抽象类Abstrac原创 2021-05-20 10:31:48 · 1357 阅读 · 2 评论 -
java的web开发中URLEncoder.encode方法(*)
我们先看2个编码的情况 String name=java.net.URLEncoder.encode("测试", "UTF-8"); System.out.println(name); name=java.net.URLEncoder.encode(name,"UTF-8"); System.out.println(name); name=java.net.URLDecoder.decode(name, "UTF-8"); System.out.println转载 2022-02-16 16:19:29 · 9676 阅读 · 0 评论 -
公钥,私钥和数字签名这样最好理解(*)
一.公钥加密假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥,所以他解不开,只有我知道数字2就是我的私钥,来解密。这样我就可以保护数据了。我的好朋友xxx用我的公钥1加密了字符a,加密后成了b,放在网上。别人偷到了这个文件,但是别人解不开,因为别人不知道2就是我的私钥,只有我才能解密,解密后就得到a。这样,我们就可以传送加密的数据了。转载 2021-11-13 14:40:34 · 1042 阅读 · 0 评论 -
java 从网络Url中下载文件
/** * 从网络Url中下载文件 * @param urlStr * @param fileName * @param savePath * @throws IOException */ public static void downLoadFromUrl(String urlStr,String fileName,String savePath) throws IOException{ URL url = new UR原创 2021-07-05 14:39:53 · 245 阅读 · 1 评论 -
HttpClient高并发下性能优化-http连接池(*)
首先,明确三点:1.http连接池不是万能的,过多的长连接会占用服务器资源,导致其他服务受阻2.http连接池只适用于请求是经常访问同一主机(或同一个接口)的情况下3.并发数不高的情况下资源利用率低下那么,当你的业务符合上面3点,那么你可以考虑使用http连接池来提高服务器性能使用http连接池的优点:1.复用http连接,省去了tcp的3次握手和4次挥手的时间,极大降低请求响应的时间2.自动管理tcp连接,不用人为地释放/创建连接使用http连接池的大致流程 :1.创建PoolingHt原创 2021-10-29 14:59:31 · 3650 阅读 · 0 评论 -
Servlet 详解
一.什么是servlet? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。二.tomcat和servlet的关系 Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat 作为Servlet容器,负责处理客户请求,把请求传送给Ser原创 2021-05-24 11:00:01 · 458 阅读 · 2 评论 -
session介绍(*)
1.session的简单介绍session是一种保存上下文信息的机制,保存的是对象,它的值是存放在服务器端,它通过sessionId来区分不同的客户端,而sessionId是保存在客户端的,做为客户端与服务器的验证标识,它是一个24位的随机字符串,用户每次提交页面时,浏览器都会把这个sessionId包含在HTTP头中提交给WEB服务器。2.session的产生过程当服务器接收到客户端的请求,要求产生一个session时,服务器会先检查下,客户端的cookies中是否有sessionId,并且判断它是转载 2021-12-22 12:12:45 · 1102 阅读 · 0 评论 -
Http介绍
一. HTTP协议简介我们日常生活中经常会使用浏览器访问Web站点,但是大家有思考过在这个过程中到底发生了什么吗?为什么我们在浏览器地址栏上面输入要访问的URL后就可以访问到Web页面呢?1.浏览器背后的故事当我们在浏览器地址栏上输入要访问的URL后,浏览器会分析出URL上面的域名,然后通过DNS服务器查询出域名映射的IP地址,浏览器根据查询到的IP地址与Web服务器进行通信,而通信的协议就是HTTP协议。我们可以把这个过程类比成一个电话对话的过程。当我们要打电话给某个人,首先要知道对方的电话号码,原创 2021-05-17 10:52:20 · 377 阅读 · 3 评论 -
getParameter方法的用法(*)
html核心代码<body> <font size = "5" color ="blue">圆面积计算</font><br> <form action = "home/CCarea" method = "post"> 请输入半径r:<input type="text" name = "radius" value = "0"size ="4"/>    &l转载 2022-02-16 16:11:13 · 3585 阅读 · 0 评论 -
httpclient的两个重要的参数maxPerRoute及MaxTotal(*)
httpclient封装了java中进行http网络请求的底层实现,是一个被广泛使用的组件。httpclient是支持池化机制的,这两个参数就是表示池化设置的。服务之间发送http请求常用的有Apache的Fluent以及spring的restTemplate等Apache的Fluent,以及spring的restTemplate都是对httpclient进行了封装以Apache的Fluent为例说明其Executor类 /** * An Executor for fluent reques转载 2021-10-29 15:06:50 · 5119 阅读 · 0 评论 -
Java技术 | 细谈Java中UUID的简单了解与使用
一.什么是UUID?UUID全称:Universally Unique Identifier,即通用唯一识别码。UUID是由一组32位数的16进制数字所构成,是故UUID理论上的总数为16^32 = 2^128,约等于3.4 x 10^38。也就是说若每纳秒产生1兆个UUID,要花100亿年才会将所有UUID用完。UUID的标准型式包含32个16进制数字,以连字号分为五段,形式为8-4-4-4-12的32个字符,如:550e8400-e29b-41d4-a716-446655440000。二.UUI原创 2021-06-30 15:11:25 · 2252 阅读 · 2 评论 -
Java中的日志级别
log4j定义了8个级别的log(除去OFF和ALL,可以说分为6个级别),优先级从高到低依次为:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、 ALL。(1)ALL:最低等级的,用于打开所有日志记录。(2)TRACE: designates finer-grained informational events than the DEBUG.Since:1.2.12,很低的日志级别,一般不会使用。(3)DEBUG: 指出细粒度信息事件对调试应用程序是非常有帮助的,主要原创 2021-05-27 15:14:46 · 330 阅读 · 1 评论 -
HttpClient发送Post请求
一.HttpClientUtil类,提供三个方法,分别是sendPostByForm,sendPostByJson,sendPostByXml(1)sendPostByForm 处理 application/x-www-form-urlencoded格式报文的请求(2)sendPostByJson 处理 application/json 格式报文的请求(3)sendPostByXml 处理 text/xml 格式报文的请求1.package com.harara.fund.util.http;原创 2021-09-17 19:44:10 · 18448 阅读 · 0 评论 -
HttpClient介绍和简单使用流程
1.HttpClientSpringCloud中服务和服务之间的调用全部是使用HttpClient,还有前面使用SolrJ中就封装了HttpClient,在调用SolrTemplate的saveBean方法时就调用HttpClient技术。当前大部分项目暴漏出来的接口是Http请求,数据格式是JSON格式,但在一些老项目使用的仍然是webService。HttpClient 提供的主要的功能(1)实现了所有 HTTP 的方法(GET,POST,PUT,DELETE 等)(2)支持自动转向(3)支原创 2021-09-20 08:54:07 · 1480 阅读 · 2 评论 -
TCP协议详解(*)
为什么会有TCP/IP协议在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样。计算机使用者意识到,计算机只是单兵作战并不会发挥太大的作用。只有把它们联合起来,电脑才会发挥出它最大的潜力。于是人们就想方设法的用电线把电脑连接到了一起。但是简单的连到一起是远远不够的,就好像语言不同的两个人互相见了面,完全不能交流信息。因而他们需要定义一些共通的东西来进行交流,TCP/IP就是为此而生。T原创 2021-10-30 10:53:29 · 227 阅读 · 0 评论 -
TCP/IP协议与Http协议的区别(*)
TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将原创 2021-10-30 10:59:53 · 2118 阅读 · 0 评论 -
RBAC简介(*)
一.RBAC是什么1.RBAC模型概述RBAC是Role Based Access Control的英文缩写,意思是基于角色访问控制。RBAC实际上就是针对产品去发掘需求时所用到的Who(角色)、What(拥有什么资源)、How(有哪些操作)的方式。在RBAC模型中,who、what、how构成了访问权限三元组,也就是“Who对What进行How的操作。RBAC主要包含四个子模型:RBAC0、RBAC1、RBAC2和RBAC3,整体又叫做RBAC96。RBAC0RBAC0是RBAC96模型家原创 2021-11-05 10:35:46 · 11031 阅读 · 0 评论 -
HTTP认证之基本认证——Basic(*)
一、概述Basic认证是一种较为简单的HTTP认证方式,客户端通过明文(Base64编码格式)传输用户名和密码到服务端进行认证,通常需要配合HTTPS来保证信息传输的安全。二、剖析1.当打开需要认证的页面时,会弹出一个对话框,要求输入用户名和密码2.使用Fiddler监听请求,可以看到在未进行认证或认证失败的情况下,服务端会返回401 Unauthorized给客户端,并附带Challenge(质询),即在Response Header中添加WWW-Authenticate标头,浏览器识别到Ba原创 2021-11-12 11:21:09 · 3081 阅读 · 0 评论 -
Java中的Filter过滤器(*)
Filter简介Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。它主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理。使用Filter的完整流程:Filter对用户请求进行预处理,接着将请求交给Servl原创 2021-11-13 15:52:36 · 581 阅读 · 0 评论 -
HTTP中的请求头和响应头(*)
一请求头1.Accept告诉服务器,客户端支持的数据类型2.Accept-Encoding告诉服务器,客户机支持的数据压缩格式。3.Accept-Language告诉服务器,客户机的语言环境。4.Connection客户机通过这个头告诉服务器,请求完后是关闭还是保持链接。5.Content-Length表示请求消息正文的长度。6.Content-Type客户机通过这个头告诉服务器,客户端向服务器发送的数据类型。7.Cookie客户机通过这个头告诉服务器,可以向服务器带数据。8.原创 2021-11-18 11:39:34 · 11739 阅读 · 2 评论