<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_61551764的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_61551764</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_61551764]]></copyright><item><title><![CDATA[MySql]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/131096444</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/131096444</guid><author>qq_61551764</author><pubDate>Wed, 07 Jun 2023 21:26:53 +0800</pubDate><description><![CDATA[幻读指的是一个事务在前后两次查询同一个范围的时候，后一次查询看到了前一次查询没有看到的行。如下图：\1. Q1 只返回 id=5 这一行；\2. 在 T2 时刻，session B 把 id=0 这一行的 d 值改成了 5，因此 T3 时刻 Q2 查出来的是id=0 和 id=5 这两行；\3. 在 T4 时刻，session C 又插入一行（1,1,5），因此 T5 时刻 Q3 查出来的是 id=0、id=1 和 id=5 的这三行。]]></description><category></category></item><item><title><![CDATA[mybatis查漏]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/128961330</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/128961330</guid><author>qq_61551764</author><pubDate>Thu, 09 Feb 2023 22:01:43 +0800</pubDate><description><![CDATA[index 改成  `index`]]></description><category></category></item><item><title><![CDATA[如何让Java项目兼容更多的客户端设备（二）]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/128088767</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/128088767</guid><author>qq_61551764</author><pubDate>Mon, 28 Nov 2022 22:28:12 +0800</pubDate><description><![CDATA[​​	一、Token认证的原理传统的单体JavaWeb项目通常采用HttpSession保存登陆成功的凭证，但是HttpSession需要浏览器的Cookie机制配合。也就是说Web项目的客户端只能是浏览器，不可以是APP、机顶盒、智能家电等。为了让Java项目兼容更多的客户端设备，所以我们要放弃在客户端用Cookie保存SessionId的做法。我们在服务端生成Token字符串，然后交给客户端保存。APP也好、浏览器也好、机顶盒也好，都能保存字符串。]]></description><category></category></item><item><title><![CDATA[如何让Java项目兼容更多的客户端设备（一）]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/128072053</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/128072053</guid><author>qq_61551764</author><pubDate>Sun, 27 Nov 2022 23:38:41 +0800</pubDate><description><![CDATA[HTTP访问是无状态的，（服务器不知道是不是你访问的）所以我们不知道每次登录的是谁如果想实现每次登录不用重复登录，最简单的就是让浏览器记住用户名和密码。但这样做风险极大，如果电脑被黑了就会泄露出去密码；而且每次浏览器都要想办法在请求里加入用户名和密码。]]></description><category></category></item><item><title><![CDATA[动态规划模板总结(1)]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/127952231</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/127952231</guid><author>qq_61551764</author><pubDate>Sun, 20 Nov 2022 18:40:07 +0800</pubDate><description><![CDATA[一维实现：运用了滚动数组的思想，每次找最大值就是从前面一次的数组寻值，而且由于公式的原因不可能从原地址取值。运用了一维就可以直接把前面i代表的那一维去掉。滚动数组：如果f()只用到了上层的数据，完全可以只用f(2)和f(1)交替来算。不需要创建额外的空间。f(i,j)表示的是集合的某种属性，是个值。]]></description><category></category></item><item><title><![CDATA[时间复杂度入门案例]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/126986483</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/126986483</guid><author>qq_61551764</author><pubDate>Fri, 23 Sep 2022 00:09:42 +0800</pubDate><description><![CDATA[时间复杂度简单入门]]></description><category></category></item><item><title><![CDATA[用mysql和java写一个简易点名器]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/126973493</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/126973493</guid><author>qq_61551764</author><pubDate>Wed, 21 Sep 2022 16:11:23 +0800</pubDate><description><![CDATA[用Java写一个简明点名器]]></description><category></category></item><item><title><![CDATA[dp---背包问题]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/125901829</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/125901829</guid><author>qq_61551764</author><pubDate>Wed, 20 Jul 2022 22:15:09 +0800</pubDate><description><![CDATA[dp]]></description><category></category></item><item><title><![CDATA[JDBC接口总结]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/125248707</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/125248707</guid><author>qq_61551764</author><pubDate>Sun, 12 Jun 2022 19:14:42 +0800</pubDate><description><![CDATA[JDBC]]></description><category></category></item><item><title><![CDATA[servlet]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/125090465</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/125090465</guid><author>qq_61551764</author><pubDate>Wed, 01 Jun 2022 21:15:00 +0800</pubDate><description><![CDATA[servlet]]></description><category></category></item><item><title><![CDATA[KMP算法]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/125053550</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/125053550</guid><author>qq_61551764</author><pubDate>Mon, 30 May 2022 20:41:57 +0800</pubDate><description><![CDATA[KMP算法

Knuth–Morris–Pratt（KMP）算法是一种改进的字符串匹配算法，它的核心是利用匹配失败后的信息，尽量减少模式串与主串的匹配次数以达到快速匹配的目的。它的时间复杂度是 O(m+n)

Java代码
public int strStr(String haystack, String needle) {
        if(needle.length()==0) return 0;
        int m = haystack.length(), i = 0;
        i]]></description><category></category></item><item><title><![CDATA[Tomcat]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/124991833</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/124991833</guid><author>qq_61551764</author><pubDate>Thu, 26 May 2022 20:24:31 +0800</pubDate><description><![CDATA[Tomcat
此处省去Tomcat的安装
CS:客户端服务器架构模式


优点:充分利用客户端机器的资源，减轻服务器的负荷
(一部分安全要求不高的计算任务存储任务放在客户端执行，不需要把所有的计算和存储都在服务器端执行，从而能够减轻服务器的压力，也能够减轻网络负荷)


缺点:需要安装;升级维护成本较高


BS:浏览器服务器架构模式

优点:客户端不需要安装;维护成本较低
缺点:所有的计算和存储任务都是放在服务器端的，服务器的负荷较重;在服务端计算完成之后把结果再传输给客户端，因此客户端和服务器端会进行非]]></description><category></category></item><item><title><![CDATA[队列和栈的基本算法题]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/124915010</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/124915010</guid><author>qq_61551764</author><pubDate>Sun, 22 May 2022 21:09:07 +0800</pubDate><description><![CDATA[力扣总结



思路：创建一个栈存放温度数组的元素下标在创建一个数组放答案，只要在i天之后温度高了就将栈顶元素弹出栈，并保存栈顶元素赋值到答案数组



思路： 这题没有什么难的，但是由这题联想到剑指 Offer 30. 包含min函数的栈 - 力扣（LeetCode）

在用Java创建Stack并用Integer泛型的时候出现了栈溢出的情况。通过查阅资料发现是因为


...]]></description><category></category></item><item><title><![CDATA[栈和队列的实现及简单应用]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/124786356</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/124786356</guid><author>qq_61551764</author><pubDate>Sun, 15 May 2022 19:25:23 +0800</pubDate><description><![CDATA[一.栈

1)栈的实现


//用链表实现栈（链式储存结构）
public class LLNode {
    public static void main(String[] args) {
        LLStack llStack = new LLStack();
        llStack.push(1);
        llStack.push(2);
        llStack.push(3);
        System.out.println("栈里面的个数...]]></description><category></category></item><item><title><![CDATA[递归学习（一）]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/124654915</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/124654915</guid><author>qq_61551764</author><pubDate>Sun, 08 May 2022 21:30:01 +0800</pubDate><description><![CDATA[一.含义

递归，就是在运行的过程中调用自己。

二.模板及条件


public void function(参数0) {
    if (终止条件) {
        return;
    }
    function(参数1);
}

ps:1.注意终止条件要放调用之前，不然会报StackOverflowError。

2.递归是把一个大的问题细分为更小的子问题，是一个重复的过程，只需要知道递归函数的功能即可，不要把递归一层一层的拆开来想。

三.举例

1）汉诺塔

汉诺塔的原理就是借助一个柱子]]></description><category></category></item><item><title><![CDATA[链表相关题型思路总结]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/124580414</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/124580414</guid><author>qq_61551764</author><pubDate>Thu, 05 May 2022 00:05:23 +0800</pubDate><description><![CDATA[一.删除链表某一结点





直接跳过结点即可

二.删除链表的倒数第N个节点



三.反转链表



四.合并两个有序链表



五.回文链表

六.环形链表




]]></description><category></category></item><item><title><![CDATA[AVASE学习总结（22）：Java比较器，其他类]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/122395563</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/122395563</guid><author>qq_61551764</author><pubDate>Sun, 09 Jan 2022 20:33:25 +0800</pubDate><description><![CDATA[Java比较器，其他类]]></description><category></category></item><item><title><![CDATA[AVASE学习总结（21）：jdk 8中日期时间API的测试]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/122386752</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/122386752</guid><author>qq_61551764</author><pubDate>Sun, 09 Jan 2022 15:30:55 +0800</pubDate><description><![CDATA[IDEA debug调试,导入Module
jdk 8中日期时间API的测试
]]></description><category></category></item><item><title><![CDATA[JAVASE学习总结（20）：字符串相关的类--StringBuffer]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/122380231</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/122380231</guid><author>qq_61551764</author><pubDate>Sat, 08 Jan 2022 14:48:27 +0800</pubDate><description><![CDATA[一。String、StringBuffer、StringBuilder三者的异同？
String:不可变的字符序列；底层使用char[]存储
StringBuffer:可变的字符序列；线程安全的，效率低；底层使用char[]存储
StringBuilder:可变的字符序列；jdk5.0新增的，线程不安全的，效率高；底层使用char[]存储



    源码分析：
    String str = new String();//char[] value = new char[0];
    String s]]></description><category></category></item><item><title><![CDATA[JAVASE学习总结（19）：子串串相关的类---String]]></title><link>https://blog.youkuaiyun.com/qq_61551764/article/details/122354923</link><guid>https://blog.youkuaiyun.com/qq_61551764/article/details/122354923</guid><author>qq_61551764</author><pubDate>Sat, 08 Jan 2022 14:38:06 +0800</pubDate><description><![CDATA[常量池中不会有两个相同的内容
]]></description><category></category></item></channel></rss>