Fork me on GitHub
陈年风楼 | 博客

当你看到了一座山,一定会想再看看山的后面是什么!


  • 短诗的序

  • 迷途自渡

  • 寒星三两

  • 林深见鹿

  • 记昨日书

  • 老树古屋

  • 顾探往昔

二叉搜索树与完全二叉树

发表于 2019-05-04 | 分类: 数据结构与算法 , 二叉树
字数统计: 1,309 字 | 阅读时长 ≈ 6 min

什么是二叉树?

在数据结构中,对于树,每一个分支,称之为一个度。那么,度最大为2的树我们称之为二叉树。通常子树我们会称之为左子树和右子树。二叉树通常用于实现二叉查找树和二叉堆。那么在Java中如何定义一个二叉树节点?

首先,每一个节点需要有一个值域。其次,其还应该持有两个树节点的引用,即指向自己的左子树和自己的右子树。

阅读全文 »

如何在Springboot服务启动之后执行一些代码(三种方式)

发表于 2019-04-19 | 分类: springboot
字数统计: 1,296 字 | 阅读时长 ≈ 6 min

前言

通常的我们的项目开发中,经常会遇到那种在服务一启动就需要自动执行一些业务代码的情况。比如将数据库中的配置信息或者数据字典之类的缓存到redis,或者在服务启动的时候将一些配置化的定时任务开起来。关于spring mvc或者springboot如何在项目启动的时候就执行一些代码,方法其实有很多,我这边介绍一下我使用过的三种。

阅读全文 »

Java内存分配与垃圾回收的复习整理

发表于 2019-04-14 | 分类: Java基础
字数统计: 2,412 字 | 阅读时长 ≈ 8 min

摘要

摘要

众所周知Java作为一个“一次编译,到处运行”的编译型语言,JVM虚拟机当之无愧的是Java语言世界的先锋将军。作为一个Java程序员,JVM虚拟机其相关知识是我们必须要了解以及深入掌握的重点。在本篇博客我将总结一下JVM虚拟机的内存结构、对象内存分配以及垃圾回收算法。这也是经常找工作求职必问的点。

阅读全文 »

Dubbo服务降级

发表于 2019-04-12 | 分类: dubbo
字数统计: 1,113 字 | 阅读时长 ≈ 5 min

前言

    在分布式服务或者一些微服务当中,经常性的出现各个服务之间相互调用,业务处理流程耦合起来的情况。比如当用户在平台下单时,我们需要给用户生成订单之后发站内信或者短信通知用户订单生成成功。那么很多时候代码的编写就会是:
    调用订单模块生成订单->调用短信模块通知用户->调用其他模块处理更多业务逻辑
    可是当我们无足轻重的一个短信通知模块挂掉或者报错的时候,我们当然不希望整个业务逻辑就这样停止。那么这个时候,就需要引入服务降级的机制,为整个业务逻辑进行解耦合。

    使用服务降级可以防止我们服务中间不影响整体流程的模块出错导致整个业务处理雪崩。将核心业务保证完整性,非核心业务弱化。

阅读全文 »

事务传播机制和事务隔离级别

发表于 2019-03-23 | 分类: Java基础
字数统计: 772 字 | 阅读时长 ≈ 3 min

事务的四个特性(ACID)

  • 原子性
    事务执行开始之后的一系列操作都堪称是一个原子操作,要么全部做完,要么全部失败,不能出现部分操作成功的情况。“原子”顾名思义,就是一个不可分割的最小单元。

  • 一致性
    事务开始执行之后,数据的正确性需要得到保证。如A向B转账,B却未收到钱。

  • 隔离性
    同一时间只能由一个事务对数据进行修改操作,对于其他事务来说这个修改操作时透明的。

  • 持久性
    事务对数据进行修改操作完成之后,数据发生的改变是持久不变的,不会自己恢复到改变之前的状态。

阅读全文 »

使用Springboot进行国际化时自定义读取数据库配置

发表于 2019-03-20 | 分类: springboot
字数统计: 1,024 字 | 阅读时长 ≈ 4 min

前言

springboot默认就支持国际化的,而且不需要你过多的做什么配置,只需要在resources/下创建国际化配置文件即可,注意名称必须以messages开始。 messages.properties (默认的语言配置文件,当找不到其他语言的配置的时候,使用该文件进行展示)。 具体的关于springboot的国际化配置我这边就不再过多介绍(包括Locale的设置以及如何根据区域设置语言等),关于页面上得使用可以参考:springboot国际化。在这篇博客中,我要介绍的是一个很有用的功能并且绝大部分人也会用得到,就是
不使用配置文件messages.properties储存国际化语言,而使用数据库进行动态配置,做到无需重启更改配置。

阅读全文 »

Layui结合freemarker+springboot进行前端数据表格字典转义

发表于 2019-03-16 | 分类: springboot
字数统计: 1,473 字 | 阅读时长 ≈ 6 min

前言

在layui的开发中,我们经常会用到表格数据展示。但是在数据库中我们通常保存的一些状态等数据,都是枚举值,而我们在前端展示的时候就不能使用这些枚举值了,而要展示枚举值对应的意义数据。比如状态status,1=启用,0=停用。
那么在layui的数据表格中,我们要展示这样的数据,写法可以是:

1
2
3
4
5
6
7
templet: function (d) {
if(d.status === 1){
return "启用";
} else if(d.status === 0){
return "停用";
}
}

但是这样的写法很low啊,我们在数据库中定义多少枚举值在这里就要写多少代码,一旦有重复使用的情况,这种写法会让我们痛不欲生。
在考虑到后台使用freemarker的情况下,配置freemarker自定义标签就能很好地解决这个问题。
最后我们的写法就会简化成:<@th type="template" nid="basics_sys_status" objName="status"></@th>,接下来看看如何在springboot中配置使用吧。

阅读全文 »

Springboot+shiro解决session污染的问题

发表于 2019-03-09 | 分类: springboot
字数统计: 328 字 | 阅读时长 ≈ 1 min

同一个服务器启动多个web项目造成session污染

昨天在敲代码的时候遇到了一个问题,同一个项目,我创建了两个分支,分别使用不同的端口。
但是在测试环境启动的时候我发现,在同一个浏览器上,我只能登陆其中的一个后台。在登陆另一个后台之后,前面那个
又需要再重新登陆了。

原因找了好久,最后F12控制台查看session发现,这两个web项目,使用的都是JSessionId作为cookie的key,在登陆另一个时,浏览器的这个cookie值就会被改变,所以前者就需要在重新登陆了。

阅读全文 »
1…5678
陈年风楼

陈年风楼

真正的大师永远都怀着一颗学徒的心!

62 日志
23 分类
78 标签
RSS
GitHub CSDN E-Mail Instagram
他山之石
  • Da Tui's blog[大蜕の个人博客]
  • Hanger's blog[一个努力的前端小哥]
  • Xuanwo's blog[一个牛逼的后端大佬]
  • Crossover jie's blog[一个经常出现在视线里的博主]
  • HollisChuang's blog[一个Java大佬]
0%
© 2023 陈年风楼 | 站点字数统计: 64.7k
博客使用 Hexo 搭建
|
主题 — NexT.Mist v5.1.4
人访问 次查看