<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[debugmyworld]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/a523900582</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a523900582]]></copyright><item><title><![CDATA[ACM模式下java输入输出]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/126332015</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/126332015</guid><author>a523900582</author><pubDate>Sun, 14 Aug 2022 15:18:01 +0800</pubDate><description><![CDATA[ACM模式下需要自己定义输入测试用例，麻了]]></description><category></category></item><item><title><![CDATA[mysql建立索引原则]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/126181174</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/126181174</guid><author>a523900582</author><pubDate>Fri, 05 Aug 2022 16:58:36 +0800</pubDate><description><![CDATA[一、数据库索引创建规则
1、表的主键、外键必须有索引；
2、数据量超过300的表应该有索引；
3、经常与其他表进行连接的表，在连接字段上应该建立索引；
4、经常出现在Where子句中的字段，特别是大表的字段，应该建立索引；
5、索引应该建在选择性高的字段上；
6、索引应该建在小字段上，对于大的文本字段甚至超长字段，不要建索引；
7、复合索引的建立需要进行仔细分析；尽量考虑用单字段索引代替：
　正确选择复合索引中的主列字段，一般是选择性较好的字段；
　复合索引的几个字段是否经常同时以AND方式出现在Where]]></description><category></category></item><item><title><![CDATA[ACID实现]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/126176372</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/126176372</guid><author>a523900582</author><pubDate>Fri, 05 Aug 2022 14:06:47 +0800</pubDate><description><![CDATA[首先，mysql持久化通过缓存来提高效率，即在select时先查缓存，再查磁盘；在执行修改操作时，sql会先写入到redo.log日志，再写入缓存中。mysql的锁有表锁，行锁，间隙锁,好像还有一个锁数据库的，叫全局锁还是什么来着。一致性：就是事务再执行的前和后数据库的状态都是正常的，表现为没有违反数据完整性，参照完整性和用户自定义完整性等等。原子性：主要依靠undo.log日志实现，即在事务失败时执行回滚。undo.log日志会记录事务执行的sql，当事务需要回滚时，通过反向补偿回滚数据库状态。...]]></description><category></category></item><item><title><![CDATA[java对字符串集合按字符串长度排序]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/125897522</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/125897522</guid><author>a523900582</author><pubDate>Wed, 20 Jul 2022 17:52:04 +0800</pubDate><description><![CDATA[java对字符串集合按字符串长度排序。]]></description><category></category></item><item><title><![CDATA[java后端接收前端传的JsonObject]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/125279728</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/125279728</guid><author>a523900582</author><pubDate>Tue, 14 Jun 2022 15:59:47 +0800</pubDate><description><![CDATA[例如前端传此JsonObject
用 fastjson,首先导入依赖
实体类接收数据
service层]]></description><category></category></item><item><title><![CDATA[sql分组内排名取最大行记录]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/125064282</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/125064282</guid><author>a523900582</author><pubDate>Tue, 31 May 2022 14:08:09 +0800</pubDate><description><![CDATA[今天改一个需求，需要拿到分组后时间最大的一行记录，想到了排名，然后取排第一名的就好了,省略很多字段和表面，大意就是弄俩变量，一个id，一个rank,用case when判断，如果当前id还和上一个id （last_id变量）相同，rank+1，否则rank从头计数，刷新为1，然后每次再把当前id赋给last_id变量
select xxxx
from
(select  xxxx,case when t.id = @last_id then @rank:=@rank+1 else @rank:=1 end a]]></description><category></category></item><item><title><![CDATA[java日期工具类]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/125007173</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/125007173</guid><author>a523900582</author><pubDate>Fri, 27 May 2022 17:01:14 +0800</pubDate><description><![CDATA[//今天初始时间
    public static String initDateByDay(){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date());
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Cale.]]></description><category></category></item><item><title><![CDATA[HttpClient发送Url解析Json字符串]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/124844681</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/124844681</guid><author>a523900582</author><pubDate>Wed, 18 May 2022 16:39:49 +0800</pubDate><description><![CDATA[今天需要数据对接入库，调用接口获取数据并做定时任务落入到自己的数据库中，接口中包含token,分页参数等。
导入依赖
        &lt;dependency&gt;
            &lt;groupId&gt;org.apache.httpcomponents&lt;/groupId&gt;
            &lt;artifactId&gt;httpclient&lt;/artifactId&gt;
            &lt;version&gt;4.3.5&lt;/vers]]></description><category></category></item><item><title><![CDATA[多线程的一些问题]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/124363354</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/124363354</guid><author>a523900582</author><pubDate>Sat, 23 Apr 2022 15:10:46 +0800</pubDate><description><![CDATA[应用场景


异步处理，例如：发邮件、发微博、写日志等；


分布式计算


定期执行一些特殊任务:如定期更新配置文件，任务调度（如quartz），一些监控用于定期信息采集等


TOMCAT处理多用户请求。


针对特别耗时的操作。多线程同步执行可以提高速度。例如：定时向大量（100w以上）的用户发送邮件。


多线程编程面临的挑战及解决思路
问题一：上下文切换
并发不一定快于串行，因为会有切换上下文的开销。【切换上下文：单核并发时，cpu会使用时间片轮转实现并发，每一次轮转，会保留当前执行的状态】。
解]]></description><category></category></item><item><title><![CDATA[java排序汇总]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122897943</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122897943</guid><author>a523900582</author><pubDate>Sat, 12 Feb 2022 16:27:16 +0800</pubDate><description><![CDATA[几种面试问的热门排序算法]]></description><category></category></item><item><title><![CDATA[多线程几篇文章]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122823445</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122823445</guid><author>a523900582</author><pubDate>Tue, 08 Feb 2022 16:57:56 +0800</pubDate><description><![CDATA[线程状态

线程状态转换
各种状态一目了然，值得一提的是"blocked"这个状态：
线程在Running的过程中可能会遇到阻塞(Blocked)情况

调用join()和sleep()方法，sleep()时间结束或被打断，join()中断,IO完成都会回到Runnable状态，等待JVM的调度。
调用wait()，使该线程处于等待池(wait blocked pool),直到notify()/notifyAll()，线程被唤醒被放到锁定池(lock blocked pool )，释放同步锁使线程回到可运行]]></description><category></category></item><item><title><![CDATA[SpringMVC执行流程]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122784806</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122784806</guid><author>a523900582</author><pubDate>Fri, 04 Feb 2022 18:26:22 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[多线程的几个问题]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122755998</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122755998</guid><author>a523900582</author><pubDate>Sun, 30 Jan 2022 21:38:52 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[Mysql索引原理]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122709275</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122709275</guid><author>a523900582</author><pubDate>Wed, 26 Jan 2022 21:50:57 +0800</pubDate><description><![CDATA[索引是怎么提高查询效率的？可以为了提高查询效率增加索引么？
mysql索引系统采用的数据结构是什么？
为什么要使用B+树？
聚集索引相对于非聚集索引的区别？
什么是回表？
什么是索引覆盖？
什么是最左匹配原则？
索引失效场景有哪些，如何避免？


具体内容详见 传送门

...]]></description><category></category></item><item><title><![CDATA[数据库事务一致性的理解]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122682655</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122682655</guid><author>a523900582</author><pubDate>Tue, 25 Jan 2022 12:34:54 +0800</pubDate><description><![CDATA[一致性的定义

百度百科-一致性：


一致性就是数据保持一致，在分布式系统中，可以理解为多个节点中数据的值是一致的。


百度百科-事务一致性:


一个或多个事务执行后，原来一致的数据和数据库仍然是一致的。它主要涉及事务的原子性。


维基百科-一致性(数据库)


一致性是数据库系统的一项要求：任何数据库事务修改数据必须满足定义好的规则，包括数据完整性（约束）、级联回滚、触发器等。

我对一致性的理解
“一致”是指数据库中的数据是正确的，不存在矛盾。事务的一致性是指事务执行前后，数据都是正确的，不存在]]></description><category></category></item><item><title><![CDATA[反射中的Declared总结]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122649875</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122649875</guid><author>a523900582</author><pubDate>Sun, 23 Jan 2022 12:52:10 +0800</pubDate><description><![CDATA[1、declared的方法只获取当前类定义的。
2、非declared只能获取public修饰的。
3、Class、Method、Field如果使用非declared的方法获取都是可以获取父类的public修饰符对应的元素，Constructor只获取当前类。构造方法不能继承。
4、Class使用非declared的方法会获取父类注解，其它只会获取当前元素注解。

...]]></description><category></category></item><item><title><![CDATA[java集合继承关系图]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122634938</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122634938</guid><author>a523900582</author><pubDate>Sat, 22 Jan 2022 11:36:08 +0800</pubDate><description><![CDATA[简述


面向对象语言对事物的体现都是以对象的形式，所以为了方便对多个对象的操作，就对对象进行存储，集合就是存储对象最常用的一种方式。


数组虽然也可以存储对象，但长度是固定的；集合长度是可变的，数组中可以存储基本数据类型，集合只能存储对象。


集合类的特点：集合只用于存储对象，集合长度是可变的，集合可以存储不同类型的对象。





上述类图中，实线边框的是实现类，比如ArrayList，LinkedList，HashMap等，折线边框的是抽象类，比如AbstractCollection，Abstr.]]></description><category></category></item><item><title><![CDATA[深拷贝和浅拷贝]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122618125</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122618125</guid><author>a523900582</author><pubDate>Fri, 21 Jan 2022 11:49:16 +0800</pubDate><description><![CDATA[java的]]></description><category></category></item><item><title><![CDATA[【二叉搜索树】操作汇总]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122604601</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122604601</guid><author>a523900582</author><pubDate>Fri, 21 Jan 2022 11:34:34 +0800</pubDate><description><![CDATA[二叉搜索树]]></description><category></category></item><item><title><![CDATA[【动态规划】背包问题汇总]]></title><link>https://blog.youkuaiyun.com/a523900582/article/details/122580320</link><guid>https://blog.youkuaiyun.com/a523900582/article/details/122580320</guid><author>a523900582</author><pubDate>Wed, 19 Jan 2022 14:56:26 +0800</pubDate><description><![CDATA[背包问题]]></description><category></category></item></channel></rss>