随笔分类 -  知识总结

摘要:我刻意的制造了一段会溢出的代码。 首先你可能需要改一下mat的配置文件。 通过下图的leak suspects分析是可以看出gc root的。比较代码和图中的b a。 还有其他的方式可以分析,点击dominator tree可以获取到持有大对象的线程,然后在其上也可以执行gcroot的分析,如下图。 阅读全文
posted @ 2020-01-06 19:06 coolgame 阅读(5895) 评论(0) 推荐(0)
摘要:下面讲一下具体的配置方法: 首先按照spi规范,在如下位置创建文件,名称为:org.apache.shardingsphere.spi.keygen.ShardingKeyGenerator 文件里的内容:com.hy.sharding.spi.MySnowflakeShardingKeyGener 阅读全文
posted @ 2019-12-27 14:18 coolgame 阅读(5726) 评论(0) 推荐(0)
摘要:1,问题: 在高并发系统中,存在热点账户现象,即一个账户有大量的入账和扣账请求,在这样的背景下,频繁的更新账户的余额会对数据库造成较大的压力。 2,解决思路: update改为insert。创建待入账流水表和待扣账流水表。批量更新账户余额。 4,引出的新问题: 入账好说,扣账需要注意一点,就是在余额 阅读全文
posted @ 2019-03-10 12:36 coolgame 阅读(1562) 评论(0) 推荐(0)
摘要:localhost:~ yp-tc-m-2777$ jstack 841762019-02-25 19:11:35Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.75-b04 mixed mode):"Attach Listener" d 阅读全文
posted @ 2019-02-25 19:14 coolgame 阅读(213) 评论(0) 推荐(0)
摘要:企业开发的时候,有可能碰到的问题: oom 内存泄露 线程死锁 锁争用 java进程消耗cpu过高 oom 内存泄露 线程死锁 锁争用 java进程消耗cpu过高 拿死循环举例,先查看是哪个java进程占用cpu高,然后可以使用java VisualVm工具链接到对应的java进程,然后去抽样器中查 阅读全文
posted @ 2019-02-25 17:01 coolgame 阅读(301) 评论(0) 推荐(0)
摘要:java.lang.OutOfMemoryError: Java heap space 当应用程序申请更多的内存,而Java堆内存已经无法满足应用程序对内存的需要,就会抛出此种异常。 java.lang.OutOfMemoryError: PermGen space及其解决方法 表示Java永久带( 阅读全文
posted @ 2019-02-25 15:26 coolgame 阅读(3260) 评论(0) 推荐(0)
摘要:基于注解的模式: @Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class,timeout=1,isolation=Isolation.DEFAULT) 其中propagation=Propagation. 阅读全文
posted @ 2018-12-29 11:36 coolgame 阅读(936) 评论(0) 推荐(0)
摘要:String s1 = "啊宝|2028060710357682|佳加"; System.out.println(s1.replaceAll("[\\u2E80-\\u9FFF|]",""));可以把汉字和竖线都替换掉replace正则表达式要生效,需要在中括号中写正则 阅读全文
posted @ 2018-11-23 10:56 coolgame 阅读(122) 评论(0) 推荐(0)
摘要:JSP上的编码意味着所有的汉字按照UTF-8来解码展示,同时也意味着,在这个页面的文本框里填写的汉字都将按照UTF-8来编码。 如果是表单提交,那么向后台传输的汉字将是UTF-8编码。 如果使用AJAX提交,那么向后台传输的也是UTF-8编码。 但是!如果不做任何设置,后台将按照它默认的编码去解析。 阅读全文
posted @ 2018-09-03 11:09 coolgame 阅读(179) 评论(0) 推荐(0)
摘要:org.springframework.dao.DeadlockLoserDataAccessException: ### Error updating database. Cause: com.ibm.db2.jcc.am.SqlTransactionRollbackException: DB2 阅读全文
posted @ 2018-08-23 13:53 coolgame 阅读(1380) 评论(0) 推荐(0)
摘要:别名,方便你用和改。别名可以用在parameterType,resultType里 查询时可以直接写resultType=别名。这样mybatis会根据字段名称给你封装,但是,如果数据库里的字段名和实体里的名字不一致。要么在sql查询的时候写别名,要么使用resultMap你自己制定映射关系。 #与 阅读全文
posted @ 2018-06-01 16:49 coolgame 阅读(470) 评论(0) 推荐(0)
摘要:文件大小19M,10万行左右的数据。堆内存设置如下: 一,NIO,无内存溢出,耗时220毫秒左右。缺点是实现起来太复杂,要考虑汉字等。 二,BIO使用BUFFER,180毫秒左右竟然是最高效,代码最简洁的方式。 三,Scanner,惨不忍睹。 四,CommonIO,与NIO类似。 阅读全文
posted @ 2018-05-18 10:54 coolgame 阅读(1454) 评论(0) 推荐(0)
摘要:<c:if test="${enterprise.type ne '5' && enterprise.type ne '7'}">ne 代表不等于和 != 等价,eq代表等于和 == 等价,&&是且的意思,||是或的意思。 大于号和小于号也是可以用的检查长度<c:if test="${fn:leng 阅读全文
posted @ 2018-05-10 10:10 coolgame 阅读(167) 评论(0) 推荐(0)
摘要:上面是IO家族的全家福,这里先讲一下InputStream和OutputStream。 字节流InputStream和OutputStream 一个我们日常开发常见的场景,复制文件,应该如何实现?一般的,我们会使用InputStream的read方法从源文件读取数据,然后用OutputStream的 阅读全文
posted @ 2018-05-09 19:22 coolgame 阅读(179) 评论(0) 推荐(0)
摘要:Java 虚拟机在垃圾回收的时候最多只调用一次 finalize 方法; 弱引用马上就会被回收掉。 阅读全文
posted @ 2018-04-11 19:00 coolgame 阅读(144) 评论(0) 推荐(0)
摘要:第一种情况: 结果:丢失了try中的异常 第二种情况: 结果:丢失了try中的异常; 第三种情况: 结果:丢失了内层和外层try中的异常; 第四种情况: 结果:jdk5以上优化,打印了一定次数的异常信息后,堆栈信息会被省略。也就是说这个程序最后会break; 阅读全文
posted @ 2018-04-11 18:43 coolgame 阅读(622) 评论(0) 推荐(0)
摘要:答案: 返回2,可能jvm认为一个方法里面有两个return语句并没有太大的意义,所以try中的return语句给忽略了,直接起作用的是finally中的return语句。 答案: 返回try,通过分析字节码,在try语句的return块中return返回的引用变量t并不是try语句外定义的引用变量 阅读全文
posted @ 2018-04-11 15:00 coolgame 阅读(134) 评论(0) 推荐(0)
摘要:一,Condition 一个场景,两个线程数数,同时启动两个线程,线程A数1、2、3,然后线程B数4、5、6,最后线程A数7、8、9,程序结束,这涉及到线程之间的通信。 创建方式:通过Lock创建,Lock.newCondition(); 常用方法: 总结:Condition必须与Lock一起使用( 阅读全文
posted @ 2018-04-08 19:00 coolgame 阅读(6924) 评论(0) 推荐(0)
摘要:Web文件的ContentType类型大全-来自网络ContentType属性指定服务器响应的HTTP内容类型。如果未指定ContentType,默认为text/html。在ASP中使用它: <% Response.ContentType = "text/HTML" %> <% Response.C 阅读全文
posted @ 2014-05-19 14:47 coolgame 阅读(965) 评论(0) 推荐(0)