<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[clapAlong的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/clapAlong</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; clapAlong]]></copyright><item><title><![CDATA[ORACLE查看连接数与会话数]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/137008091</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/137008091</guid><author>clapAlong</author><pubDate>Mon, 25 Mar 2024 10:59:53 +0800</pubDate><description><![CDATA[-数据库允许的最大连接数。--当前的session连接数。--当前的数据库连接数。]]></description><category></category></item><item><title><![CDATA[ORA-00054,ORA-00031解决方案]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/136873268</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/136873268</guid><author>clapAlong</author><pubDate>Wed, 20 Mar 2024 13:20:47 +0800</pubDate><description><![CDATA[【代码】ORA-00054,ORA-00031解决方案。]]></description><category></category></item><item><title><![CDATA[利用@RequestBody和@ResponseBody处理参数校验]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/129709680</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/129709680</guid><author>clapAlong</author><pubDate>Thu, 23 Mar 2023 13:52:22 +0800</pubDate><description><![CDATA[这两兄弟在处理请求的过程中，RequestMappingHandlerMapping帮忙做了url与方法的具体映射，RequestMappingHandlerAdaptor帮忙做了查找具体的处理程序和查找具体的将返回值处理为一个ModelAndView实例的程序。还是在上篇文章中关注的这一行，现在需要关注的是变量ha，发现他的类型是RequestMappingHandlerAdapter。resolveArgument方法是处理参数的方法，如图所示，这是一个反序列化的方法，将流转换为对象。]]></description><category></category></item><item><title><![CDATA[@RequestMapping是怎么处理映射的？]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/129704510</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/129704510</guid><author>clapAlong</author><pubDate>Wed, 22 Mar 2023 14:46:27 +0800</pubDate><description><![CDATA[RequestMapping通过pathLookup维护了一个MultiValueMap类型的变量pathLookup，pathLookup是通过RequestMappingHandlerMapping初始化的，而这个初始化的过程发生在Spring容器初始化bean的过程中。]]></description><category></category></item><item><title><![CDATA[类的覆盖的实现方式]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/125194279</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/125194279</guid><author>clapAlong</author><pubDate>Wed, 08 Jun 2022 23:25:02 +0800</pubDate><description><![CDATA[这是两个月前在工作中遇到的问题，重构的项目引入了swagger，但是有些地方swagger的实现并不完善，譬如，在没有指定bean的字段的数据类型时，swagger默认当做String处理，而实际上可能是Integer或者Long，这时就会抛出NumberFormatException，虽然并不影响使用，但是看到这样的日志也会很不爽。于是新建了同名目录，将报错的类修改了一行代码。

但是，为什么这样可以覆盖jar包中的类呢？
最开始是刚工作的时候，见到有的老人这样搞，来实现一些骚操作，个人一直是知其然不知所]]></description><category></category></item><item><title><![CDATA[mysql优化器使用方式]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/123268546</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/123268546</guid><author>clapAlong</author><pubDate>Fri, 04 Mar 2022 08:59:20 +0800</pubDate><description><![CDATA[SET optimizer_trace=“enabled=on”;
需要分析的sql
SELECT * FROM information_schema.OPTIMIZER_TRACE;
SET optimizer_trace=“enabled=off”;

]]></description><category></category></item><item><title><![CDATA[@JsonProperty和@JsonAlias]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/123146693</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/123146693</guid><author>clapAlong</author><pubDate>Sat, 26 Feb 2022 11:01:55 +0800</pubDate><description><![CDATA[@JsonProperty
序列化和反序列化时，该java属性所对应的名称
@JsonAlias
只在反序列化时，指定该java属性可以接受多个名称
测试代码：
controller：
bean：

@JsonProperty与@JsonAlias一起用



只有最后一个赋值有效

只用@JsonAlias



同上，最后一次有效赋值会保留。

...]]></description><category></category></item><item><title><![CDATA[记录一次分布式锁引发线程饥饿导致死锁问题]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/122822581</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/122822581</guid><author>clapAlong</author><pubDate>Tue, 08 Feb 2022 14:19:08 +0800</pubDate><description><![CDATA[这是2021年十月中旬时出现的问题，一次压力测试中，平均一个接口同时被3000个线程请求，最终导致很多线程等待超时，影响压测结果。
压测环境部署了两台服务，共用一台redis。
分布式锁的实现方式是：
在获取锁时，使用lua脚本在redis中创建一个String类型的key，key的value是时间戳。
在释放锁时，使用lua脚本删除这个key。
并发情况时，线程用setnx查看是否存在，已经存在key时，读取value，对比当前的时间戳是否超过了10秒，超过10秒则删除上一个key并且执行获取锁的脚本，否]]></description><category></category></item><item><title><![CDATA[使用java做mysql数据迁移时遇到的两个问题]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/120531382</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/120531382</guid><author>clapAlong</author><pubDate>Tue, 08 Feb 2022 10:40:01 +0800</pubDate><description><![CDATA[有个数据迁移的需求，需要将A数据库的数据迁移至数据库B。
我以为直接生成mysqldump脚本再跑一下就行了，但是发现并不行。
问题出在

]]></description><category></category></item><item><title><![CDATA[使用java-websocket框架开发websocket客户端时遇到的两个问题]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/121178314</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/121178314</guid><author>clapAlong</author><pubDate>Sat, 06 Nov 2021 15:27:08 +0800</pubDate><description><![CDATA[WebSocketClient objects are not reuseable
You cannot initialize a reconnect out of the websocket thread. Use reconnect in another thread to insure a successful cleanup.

今天主要解决如上这两个问题。
使用的java-websocket版本是1.5.1
参考的文章：
关于WebSocket的 WebSocketClient objects .]]></description><category></category></item><item><title><![CDATA[理解http幂等性]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/120306630</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/120306630</guid><author>clapAlong</author><pubDate>Wed, 15 Sep 2021 13:20:28 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/weidagang2046/archive/2011/06/04/2063696.html

]]></description><category></category></item><item><title><![CDATA[java.sql.Timestamp.toLocalDateTime()会丢失精度]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/120076578</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/120076578</guid><author>clapAlong</author><pubDate>Fri, 03 Sep 2021 10:55:41 +0800</pubDate><description><![CDATA[当使用代码类似于

ResultSet.getTimestamp("start_time").toLocalDateTime();

在start_time为0秒时，返回的时间会丢失精度
正常情况下：2021-09-03 10:10:08，时间可以正常转换，转换结果是2021-09-03 10:10:08
极端情况下：2021-09-03 00:00:00，时间转换会丢失秒，纳秒，毫秒，实际结果是2021-09-03 00:00
上代码
public LocalDateTime toLocalDateTim]]></description><category></category></item><item><title><![CDATA[mysql的SSL配置选择]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/119742669</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/119742669</guid><author>clapAlong</author><pubDate>Mon, 16 Aug 2021 21:31:59 +0800</pubDate><description><![CDATA[The defaults for initiating a connection to a MySQL server were changed in the recent past, and (from a quick look through the most popular questions and answers on stack overflow) the new values are causing a lot of confusion. What is worse is that the st]]></description><category></category></item><item><title><![CDATA[postgresql实现多表关联删除性能分析]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/119547524</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/119547524</guid><author>clapAlong</author><pubDate>Mon, 09 Aug 2021 21:40:57 +0800</pubDate><description><![CDATA[转载自：
https://mp.weixin.qq.com/s?src=11&amp;timestamp=1628513358&amp;ver=3242&amp;signature=s26j91cKXj5oZohocJhY7DRGiRgSnzIvowxS9OymsLiHXjUfK7JZihyGpLlHVUYmdQk9pJfAwx4WZ0ThI8zewPLF8ItKTCO7V4wbLSNhgEzlDjqssW2JooLFLkHxKR&amp;new=1
导读：最近在进行sql编写时，发现delete +usi]]></description><category></category></item><item><title><![CDATA[MySQL replace语句]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/119536791</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/119536791</guid><author>clapAlong</author><pubDate>Mon, 09 Aug 2021 14:16:31 +0800</pubDate><description><![CDATA[**
转载自：https://www.cnblogs.com/sunss/p/4493803.html
**
语法：
REPLACE [LOW_PRIORITY | DELAYED]
    [INTO] tbl_name
    [PARTITION (partition_name,...)]
    [(col_name,...)]
    {VALUES | VALUE} ({expr | DEFAULT},...),(...),...
Or:
REPLACE [LOW_PRIORITY | DELA]]></description><category></category></item><item><title><![CDATA[Jackson之LocalDateTime转换，无需改实体类]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/119345754</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/119345754</guid><author>clapAlong</author><pubDate>Tue, 03 Aug 2021 11:10:19 +0800</pubDate><description><![CDATA[转载自：yzeng
【问题】
Demo：
 LocalDateTime dt = LocalDateTime.now();
 ObjectMapper mapper = new ObjectMapper();
  try {
      String json = mapper.writeValueAsString(dt);
      System.out.println(json);
  } catch (JsonProcessingException e) {
      e.printStackTr]]></description><category></category></item><item><title><![CDATA[解决方法：linux中无法使用root用户ssh远程登录]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/119036898</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/119036898</guid><author>clapAlong</author><pubDate>Fri, 23 Jul 2021 15:32:38 +0800</pubDate><description><![CDATA[一，修改root用户密码
sudo su -   #切换到root用户
 
sudo passwd -u root
sudo passwd root  #设置密码

二，编辑 /etc/ssh/sshd_config文件
cd /etc/ssh/
ls
vi sshd_config

找到PermitRootLogin，注释掉这一行
添加PermitRootLogin yes，保存，退出。
三，执行 sudo service sshd restart
四，查看 ps -au|grep sshd 。中，有ro]]></description><category></category></item><item><title><![CDATA[postgresql中的char]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/118890000</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/118890000</guid><author>clapAlong</author><pubDate>Tue, 20 Jul 2021 13:27:05 +0800</pubDate><description><![CDATA[postgresql中：
char ：定长，不足补空白
varchar：变长，有长度限制
text：变长，无限制

]]></description><category></category></item><item><title><![CDATA[postgresql显示表字段及类型]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/118854533</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/118854533</guid><author>clapAlong</author><pubDate>Sat, 17 Jul 2021 11:43:59 +0800</pubDate><description><![CDATA[SELECT a.attnum, a.attname AS field, t.typname AS type, a.attlen AS length, a.atttypmod AS lengthvar
, a.attnotnull AS notnull, b.description AS comment
FROM pg_class c, pg_attribute a
LEFT JOIN pg_description b
ON a.attrelid = b.objoid
AND a.attnum = b.ob]]></description><category></category></item><item><title><![CDATA[Spring MVC中Context initialization failed解决方案]]></title><link>https://blog.youkuaiyun.com/clapAlong/article/details/118854336</link><guid>https://blog.youkuaiyun.com/clapAlong/article/details/118854336</guid><author>clapAlong</author><pubDate>Sat, 17 Jul 2021 11:38:19 +0800</pubDate><description><![CDATA[项目中还在使用SpringMVC框架进行开发，接到一个需求要把mysql数据库改为使用postgresql。
修改Tomcat中的server.xml中的数据库连接池后，发现并不能正常启动，抛出
Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘XXXXService’: Injection of autowired dep]]></description><category></category></item></channel></rss>