自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 值得点进来的Spring MVC 和 Spring 最详总结

1. 为什么使用Spring ? 1). 方便解耦,简化开发 通过Spring提供的IoC容器,可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。 2). AOP编程的支持 通过Spring提供的AOP功能,方便进行面向切面的编程,如性能监测、事务管理、日志记录等。 3). 声明式事务的支持 4). 方便集成各种优秀框架 5). 降低Java EE API的使用难度 如对JDBC,JavaMail,远程调用等提供了简便封装 最近整理了一份覆盖一线大厂Jav

2020-07-13 14:14:18 283 1

原创 Java架构师丨Redis在项目中的地位及使用场景剖析「巴分巴秒」

一、Redis 特点 所有数据存储在内存中,高速读写 提供丰富多样的数据类型:string、 hash、 set、 sorted set、bitmap、hyperloglog 提供了 AOF 和 RDB 两种数据的持久化保存方式,保证了 Redis 重启后数据不丢失 Redis 的所有操作都是原子性的,还支持对几个操作合并后的原子性操作,支持事务 通常我们都把数据存到关系型数据库中,但为了提升应用的性能,我们应该把访频率高且不会经常变动的数据缓存到内存中。。Redis 没有像 MySQL 这类关系型

2020-07-11 14:38:38 337

原创 一连问了好几个大佬,竟然都不知道Redis为什么默认16个数据库?

在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。但是在搭建配置好Redis服务器后很多朋友应该会发现和有这样的疑问,为什么Redis默认建立了16个数据库,如下图所示。 # 16个数据库的由来 Redis是一个字典结构的存储服务器,一个Redis实例提供了多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。这与在一个关系数据库实例中可以创建多个数据库类似(如下图所示),所以可以将其中的每个字典都理解成一个独立的数据库。 由于篇幅限制,太长看下去会很乏味,也会影响阅读体验

2020-07-10 15:11:35 512

原创 即将爆火的Java突击手册,全面详细对标P7岗,github已标星81.6k

Java是一门纯粹的面向对象的编程语言,所以除了基础语法之外,必须得弄懂它的 oop 特性:封装、继承、多态。此外还有泛型、反射的特性,很多框架的技术都依赖它,比如 Spring 核心的 Ioc 和 AOP,都用到了反射,而且 Java 自身的动态代理也是利用反射实现的。 此外还有 Java 一些标准库也是非常常见,比如集合、I/O、并发,几乎在 Web 开发中无处不在,也是面试经常会被问到的,所以在面试Java后端岗位之前,不妨先打好这些核心的基础。 Github作为程序员们的后花园,一直以来都是程.

2020-07-10 14:52:30 293

原创 Kotlin尾递归优化以及递归问题还没搞懂?

由于细节内容实在太多啦,所以只把部分知识点整理出来粗略的介绍,每个小节点里面都有更细化的内容! 接下来开始分享啦 递归(Recursive)是指自己方法内部调用自己 如求 1- n(n>1)之间的和: public static long sum(long n) { if (n == 1) { return 1; } return n + sum(n - 1); } 这是使用递归的方式求和...

2020-07-09 12:45:03 306

原创 Spring 常犯的十大错误,打死都不要犯

微信搜索BGM7756,免费获取文末面试资料! 1. 错误一:太过关注底层 我们正在解决这个常见错误,是因为 “非我所创” 综合症在软件开发领域很是常见。症状包括经常重写一些常见的代码,很多开发人员都有这种症状。 虽然理解特定库的内部结构及其实现,在很大程度上是好的并且很有必要的(也可以是一个很好的学习过程),但作为软件工程师,不断地处理相同的底层实现细节对个人的开发生涯是有害的。 像 Spring 这种抽象框架的存在是有原因的,它将你从重复地手工劳作中解放出来,并允许你专注于更高层次的细节 ——.

2020-07-08 14:57:59 176

原创 遇到这样的Spring框架问题,我完全hold不住啊

添加微信BGM7756 免费领取面试资料 面试官:Spring Framework有用过吧? 小小白:用过(有些心虚,因为Spring框架中内容太多了)。 面试官:在applicationgContext.xml文件中定义了一个bean,id为authService,通过ApplicationContext实例对象的getBean方法获取到这个bean,这个背后的实现原理是什么? 小小白:(心想得谨慎回答,因为可能会把自己带进坑里)Spring容器启动的时候会解析applicationgContext.

2020-07-07 15:49:59 243

原创 看完这篇保证你掌握Spring事务原理源码剖析

微信搜索BGM7756,免费获取文末资料! 1. 数据库事务特性 1.1 ACID特性 事务(Transaction)是数据库系统中一系列操作的一个逻辑单元,所有操作要么全部成功要么全部失败。 事务是区分文件存储系统与Nosql数据库重要特性之一,其存在的意义是为了保证即使在并发情况下也能正确的执行crud操作。怎样才算是正确的呢?这时提出了事务需要保证的四个特性即ACID: A: 原子性(atomicity) ​一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某

2020-07-06 18:02:52 174

原创 面试最后一问:你有什么问题想问我吗?

微信搜索BGM7756,免费获取全套架构资料! 然而,最后这个90%可见的最后一问可能直接让你功亏一篑。这么厉害的最后一问:”你有什么问题想问我吗?“ 看似平淡无奇的问题,但是却蕴含着多方面的含义。这个问题表面上给了你更多了解公司和展现个人优势的机会,但是潜台词,也是考察你对公司的了解以及对想在这里工作的意愿,对岗位是否有自己的理解。这也是我们常常是说的,你的个人价值观是否与公司价值观一致的考察,价值观的一致是直接决定日后工作主动性以及对工作责任心的直接影响因素。 那么如何回答好这类问题呢?今天分享一个万

2020-07-03 17:23:52 252

原创 必须掌握的JAVA详解之——定时任务

前言 在实际项目开发中,除了Web应用、SOA服务外,还有一类不可缺少的,那就是定时任务调度。定时任务的场景可以说非常广泛,比如某些视频网站,购买会员后,每天会给会员送成长值,每月会给会员送一些电影券;比如在保证最终一致性的场景中,往往利用定时任务调度进行一些比对工作;比如一些定时需要生成的报表、邮件;比如一些需要定时清理数据的任务等。本篇博客将系统的介绍定时任务调度,会涵盖Timer、ScheduledExecutorService、开源工具包Quartz,以及Spring和Quartz的结合等内容。 J

2020-06-20 20:44:57 385

原创 UEditor Java后端配置

文末有惊喜哦~ 背景 UEditor 1.4.0 版本对之前的配置方式进行了简化,具体请参见:后端请求规范,为了适应这次升级,JAVA 后台也进行了重写,跟之前的版本差别较大,升级的用户注意阅读本文档。 本文档介绍 UEditor JAVA 后台的部署和配置说明。 注意:本文档仅适用于1.4.0之后的Java版UEditor。 先决条件 JDK 1.6+ Apache Tomcat 6.0+ UEditor 1.4.0+ 示例环境 1、软件版本信息 JDK 6u45 Tomcat 6.0.41 UEdit

2020-06-16 18:15:14 1046

原创 Java后端技术概览

软件开发的核心原则 此处所说的是软件开发应该遵循的一些核心原则: Don’t Repeat Yourself: 这是软件开发的一个基础原则,即不要做重复性劳动。也是现在所说的“极客文化”的一种。代码重复、工作重复在软件开发中都是不合理的存在。利用各种手段消除这些重复是软件开发的一个核心工作准则。 Keep it simple stupid:即KISS原则。在做软件设计的工作中,很多时候都不要想得过于复杂,也不要过度设计和过早优化,用最简单且行之有效的方案也就避免了复杂方案带来的各种额外成本。既有利于后续的维

2020-06-16 15:32:48 2497

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除