<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[XinYuDaHai的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/XinYuDaHai</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; XinYuDaHai]]></copyright><item><title><![CDATA[web安全知识]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/133957548</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/133957548</guid><author>XinYuDaHai</author><pubDate>Sat, 21 Oct 2023 09:35:59 +0800</pubDate><description><![CDATA[纵向越权：分向上（低权限可以操作高权限）和向下越权（高权限可以操作低权限）。如，普通用户登录了，后台没做权限控制，可以通过后台url访问管理员的数据。横向越权（又叫水平越权）：攻击者可以访问相同权限的其他用户资源。如，用户a登录了，但可以通过后台url访问用户b的数据。未登录授权：没有登录或者登录失效了，可以通过后台url或失效token直接访问系统数据。越权测试针对后台接口，分3类：未登录授权、横向越权（又叫水平越权）、纵向越权。1. 什么是纵向越权、横向越权？]]></description><category></category></item><item><title><![CDATA[读书笔记：Thinking in UML 大象-第14章 测试]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/126002941</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/126002941</guid><author>XinYuDaHai</author><pubDate>Tue, 26 Jul 2022 21:14:15 +0800</pubDate><description><![CDATA[读书笔记：Thinking in UML 大象]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第5章 泛型Generics]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125172465</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125172465</guid><author>XinYuDaHai</author><pubDate>Wed, 08 Jun 2022 20:59:12 +0800</pubDate><description><![CDATA[Effective Java-第5章 泛型Generics]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第4章 类和接口]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125154564</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125154564</guid><author>XinYuDaHai</author><pubDate>Tue, 07 Jun 2022 20:02:14 +0800</pubDate><description><![CDATA[Effective Java-第4章 类和接口]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第3章 对所有对象都通用的方法]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125154400</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125154400</guid><author>XinYuDaHai</author><pubDate>Mon, 06 Jun 2022 21:20:38 +0800</pubDate><description><![CDATA[Effective Java-第2章 对所有对象都通用的方法]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第2章 创建和销毁对象]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125153773</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/125153773</guid><author>XinYuDaHai</author><pubDate>Mon, 06 Jun 2022 21:11:50 +0800</pubDate><description><![CDATA[Effective Java-第2章 创建和销毁对象]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第12章 序列化Serialization]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124993033</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124993033</guid><author>XinYuDaHai</author><pubDate>Mon, 06 Jun 2022 20:31:04 +0800</pubDate><description><![CDATA[object serialization：对象序列化，一个java框架，用来将对象编码为字节流byte stream（序列化serializing）,或从字节流编码中重新构建对象（反序列化deserializing）。一旦对象被序列化后，它的编码可以从一台VM被传递到另一台VM上，或者被存储到磁盘上，供后续反序列化时使用。

Item 85: Prefer alternatives to Java serialization

其他方法优先于java序列化


..................]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第11章 并发Concurrency]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124830765</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124830765</guid><author>XinYuDaHai</author><pubDate>Thu, 26 May 2022 21:14:16 +0800</pubDate><description><![CDATA[读书笔记：Effective Java-第10章 异常
]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第10章 异常]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124697472</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124697472</guid><author>XinYuDaHai</author><pubDate>Tue, 17 May 2022 21:38:06 +0800</pubDate><description><![CDATA[Item 69: Use exceptions only for exceptional conditions

只有针对异常的情况才使用异常

异常模式比正常模式要慢。

用异常来代替正常控制流的弊端：可读性差，降低性能，不能保证正常工作，掩盖其他bug。

Item 70: Use checked exceptions for recoverable conditions and runtime exceptions for programming errors

对可恢复的情况使用受检异常，对编程..]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第9章 通用编程]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124437848</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124437848</guid><author>XinYuDaHai</author><pubDate>Tue, 10 May 2022 21:03:32 +0800</pubDate><description><![CDATA[Item 57: Minimize the scope of local variables

将局部变量的作用域最小化


]]></description><category></category></item><item><title><![CDATA[SSO单点登录]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124523560</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124523560</guid><author>XinYuDaHai</author><pubDate>Tue, 03 May 2022 12:57:28 +0800</pubDate><description><![CDATA[SSO（单点登录）的实现 - /***/ - 博客园

百度安全验证
]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第8章 方法Methods]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124181949</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124181949</guid><author>XinYuDaHai</author><pubDate>Tue, 26 Apr 2022 21:32:05 +0800</pubDate><description><![CDATA[Item 49: Check parameters for validity

检查参数的有效性

术语：

failure atomicity：失败原子性。

应该在文档中清楚地指明参数的所有限制，并在方法体的开头处检查参数。

mkkk
]]></description><category></category></item><item><title><![CDATA[开发工具推荐]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124225404</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124225404</guid><author>XinYuDaHai</author><pubDate>Sun, 17 Apr 2022 10:07:42 +0800</pubDate><description><![CDATA[API管理/http请求工具
Postmanhttps://www.postman.com/

Apifoxhttps://www.apifox.cn/

VS Code插件Rest Client
]]></description><category></category></item><item><title><![CDATA[IDEA设置问题]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124180995</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/124180995</guid><author>XinYuDaHai</author><pubDate>Thu, 14 Apr 2022 20:36:51 +0800</pubDate><description><![CDATA[idea控制台中文打印乱码
	
当通过System.out.print()打印中文是，控制台输出乱码，可通过如下设置解决：

打开setting --&gt; Editor --&gt; File Encodings，在右侧的Project Encoding和Default encoding fro properties files设置为GBK，点击ok，重新执行即可正常。








..................]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第7章 Lambda和Stream]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123883016</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123883016</guid><author>XinYuDaHai</author><pubDate>Thu, 14 Apr 2022 20:28:32 +0800</pubDate><description><![CDATA[Item 42: Prefer lambdas to anonymous classes

Lambda优先于匿名类

术语：

function types：函数类型

function objects：函数对象

anonymous class：匿名类

functional interfaces：函数接口，只包含一个抽象方法的接口。

Lambda expressions：Lambda表达式，简称Lambda，用来创建函数接口的实例。

type inference：类型推断
...]]></description><category></category></item><item><title><![CDATA[IO与NIO]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/108546281</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/108546281</guid><author>XinYuDaHai</author><pubDate>Fri, 25 Mar 2022 20:40:52 +0800</pubDate><description><![CDATA[NIO1. 背景2. BIO3. NIO参考
1. 背景
IO的方式通常分为几种，同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。
NIO本身是基于事件驱动思想来完成的，其主要想解决的是BIO的大并发问题。
2. BIO
即传统IO。JDK1.4之前，当网络连接采用BIO模式时，服务端和客户端的socket是一对一连接通信的，通信结束前会阻塞当前进程。因此并发需要开启多线程来实现，一旦面对大并发时就需要开启大量线程，从而造成服务器资源浪费。
特点：

有2个阻塞点：获取socket套接字、获取客户]]></description><category></category></item><item><title><![CDATA[Java特殊符号用法]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123718672</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123718672</guid><author>XinYuDaHai</author><pubDate>Thu, 24 Mar 2022 18:58:24 +0800</pubDate><description><![CDATA[1. 类名::方法名

叫做method reference，效果等价于lambda表达式（x-&gt;fun()），都是functional interface实例的简写，编译器会将自动将其转换为实例对象）
]]></description><category></category></item><item><title><![CDATA[读书笔记：Effective Java-第6章 枚举和注解]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123669625</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/123669625</guid><author>XinYuDaHai</author><pubDate>Wed, 23 Mar 2022 21:11:28 +0800</pubDate><description><![CDATA[Item 34: Use enums instead of int constants

用枚举代替int常量






]]></description><category></category></item><item><title><![CDATA[vue数据可视化组件]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/106979050</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/106979050</guid><author>XinYuDaHai</author><pubDate>Sat, 27 Jun 2020 10:05:49 +0800</pubDate><description><![CDATA[1.echarts

官网：https://echarts.apache.org/zh/index.html

2. v-charts

官网：https://v-charts.js.org/#/

v-charts是基于echarts的二次封装，使用起来更方便，功能没有echarts那么丰富。

3. DataV

官网：http://datav.jiaminghi.com/

参考

GitDataV：https://github.com/HongqingCao/GitDataV
...]]></description><category></category></item><item><title><![CDATA[Node.js 安装]]></title><link>https://blog.youkuaiyun.com/XinYuDaHai/article/details/106966374</link><guid>https://blog.youkuaiyun.com/XinYuDaHai/article/details/106966374</guid><author>XinYuDaHai</author><pubDate>Fri, 26 Jun 2020 10:03:08 +0800</pubDate><description><![CDATA[1. Node.js 安装

注意：NPM包管理工具集成在Node.js中。

官方下载地址：https://nodejs.org/en/download/

根据自己的系统下载相应的版本。

下载完后按默认值安装即可。

2. 修改npm镜像

将镜像改为淘宝镜像。

方式1：打开cmd，输入以下命令：


npm config set registry http://registry.npm.taobao.org

方式2：打开系统用户目录：C:\Users\用户名，打开npm配置文件（没有就新建）：.]]></description><category></category></item></channel></rss>