自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

softwareCraftsman

One for All All for One

  • 博客(280)
  • 收藏
  • 关注

原创 2017-Spring-Summit大会-(中国首届)参会后感受和一些思考

背景目前任职的公司正经历架构转型,由一体式向微服务进军,从传统到云原生转型。又得闲暇之际阅读微信公众号的文章,得知2017-8-26日北京的新云南皇冠假日大酒店有一场由pivotal和中国极客帮联合主办的大会,能够和Java业界Top20进行面对面的交流,尤其是请来了Spring社区的重量级大咖们,机会不容放过,正好借此宣传下公司,亦可顺便借此机会向前辈们学习下经验本次大会简介链接:htt...

2019-11-26 08:07:05 1132 19

原创 从Spring-Boot开始深入理解Spring系列(八)——Spring-Boot处理web开发的跨域问题

什么是跨域?定义跨域失败,成功的效果演示为什么需要跨域?如何跨域?解决方案一:解决方案二:效果展示小结:附:代码下载参考文章:...

2019-02-16 08:17:59 339 2

原创 从Spring-Boot开始深入理解Spring系列(七)——Spring-Boot使用servlets、filter、listener、interceptor

文章目录基础概念理解对比深入理解:原理详解生命周期理解实战:示例应用项目实战应用场景附源码下载参考博客基础概念理解对比深入理解:原理详解生命周期理解实战:示例应用项目实战应用场景附源码下载参考博客...

2019-02-12 20:44:50 379

原创 从Spring-Boot开始深入理解Spring系列(五)——Spring-Boot集成JavaEE的JSR380的BV2.0规范

文章目录基础概念什么是JSR什么是BVBV的实现有哪些?为什么需要BV?不用的现状(必要性)使用的好处(意义)为什么需要统一异常处理?不用的现状(必要性)使用的好处(意义)如何做统一的异常处理?原则和约定spring-boot中使用BVspring-boot中统一异常处理如何保证新人和代码的维护者保持好习惯?新人上手文档手册和文档,建立岗前培训以及上岗前的考核机制定期codeReview工具检查建...

2019-01-08 23:05:13 626 1

原创 从Spring-Boot开始深入理解Spring系列(六)——Spring-Boot统一异常处理的最佳实践

为什么需要统一异常处理?不用的现状(必要性)使用的好处(意义)如何做统一的异常处理?原则和约定如何保证新人和代码的维护者保持好习惯?新人上手文档手册和文档建立岗前培训以及上岗前的考核机制岗前培训,标准示例代码的学习。工具的学习、配置,最佳实践等。岗前,考核题库。实战项目需求定期codeReview工具检查建立良性的长期激励机制传帮带机制主动发现并帮助团队成员,共同进步和...

2019-01-08 21:57:16 440

原创 从Spring-Boot开始深入理解Spring系列(四)——Spring-Boot集成主流模板引擎thymeleaf和freemarker

什么是模板引擎模板引擎的使用场景web开发中展示层的发展趋势模板引擎如何做选型?主流模板引擎优缺点对比在spring-boot-中如何使用freemarker?在spring-boot中如何使用thymeleaf?附源码下载Thymeleaf快速上手Freemarker中文手册...

2019-01-06 09:29:31 427 2

原创 从Spring-Boot开始深入理解Spring系列(三)——Spring-Boot集成主流java的log框架-logback和log4j2

引言:不同环境,使用不同的日志配置?不同环境,日志配置的最佳实践是什么?如何在spring-boot下优雅地打印日志(AOP)?本文源码下载查看更多相关博客:java编程日志的最佳实践logback框架利用logback的MDC加拦截器,定制化你的日志输出格式和内容log4j2框架...

2019-01-04 10:37:39 425

原创 从Spring-Boot开始深入理解Spring系列(二)——Spring-Boot配置文件

文章目录Springboot 如何简化Spring的配置文件?为什么要如此设计?Springboot都支持哪些格式的配置文件?Springboot的配置文件的生效顺序Springboot的application属性文件的加载优先级为什么更推荐使用yaml格式?如何读取配置文件的内容?关于配置文件的最佳实践和项目实战技巧?使用属性占位符生成随机数多环境配置配置文件的加密自定义配置文件使用数组或者集合...

2018-12-29 20:53:32 485 3

原创 从Spring-Boot开始深入理解Spring系列(一)——Spring-Boot概览

文章目录宏观导图一句话理解导图为什么会出现Spring-Boot?什么是Spring-Boot?内涵外延和Spring的关系和Spring cloud 的关系和microprofile的关系和wildfly-warm、WebSphere Liberty、Payara micro、TomEE的关系如何使用Spring-Boot ?基础练习项目实战常见使用误区和坑项目中的最佳实践(避坑指南)Sprin...

2018-12-27 17:31:07 403 4

原创 Java专家之路(五)---缓存知识体系的总结(以redis为主线)

引言:本文的意图,在于帮助大家梳理一个关于编程世界中常见的概念——缓存。本文的侧重点在于java软件编程中的项目里的缓存应用实战。从基本概念,到原理,到实战应用,常见面试、项目应用问题等均有涉猎。什么是缓存?1、缓存的对象(缓存本身),是一种数据结构,存储在计算机某个位置的原始值的副本。可以是从昂贵和耗时的操作的结果到静态网页或后端数据库的内容的任何东西(例如:文件、热点数据……) ...

2018-09-03 20:06:12 528 1

原创 Java专家之路(三)---事务知识体系的总结

引言:本文的意图在于:在帮助大家,从最简单的事务概念ACID开始,宏观掌握事务的知识体系通过demo实战来掌握各类事务,尤其是分布式事务的概念和原理不同事务模型的事务处理办法java中常见的事务设计策略理解和实战微服务下分布式事务的解决方案同时,我们的重点将会是分布式事务的一些知识、实践和讨论导图宏观概览:那么,事务到底是什么?生活中的事务举...

2018-03-22 12:17:07 541 11

原创 Java专家之路(二)---数据访问和数据持久化框架的总结

Java数据访问和持久化SQL方案一JDBC什么是JDBC架构图JDBC规范下载链接JAVA使用JDBC访问数据库的步骤实例练习方案二JdbcTemplatejdbcTemplate是什么应用场景实例操作方案三ORMORM是什么为什么需要ORM主要是解决jdbc的各种问题ORM的优势ORM带来了什么样的问题ORM是否非得使用ORM的实现原理思路有哪些ORM方案可

2017-12-20 17:51:03 10609 10

原创 Java远程调用系列(一)——概览篇

首先,来几个基本问题远程调用是什么?内涵本质上来讲, 通俗来讲,外延(易混概念)为什么需要远程调用?必要性意义,带来的好处是什么?怎么实现远程调用?实现原理实现方式如何选型?技术发展趋势当下流行程度技术的学习成本公司现有架构和未来架构方向.NET平台下的远程调用(扩展)

2017-10-24 15:31:12 976 10

原创 JavaSE_8系列博客——专家之路(一)---Java反射的总结

先来五个基本问题:什么是反射(what)?生活中的反射百科定义:反射(外文名reflection),指的是声波、光波或其他电磁波遇到别的媒质分界面而部分仍在原物质中传播的现象。如光的反射、波的反射。光在两种物质分界面上改变传播方向又返回原来物质中的现象,叫做光的反射程序设计语言中的反射百科定义:反射是一种计算机处理方式。有程序可以访问、检测和修改它本身状态或行为的这种能力。能提供封装程序集、类型的对

2017-10-22 08:17:18 2632 12

原创 序列化和反序列化系列博客(一)—— What and Why?

引言:序列化和反序列化几乎是工程师们每天都要面对的事情,但是要精确掌握这两个概念并不容易:一方面,它们往往作为框架的一部分出现而湮没在框架之中;另一方面,它们会以其他更容易理解的概念出现,例如加密、持久化。然而,序列化和反序列化的选型却是系统设计或重构一个重要的环节,在分布式、大数据量系统设计里面更为显著。恰当的序列化协议不仅可以提高系统的通用性、强健性、安全性、优化系统性能,而且会让系统更加易于调试

2016-03-21 21:41:27 961 17

原创 如何高效率应对考试

引言: 二级考试已经过去了,先不管他能不能过吧。一些感受,在这里和大家一起分享一下。希望给以后再参加任何考试的童鞋们一些启发。前提: 建立自信(一切考试都是纸老虎),不用畏惧,更不能放弃!错误的思想: 1、题海战术,没有针对性,效率低下。但是,我并不反对做题,做题要讲究策略,要有针对性的去做题! 2、不做真题。不懂出题命题者的套路,费力不讨好。有一些童鞋做的是模拟题,不建议做太多

2015-03-24 10:56:58 1905 32

转载 Leaning How to learn

大多数人认为学习的快慢取决于学习者的天赋,实际上研究表明学习方法起着至关重要的作用。更深层次的知识加工,与时而反复的温故知新,在某些情况下会加倍你的学习效率。最近学习了如何快速学习的方法论,分享给大家。  是否能加速理解?  经典的学生求学之路,就是听讲座,读书;如果还不懂,只好枯燥地做大量习题(题海)或重看笔记。没有系统的方法,想更快地理解似乎是天方夜谭。理解的本质,像洋葱的层层

2015-02-13 21:34:34 1315 20

翻译 Spring Boot-事务隔离教程

在上一个教程 -Spring Boot事务管理示例中, 我们了解了什么是事务并实现了声明式事务管理。同样在 上一教程中,我们实现了各种事务传播类型。在本教程中,我们将了解什么是事务隔离及其不同类型。视频讲解地址:(预留:待上传……)让我们开始吧:什么是事务隔离?当两个事务同时作用于同一数据库实体时,事务隔离定义数据库状态。它涉及锁定数据库记录。因此,当一个事务在数据库实体上工作时,它描述了数据库的行为或状态,然后其他并发事务试图同时访问/编辑同一数据库实体。ANSI / ISO标准定义了四个隔离级

2020-06-24 11:56:16 644

翻译 Spring Boot事务管理-事务回滚示例

在先前的教程中,我们已经实现了 Spring Boot事务管理示例 -我们看到了什么是事务并实现了声明式事务管理。在以前的教程 -Spring Boot事务-了解事务传播中, 我们还研究了什么是传播以及使用Spring Boot的不同类型。在下一个教程中,我们将研究 什么是使用Spring Boot的事务隔离。 在Spring Boot事务管理示例中, 我们已经看到应用程序事务是一系列应用程序操作,这些操作被应用程序视为单个逻辑单元。对于应用程序事务,如果任何操作失败,则所有其他操作都会回滚。在先前的事

2020-06-24 11:06:56 1290

翻译 Spring Boot事务-了解事务传播

视频讲解地址:(预留:待上传……)让我们开始吧:什么是事务的传播?任何应用程序都涉及调用其他服务或组件的许多服务或组件。事务传播指示任何组件或服务是否会或不会参与事务,以及调用主叫组件/服务已创建或未创建事务的行为。我们将利用上一章开发的Spring Boot Transaction项目。它具有组织服务,可以呼叫员工服务和健康保险服务。同样在前面的示例中,我们仅将事务注释添加到了组织服务中。但是,假设用户希望通过两种方式调用雇员服务,即- 使用组织服务通话- 直接致电员工服务。由于也

2020-06-24 09:27:14 361

翻译 Spring Boot声明式事务管理示例

视频讲解地址:(预留:待上传……)让我们开始吧:什么是数据库事务?数据库事务是访问并可能修改数据库内容的单个逻辑工作单元。让我们检查一下mysql数据库:为mysql数据库打开两个单独的窗口在一个mysql窗口中,创建一个名为test的数据库,并在‘s其中创建一个名为employee的表create database test;create table employee(id varchar(10), name varchar(10));默认情况下,事务是针对mysql数据库自动提

2020-06-23 16:35:05 588

原创 2019年终总结——敢想敢做,青春无悔

前言回看2018年的年总,总有那么一些的不如意,有些敷衍了事的嫌疑。看了下自己的各个平台,停笔时间不短了,在博客输出上,在一些平台的输出上做的少了。更多的是面向团队的直接输出,讲课、交流聊天的场景更多了一些。整体来看,还是不太利于自己的长远发展,回过头来,还是要继续互联网平台的输出。2019年成长,成熟了许多。做了很多,一直想做,却因为各种原因拖着没做,或者是因为各种缘故没法做的事情。已经完...

2020-01-16 22:52:57 551 1

原创 Docker实战系列——第四话-- 将你的spring-boot应用进行容器化的几种常见玩法

背景docker从一个火的一塌糊涂的技术,到成为人尽皆知的基本技能已经是1-2年前的事情了,本章节的内容,意在记录和整理自己在工作和学习过程中,对于应用做容器化并推送到镜像仓库的方案和工具选择以及使用上的一些思考和心得。希望能够帮到大家前置知识docker、Idea 、maven、linux容器化方案的选择参考:https://juejin.im/post/5c60c021f265da2...

2019-12-30 17:46:31 228

翻译 提高编码技能成为更好的开发者的十个提示

许多Java开发人员问我如何成为一个更好的程序员,如何提高我的编程技能,或者我擅长Java但在解决问题的技能上不那么好等等。这是现实,今天的时代充满了语言专家而不是真正的程序员。它易于理解Java编程语言的关键字,方法和API,但同时难以解决实际问题,设计可重用且可靠的软件并获得最佳的数据结构和算法。我经常看到Java程序员在被要求在有限的时间内设计和编写解决方案时表现不佳,但同时他们对Jav...

2019-08-28 15:29:03 488

翻译 2019年成为更好的java开发者的十个提示

我经常收到读者发来的电子邮件,要求我告诉他们如何成为更好的Java开发人员,他们应该学习什么,以及他们可以成为Rockstar Java开发人员的工作领域和方向有哪些?在过去几年中单独回答之后,我想了几点,我认为这将使你成为一名更好的Java程序员和应用程序开发人员。但是,在进入之前,我想强调一个更好的程序员总是一个更好的Java开发人员,这就是为什么我之前分享的所有提示,以提高你的编程技能,成...

2019-08-28 11:54:31 278

原创 spring-Microservices-in-action问题记录

环境:win10、Docker version 18.09.2, build 6247962chapter2:问题一:/bin/sh: 1: ./install.sh: not found on docker for windows using有发此类问题的三个因素:本问题原因:I confirm that this is a CR LF trouble.解决方法:http://s...

2019-04-30 12:37:20 446

原创 从传统开发模式转向云原生开发——实战系列博客(一)准备工作

引言:作为一个高级研发岗位的程序员,并志向于成为架构师或者CTO的你,应该要明白云原生的开发是你从现在开始就必须要搞定的事情!云原生有三件事要搞定:第一:微服务第二:容器和容器云第三:DevOps本系列文章,意在记录自己从传统开发模式,转向云原生开发的过程中,趟坑经验,以及注意事项,并为大家整理了相关技术资料和学习路线。面向的群体:高级开发架构师运维人员学习前提或技术储备...

2019-04-30 11:45:08 1776 1

原创 项目管理tips之代码质量控制(一)——通过maven-pmd-plugin插件自动扫描工程中不合规约的代码

需求背景:代码质量审查,需要用到阿里规约的检查,尽管建议大家在客户端自己的IDE中进行了扫描,但是难免会有人忘记。因此,在CI过程中,利用maven插件做一次统一的自动化扫描插件检查结果展示操作指南:第一步:在你maven工程的父工程中配置如下插件 <plugin> <groupId>org.apache.maven.plugins</g...

2019-02-14 16:44:40 5951 1

原创 Java专家之路(十)-- 面向对象的基础概念和原理,事件机制?

什么是回调?什么是事件?委托?事件驱动的编程模型?

2019-01-12 17:39:02 392 1

原创 编程思想和原则之——《Design by Contract (DbC) – 契约式设计》附参考代码

什么是契约式编程体现?代码参考:

2019-01-12 17:37:11 739 1

原创 编程思想和原则之——《插件式编程》附参考代码

什么是插件?参考方案:设计参考代码实现

2019-01-12 17:33:22 529 1

原创 编程思想和原则之——《Don’t Repeat Yourself (DRY)》附参考代码

设计层面代码层面clean code重构代码坏味道好代码小结

2019-01-12 17:31:58 629

原创 Java专家之路(九)-- 面向对象的基础概念和原理,使用回调机制实现对象之间通信

定义:什么是通信什么是对象?哪些对象的通信通信的实现方式

2019-01-12 17:23:28 805

原创 Java专家之路(七)-- 面向对象的基础概念,如何理解多态?

是什么?为什么?怎么做到?示例:原理分析从虚拟机层面从字节码层面多态的滥用(常见误区)最佳实践

2019-01-12 17:21:06 152

原创 Java专家之路(七)-- 面向对象的基础概念,如何理解继承?

什么是继承?定义:内涵:外延:从生活的角度从编程的层面从java的层面java语法层面从虚拟机的层面字节码层面从机器语言层面为什么需要继承?复用,纵向的复用。怎样才是打开java继承的正确姿态?继承的代码示例:如何科学、正确地使用继承常见的反例继承的最佳实践如何解决java中单继承带来的限制?java中继承的实现原理...

2019-01-12 17:18:42 244

原创 Java专家之路(六)-- 面向对象的基础概念,如何理解封装?

什么是封装?为什么?怎么实现封装?封装的基础反模式?(反面典型)什么才是好的封装(最佳实践)附:源码下载参考文章

2019-01-12 17:10:56 156 1

原创 成就高效DevOps团队的“降龙十八掌”第一式——codeReview?

什么不是codeReviewCode reviews 不应该承担发现代码错误的职责。Code Review主要是审核代码的质量,如可读性,可维护性,以及程序的逻辑和对需求和设计的实现。代码中的bug和错误应该由单元测试,功能测试,性能测试,回归测试来保证的(其中主要是单元测试,因为那是最接近Bug,也是Bug没有扩散的地方)Code reviews 不应该成为保证代码风格和编码标准的手段。...

2019-01-07 19:15:55 503 2

原创 say hello to react(一)

文章目录引言什么是react?为什么要使用?如何快速使用?有用的资料引言这个系列的文章,并不打算将所有关于react的知识体系在这里做一个粗浅的介绍,而是通过众多实战项目的形式,让你快速对react产生兴趣。假设你已经对es6、webpack等前端基础技术,有了最基本的认知。当然,本篇是一个宏观的介绍。下面进入正题什么是react?一句话简单概括,A JavaScript library ...

2018-12-09 21:11:35 211

原创 Java专家之路(六)---日志知识体系的总结(以java程序中的日志为例)

一:日志的概念二:为什么需要日志?必要性,没有它,我们会怎样?意义,有了它,我们可以用来做什么?三:我们需要什么样的日志?何时记录?何处记录?记录什么?日志的分类:级别、目的、内容内容的有效性、内容的个性化定制用什么样的工具记录?按照什么样的格式去记录?在java项目和产品中日志的最佳实践:日志的规约:正例:违法规约的反模式:四、如何更好地利用这些日志?管理:分...

2018-10-14 22:45:36 282 3

转载 Oracle——网络配置和基本概念积累:(listener.ora、sqlnet.ora、tnsnames.ora)

oracle网络配置概述三个配置文件 listener.ora、sqlnet.ora、tnsnames.ora ,都是放在$ORACLE_HOME\network\admin目录下。三个文件的作用:1. sqlnet.ora 作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串。 例如我们客户端输入 sqlp...

2018-08-12 11:14:34 272

空空如也

空空如也

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

TA关注的人

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