南贺神社

你写程序有写诗一样的感觉吗?

0%

写了好几年代码,今天梳理和沉淀一些搬砖盖楼的方法论,时刻鞭策自己去遵守以及重温它们。

编码军规

  1. 并发控制,默认使用悲观锁,一锁二判三更新,乐观引入须谨慎。
  2. 幂等拦截,幂等新老要兼容,字段约束需一致,异常场景防击穿。
  3. 状态推进,流转设计要完整,状态推进凭指令,业务态不可逆。
  4. 对象设置,成员变量慎赋值,引值引址需眼晰,对象比较用 equals。
  5. 数据库表,SQL必须带字段, where条件有索引,索引不含隐式转。
  6. 时间设置,关注时区和时,避兔设置当地值, string传值带时区。
  7. 异常防御,请求校验防慕改,异常 catch不能吞,线程对象清理好。
  8. 代码质量,CR单测集成测,结果断言边界值,金量回归不能少。
    Read more »

今天是2021.02.24,鄙人从工作了将近2年的连连支付离职了。
其实要不要离开纠结了一段时间,因为在连连能做很多有意思的技术问题,虽然业务很很多,但是你总能在一家成长当中的企业当学到一些成长期必然遇到的技术问题,在阿里,腾讯,美团之类的成熟it企业,动辄就是一个大的概念滚出来的一套架构,整个集团统一技术规范和规约,以及中间件规范,业务团队其实重点还是在业务实现上面。而我呢,又是对技术狂人派的,自然喜欢技术氛围好的团队,但是现实催人往前走,我去了某宝。

Read more »

事物实例

  1. 配置数据库驱动
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    dependencies {
    compile(
    "org.springframework:spring-core:5.2.5.RELEASE",
    "org.springframework:spring-aop:5.2.5.RELEASE",
    "org.springframework:spring-beans:5.2.5.RELEASE",
    "org.springframework:spring-context:5.2.5.RELEASE",
    "org.springframework:spring-context-support:5.2.5.RELEASE",
    "org.springframework:spring-web:5.2.5.RELEASE",
    "org.springframework:spring-orm:5.2.5.RELEASE",
    "org.springframework:spring-aspects:5.2.5.RELEASE",
    "org.springframework:spring-webmvc:5.2.5.RELEASE",
    "org.springframework:spring-jdbc:5.2.5.RELEASE",
    "org.springframework:spring-instrument:5.2.5.RELEASE",
    "org.springframework:spring-tx:5.2.5.RELEASE",
    "mysql:mysql-connector-java:8.0.20",
    "org.apache.tomcat:tomcat-jdbc:9.0.34" 数据库连接池
    )
    }
Read more »

理论部分

Spring AOP目标

  • 将分散在程序各处的横切关注点剥离出来并以集中的方式进行表达
  • 使得开发人员能够专注于业务逻辑的实现而非繁杂的非功能代码,简化了程序编写与单元测试
  • 应用场景

上一章节bean只是从xml加载出来,放到map里边,但是bean的class并没有创建实例。

1
Student student = defaultListableBeanFactory.getBean("student", Student.class);

当执行上述代码的时候才会实例化一个bean。

Read more »