lombok中的builder注解居然是一种设计模式:让我们了解一下超级实用的“建造者模式”吧

2021-12-10
阅读 9 分钟
916
 lombok中的builder注解本质上是为你生成了一个构造器Builder类,通过这个类我们可以构造出带此注解的对象。本质上它实现了设计模式中一种经典的模式:建造者模式

程序员光学技术还不够?推荐一份运营书单给你品一品

2021-03-27
阅读 6 分钟
904
读书从来不是一件非常简单的事情,无论你是想学运营还是学什么其他别的东西,如何真正有效地阅读一本书,如何坚持通过读书的方式来获取知识都是至关重要的,而这两个问题的答案,你也许能从以下两本书里得到。

你不会真的以为自己懂得计算机网络吧?

2020-02-25
阅读 4 分钟
2.2k
原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者。 思维导图 简介 上一期我讲到了数据结构怎么学,当时我的学习方法是先看视频,再看书,然后刷一刷基础算法题做巩固。 作为一个非科班考研党,当时觉得这个学习路线还是比较平滑的,毕竟能让我一个小白快速学会,这门课相对来说还是比较简单的。 于是,等...

为什么你精通CRUD,却搞不懂数据库的基本原理?

2020-02-25
阅读 6 分钟
1.3k
作为一个程序员,不了解数据库怎么能行,那么数据库到底是个啥呢,作为一个Java工程师,平时和数据库打交道着实不少,所谓的CRUD其实就是对数据库进行增删改查的操作。

年轻人要明白,职场里不只有晋升

2019-09-06
阅读 2 分钟
1k
作为一个程序员来说,比如在阿里,技术人员都算p序列来评级的,p5p6p7p8直到p11,这么多级别,每升一级都困难重重,越到高的级别越难上升,有些阿里的员工一辈子都卡在了某个级别上,而有些人却可以快速晋升,平布青云。

为什么我建议年轻人多出去走走?

2019-09-06
阅读 2 分钟
1.6k
但是生活有时候往往只有苟且,而诗和远方离你却特别遥远,人们在日复一日的工作中得到了一些东西,也失去了一些东西,很多人天天埋头苦干,去寻找他们所谓的稳定工作,寻找他们所谓的中产生活,获得世人眼里认同的成功,买房买车,结婚生子,然后无休止地还房贷,重复自己每天的工作,直到他们退休。

聊聊所谓的弹性工作制

2019-09-06
阅读 1 分钟
1.5k
阅读本文大概需要 4 分钟。 作者:黄小斜 不知道大家知不知道弹性工作制这种说法。 这个说法据说最早也是出现在互联网公司里的,所谓的弹性工作制是什么意思呢?简单来说,就是指,员工的工作时间可以随着工作的情况来进行适当的调整。 工作轻松的时候,每天工作时间缩短几小时,工作比较忙的时候,工作时间就延长几小时...

从零开始搭建Java开发环境第四篇:精选IDEA中十大提高开发效率的插件!

2019-09-01
阅读 2 分钟
1.3k
当你进行对象之间赋值的时候,你会发现好麻烦呀,能不能有一个更好的办法呢~ 有,只要你选中需要生成set方法的对象,按下快捷键 alt+enter 界面如下:

从零开始搭建Java开发环境第三篇:最新版IDEA常用配置指南,打造你的最酷IDE

2019-09-01
阅读 2 分钟
1.1k
比如:设置文件字体大小,代码自动完成提示,版本管理,本地代码历史,自动导入包,修改注释,修改tab的显示的数量和行数,打开项目方式,等等一大堆东西。

从零开始搭建Java开发环境第二篇:如何在windows10里安装MySQL

2019-09-01
阅读 3 分钟
997
[外链图片转存失败(img-oesO8K09-1566652568838)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw== "点击并拖拽以移动")]

从零开始搭建Java开发环境第一篇:Java工程师必备软件大合集

2019-09-01
阅读 2 分钟
1k
[链接]​​​​安装完数据库之后,如果你不想一直手打命令行,那么还是要安装一下Navicat for MySQL的,这是一个很不错的数据库可视化工具。

从技术小白到收获BAT研发offer,分享我的学习经验和感悟(赠送相关学习资料)

2019-08-31
阅读 8 分钟
4k
去年秋季参加了校园招聘,有幸拿到了BAT、头条、网易、滴滴、亚马逊、华为等offer,经过研究生两年的学习积累,终于达成了自己的目标,期间也经历了很多,谨以此文,聊表感叹,也会分享很多我的Java学习心得和求职经验。

SpringMVC源码分析6:SpringMVC的视图解析原理

2019-08-25
阅读 10 分钟
1.1k
转自 [SpringMVC视图机制详解[附带源码分析]]([链接] 本系列文章首发于我的个人博客:[链接] 欢迎阅览我的CSDN专栏:Spring源码解析 [链接] 部分代码会放在我的的Github:[链接]<!-- more --> 目录 前言 重要接口和类介绍 源码分析 编码自定义的ViewResolver 总结 参考资料 前言 SpringMVC是目前主流的Web MVC框架...

SpringMVC源码剖析5:消息转换器HttpMessageConverter与@ResponseBody注解

2019-08-25
阅读 15 分钟
3k
转自 [SpringMVC关于json、xml自动转换的原理研究[附带源码分析]]([链接] 本系列文章首发于我的个人博客:[链接] 欢迎阅览我的CSDN专栏:Spring源码解析 [链接] 部分代码会放在我的的Github:[链接]<!-- more --> 目录 前言 现象 源码分析 实例讲解 关于配置 总结 参考资料 前言 SpringMVC是目前主流的Web MVC框架...

SpringMVC源码分析4:DispatcherServlet如何找到正确的Controller

2019-08-25
阅读 8 分钟
1.2k
我们使用浏览器通过地址 [链接]:port/contextPath/path进行访问,SpringMVC是如何得知用户到底是访问哪个Controller中的方法,这期间到底发生了什么。

SpringMVC源码分析3:DispatcherServlet的初始化与请求转发

2019-08-25
阅读 13 分钟
1.2k
在我们第一次学Servlet编程,学java web的时候,还没有那么多框架。我们开发一个简单的功能要做的事情很简单,就是继承HttpServlet,根据需要重写一下doGet,doPost方法,跳转到我们定义好的jsp页面。Servlet类编写完之后在web.xml里注册这个Servlet类。

SpringMVC源码分析2:SpringMVC设计理念与DispatcherServlet

2019-08-25
阅读 10 分钟
1.1k
SpringMVC作为Struts2之后异军突起的一个表现层框架,正越来越流行,相信javaee的开发者们就算没使用过SpringMVC,也应该对其略有耳闻。我试图通过对SpringMVC的设计思想和源码实现的剖析,从抽象意义上的设计层面和实现意义上的代码层面两个方面,逐一揭开SpringMVC神秘的面纱,本文的代码,都是基于Spring的 3.1.3RELE...

SpringMVC源码分析1:SpringMVC概述

2019-08-25
阅读 12 分钟
3.4k
转自:跟开涛学SpringMVC Web MVC简介 Web开发中的请求-响应模型:   在Web世界里,具体步骤如下: 1、  Web浏览器(如IE)发起请求,如访问[链接] 2、  Web服务器(如Tomcat)接收请求,处理请求(比如用户新增,则将把用户保存一下),最后产生响应(一般为html)。 3、web服务器处理完成后,返回内容给web客户端(一...

Spring源码剖析9:Spring事务源码剖析

2019-08-25
阅读 10 分钟
1.1k
Spring事务是我们日常工作中经常使用的一项技术,Spring提供了编程、注解、aop切面三种方式供我们使用Spring事务,其中编程式事务因为对代码入侵较大所以不被推荐使用,注解和aop切面的方式可以基于需求自行选择,我们以注解的方式为例来分析Spring事务的原理和源码实现。

Spring源码剖析8:Spring事务概述

2019-08-25
阅读 17 分钟
1.6k
原文出处: 张开涛 数据库事务概述 事务首先是一系列操作组成的工作单元,该工作单元内的操作是不可分割的,即要么所有操作都做,要么所有操作都不做,这就是事务。 事务必需满足ACID(原子性、一致性、隔离性和持久性)特性,缺一不可: 原子性(Atomicity):即事务是不可分割的最小工作单元,事务内的操作要么全做,...

Spring源码剖析7:AOP实现原理详解

2019-08-25
阅读 33 分钟
1.8k
前面写了六篇文章详细地分析了Spring Bean加载流程,这部分完了之后就要进入一个比较困难的部分了,就是AOP的实现原理分析。为了探究AOP实现原理,首先定义几个类,一个Dao接口:

Spring源码剖析6:Spring AOP概述

2019-08-25
阅读 11 分钟
1.4k
前言一年半前写了一篇文章Spring3:AOP,是当时学习如何使用Spring AOP的时候写的,比较基础。这篇文章最后的推荐以及回复认为我写的对大家有帮助的评论有很多,但是现在从我个人的角度来看,这篇文章写得并不好,甚至可以说是没有太多实质性的内容,因此这些推荐和评论让我觉得受之有愧。

Spring源码剖析5:JDK和cglib动态代理原理详解

2019-08-25
阅读 24 分钟
3.5k
AOP的基础是Java动态代理,了解和使用两种动态代理能让我们更好地理解 AOP,在讲解AOP之前,让我们先来看看Java动态代理的使用方式以及底层实现原理。

Spring源码剖析4:其余方式获取Bean的过程分析

2019-08-25
阅读 18 分钟
1.4k
之前的文章,分析了非懒加载的单例Bean整个加载过程,除了非懒加载的单例Bean之外,Spring中还有一种Bean就是原型(Prototype)的Bean,看一下定义方式:

Spring源码剖析3:懒加载的单例Bean获取过程分析

2019-08-25
阅读 52 分钟
2.8k
很多朋友可能想看Spring源码,但是不知道应当如何入手去看,这个可以理解:Java开发者通常从事的都是Java Web的工作,对于程序员来说,一个Web项目用到Spring,只是配置一下配置文件而已,Spring的加载过程相对是不太透明的,不太好去找加载的代码入口。

Spring源码剖析2:Spring IOC容器的加载过程

2019-08-25
阅读 78 分钟
2.3k
3.源码分析方法:Intellj idea debug 模式下源码追溯通过ClassPathXmlApplicationContext 进行xml 件的读取,从每个堆栈中读取程序的运行信息

Spring源码剖析1:初探Spring IOC核心流程

2019-08-25
阅读 10 分钟
1.4k
本文大致地介绍了IOC容器的初始化过程,只列出了比较重要的过程和代码,可以从中看出IOC容器执行的大致流程。 接下来的文章会更加深入剖析Bean容器如何解析xml,注册和初始化bean,以及如何获取bean实例等详细的过程。 转自:[链接] 1. 初始化 大致单步跟了下Spring IOC的初始化过程,整个脉络很庞大,初始化的过程主要...

Spring源码剖析开篇:什么是Spring?

2019-08-25
阅读 6 分钟
957
Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发。应用程序是由一组相互协作的对象组成。而在传统应用程序开发中,一个完整的应用是由一组相互协作的对象组成。所以开发一个应用除了要开发业务逻辑之外,最多的是关注如何使这些对象协作来...

重新学习Mysql数据13:Mysql主从复制,读写分离,分表分库策略与实践

2019-08-24
阅读 17 分钟
1.7k
一、MySQL扩展具体的实现方式 随着业务规模的不断扩大,需要选择合适的方案去应对数据规模的增长,以应对逐渐增长的访问压力和数据量。 关于数据库的扩展主要包括:业务拆分、主从复制、读写分离、数据库分库与分表等。这篇文章主要讲述数据库分库与分表 (1)业务拆分 在 大型网站应用之海量数据和高并发解决方案总结一...

重新学习MySQL数据库12:从实践sql语句优化开始

2019-08-24
阅读 15 分钟
1.8k
除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量: