Grid 布局学习笔记

最近学习了 Grid 网格布局,首先感谢阮一峰老师的博客 『CSS Grid 网格布局教程』,并基于此博客做了学习笔记。

阅读全文

Nginx两行代码获取公网IP

Nginx 两行代码获取公网地址 转载翻译自

仅通过 Nginx 不写任何后端代码,即可显示(访问者的)公网地址。(不需要任何 php 或者 Nginx-Lua 等后端代码)

阅读全文

MySQL Error 1093 - You can't specify target table

执行如下sql要删除一些错误数据

1
2
3
4
5
delete from user_tag where tagId in (
select ut.tagId from user_tag ut
left join tag t on ut.tagId = t.tagId
where t.tagId is null
)

阅读全文

记一个jackson反序列化时的错误:com.fasterxml.jackson.databind.exc.InvalidDefinitionException

今天遇到一个同事的求助,他在写一个RestAPI的接口,测试时遇到错误如下:

1
2
3
4
5
6
7
8
9
root cause com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot onstruct instance of `com.zeusas.cloud.activiti.bean.ProcessDrawBean` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator) at [Source: (PushbackInputStream); line: 1, column: 2]
at com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:67) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.DeserializationContext.reportBadDefinition(DeserializationContext.java:1452) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.DeserializationContext.handleMissingInstantiator(DeserializationContext.java:1028) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1297) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:326) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:159) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4013) ~[jackson-databind-2.9.8.jar:2.9.8]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3084) ~[jackson-databind-2.9.8.jar:2.9.8]

阅读全文

转给女儿

有一天,我看了一部電影《美麗人生》,突然有了靈感。這個電影講的是納粹時期的故事,全家被抓入集中營後,父親為了不讓孩子留下心理陰影,就對兒子說,集中營裡發生的一切都只是一個遊戲,只要不違反遊戲規則,就能獲得一部坦克。

阅读全文

Spring Data JPA 多表查询的一个小错

在准备一个 JPA 的内容培训,在写多表联查时遇到一个小问题,记录一下。

现在有 3 张表,分别是学生表 Student, 科目表 Subject 和成绩表 Transcript, 成绩 Transcript 通过 subjectId 和 studentId 关联 Student 和 Subject 。代码如下:

1
2
3
4
@Query(value = " select new TranscriptVO(t,st,s) from TranscriptBean t " //
+ " left join SubjectBean s on t.subjectId = s.id " //
+ " left join StudentBean st on t.studentId = st.id") //
List<TranscriptVO> findAllTranscriptVO();

阅读全文

一条漏屁股的裤子让我穿了一周

最近肩颈不舒服,所以在工位上坐着的时间比较少。昨天上午我正在电脑前弯腰抬头时,身后的诗姐小声的告诉我,我裤子破了,她几天前就注意到了,但一直不好意思,希望我自己能发现。谁知我一直坚持到今天,她深思后还是觉得告诉我比较好。

我把手挪到自己屁股那儿一摸,好嘛,左边一条小缝儿,右边一条大缝儿,这老脸稍稍一红,嘴上尴尬的说『我这是勤俭节约』,赶紧的坐到了椅子上。之后活动时都只好把外套绑在腰间遮住屁股,实实在在的遮丑。

阅读全文

List.contains失效

前两天在处理两个系统数据同步时发现一个问题比较诡异,特此记录。

问题表象为: List 和 Set 的 contains 方法失效,返回值永远都是 false 。

接下来啰嗦一下前因后果,这个功能是将生产环境的交易数据从 SQL Server 同步到 MySQL ,完全使用自己公司的工具,相当于通过 SQL 读数据后写入到 MySQL 。

阅读全文

做一个不轻易着急的人

公司有两个比较强势的同事,但两个人的强势各不相同,同事A的职位虽高,能感受到他的强势,但不经常让人感到不舒服;同事B的与我同等职位,但经常因他的强势感到无奈和可笑。

之前没有注意到其中的差异,直到今天观察到他们俩的冲突和冲突的消散,事情的经过大致如下;
A听到B在跟其他同事传递需求时描述有误,A直接对其说了大意如下的话「我安排给你的任务是怎样怎样的,你听其他人瞎说我不管,但最后验收时不符合我的要求,我可不接受」。
B听到后就不高兴了,几乎是炸毛了,敞着嗓子大声的发表了不满,很明显已经着急了。

阅读全文

通过游标读取数据时遇到的两个问题

公司最近在做数据中台,我负责数据同步这块的处理。

公司现在多个系统,一部分从外部厂商采购,如上海秉坤的 POS 系统;一部分是 IT 部门成立后公司自研开发的;数据分散在多个不同的数据库,有 MSSQL Server2012 ,也有 MySQL5.6 ,还有部分数据在 Orcle 上。
IT 宝哥提供了内部数据同步框架,为了减少内存的压力,数据同步时使用游标一行一行地读取源数据,在整个过程中中共遇到了两个问题,记录一下。

阅读全文