- 博客(65)
- 资源 (38)
- 论坛 (7)
- 问答 (1)
- 收藏
- 关注
原创 离开北京1年了,和大家简单聊2句...
我是2013年开启北漂的。去的那天正好是清明节,因为没有钱做的是晚上的硬座,旁边两个女孩聊了一晚上,都不想错过任何机会。到北京后是早上7点,那时候我还没有坐过地铁,因为拿着大包小包不方便...
2020-09-29 12:12:00
200
原创 华为鸿蒙背后:中国首个自己的开源基金会来了!
该来的,终究还是来了!1开源基金会在上一次华为宣布鸿蒙2.0发布的时候,我写过一篇文章《华为鸿蒙,告别 PPT,代码全部开源!》。文章中提到一个点,不知道大家有没有注意:华为余承东现场宣...
2020-09-28 12:12:00
4191
转载 我,北漂5年程序员,终于在帝都全款买房。
本文原创公众号:不会笑青年,授权转载请联系微信(laughyouth369),授权后,请在原创发表48小时后再转载。< END >作者:不会笑青年漫画师:鹦鹉这两天一直流行秋...
2020-09-27 12:12:00
230
1
原创 罗永浩,是条汉子!人民法院报:真还钱了...
喜剧的内核是悲剧...如果不了解罗永浩,建议先阅读深度解说《锤子卖身!罗永浩:草莽英雄还是闹剧小丑?》14个小目标我是一个喜欢笑的人,而且是大笑。所以我也特别喜欢看各种喜剧,或者综艺节目...
2020-09-26 12:12:00
439
转载 “科班出身”的程序员和“培训出身”的程序员的大型辩论(甩锅)现场
每天早上七点三十,准时推送干货前几天阿粉说阿粉最近换了公司,而且入职之后干掉了公司里面的测试数据库的事情,而接下来的事就比较有意思了,来自“科班出身”的哥们和来自“培训出身”的我的大型辩...
2020-09-24 12:12:00
182
原创 微盟程序员删库跑路,被判刑六年!
大家还记得今年年初,微盟“删库跑路”事件吗?1冲动删库微盟那次删库事件,也许是国内删库最严重的事故之一,当天直接造成公司市值损失近10亿,影响超过300万商户。事件详细过程,当时也给大家...
2020-09-23 12:12:00
15304
20
原创 开篇词:为什么要学 Spring Boot
大家好,我是纯洁的微笑,从 2013 年到现在,我一直从业于第三方支付和互联网金融这两个领域。在互联网金融公司工作期间,从零参与了公司技术平台建设,随着公司业务不断发展,组织技术团队对平台进行过四次大架构升级,从最初单体架构发展到最后的微服务架构,我也从一个一线开发人员成长为互联网金融公司的技术负责人。2016 年,也就是构建第四代平台架构的时候,我在技术调研时了解到了 Spring Boot,...
2020-09-22 12:12:32
300
原创 第 1-1 课:Spring Boot 产生的背景和它的设计理念
《精通 Spring Boot 42 讲》共分五大部分,第一部分是从零起步的基础内容,共4课,帮助大家快速认识 Spring Boot ,我会带领大家熟悉 Spring Boot 产生的背景和设计理念,同时也会讲解 Spring Boot 的环境搭建和项目介绍,最后以一个 Hello World 为例,来测试一下环境的搭建以及熟悉开发的流程。本章的重点内容是 Spring Boot 2.0 ...
2020-09-22 12:12:31
184
原创 第 1-2 课:Spring Boot 2.0 都更新了什么(上)
2018 年 3 月 1 号 Spring Boot 2.0.0.RELEASE 正式发布,这是 Spring Boot 1.0 发布 4 年之后第一次重大修订,因此有多新功能和特性值得关注!在 Spring Boot 官方博客中我们了解到:Spring Boot 2.0 版本经历了 17 个月的开发,有 215 个不同的使用者提供了超过 6800 次的提交。我们将 Spring Boot 2....
2020-09-22 12:12:29
153
原创 第 1-2 课:Spring Boot 2.0 都更新了什么(下)
彩蛋Spring Boot 2.0 支持了动态 Gif 的启动 Logo 打印。在 Spring Boot 1.0 项目中 src/main/resources 路径下新建一个 banner.txt 文件,文件中写入一些字符,启动项目时就会发现默认的 Banner 被替换了,到了 Spring Boot 2.0 现在可以支持 Gif 文件的打印,Spring Boot 2.0 在项目启动的时候...
2020-09-22 12:12:28
150
原创 第 1-3 课:Spring Boot 依赖环境和项目结构介绍
使用 Spring Boot 开发项目需要有两个基础环境和一个开发工具,这两个环境是指 Java 编译环境和构建工具环境,一个开发工具是指 IDE 开发工具。Spring Boot 2.0 要求 Java 8 作为最低版本,需要在本机安装 JDK 1.8 并进行环境变量配置,同时需要安装构建工具编译 Spring Boot 项目,最后准备一个顺手的 IDE 开发工具即可。构建工具是一个把源代码...
2020-09-22 12:12:26
138
原创 第 1-4 课:写一个 Hello World 来感受 Spring Boot
在学习新技术的时候我们都喜欢先写一个 Hello World 程序,一方面可以验证基础环境的搭建是否正确;另一方面可以快速了解整个开发流程。本节课我们就来学习 Spring Boot 的第一个 Hello World 程序。什么是 Spring BootSpring 在官方首页是这样介绍的: BUILD ANYTHING.Spring Boot is designed to get yo...
2020-09-22 12:12:25
148
原创 第 2-1 课:Spring Boot 对基础 Web 开发的支持(上)
《精通 Spring Boot 42 讲》共分五大部分,这是第二部分内容,主要讲解了 Web 开发相关的技术点,共 10 课。首先让大家快速认识 Spring Boot 对基础 Web 开发所做的优化;接下来讲解了如何在 Spring Boot 中使用前端技术 JSP、Thymeleaf,重点介绍了 Thymeleaf 的各种使用场景;后面几课介绍了如何使用 Spring Boot 来构建 ...
2020-09-22 12:12:23
93
原创 第 2-1 课:Spring Boot 对基础 Web 开发的支持(下)
我们接着上一课的内容继续讲解。数据校验在很多时候,当我们要处理一个应用程序的业务逻辑时,数据校验是必须要考虑和面对的事情。应用程序必须通过某种手段来确保输入进来的数据从语义上来讲是正确的。在 Java 应用程序中,必须要对输入进来的数据从语义上分析是有效的,也就是数据校验。输入验证是最重要的 Web 开发任务之一,在 Spring MVC 中有两种方式可以验证输入:一种是 Spring 自带...
2020-09-22 12:12:22
82
原创 第 2-2 课:Spring Boot 项目中使用 JSP
JSP(Java Server Pages,Java 服务器页面)是一个简化的 Servlet 设计,它是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP 技术类似 ASP 技术,它是在传统的网页 HTML(标准通用标记语言的子集)文件(.html)中插入 Java 程序段(Scriptlet)和 JSP 标记(tag),从而形成 JSP 文件,后...
2020-09-22 12:12:20
98
原创 第 2-3 课:模板引擎 Thymeleaf 基础使用
模板引擎模板引擎是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的 HTML 文档。模板引擎的实现方式有很多,最简单的是“置换型”模板引擎,这类模板引擎只是将指定模板内容(字符串)中的特定标记(子字符串)替换,便生成了最终需要的业务数据(如网页)。“置换型”模板引擎实现简单,但其效率低下,无法满足高负载的应用需求(比如有海量访问的网...
2020-09-22 12:12:18
99
原创 第 2-4 课:模板引擎 Thymeleaf 高阶用法
上一课我们介绍了 Thymeleaf 最常用的使用语法,这一课我们继续学习 Thymeleaf 高阶的使用方式,并对这些使用方式进行总结分类。其实上一课的内容,基本可以满足 Thymeleaf 80% 的使用场景,高阶用法会在某些场景下提供更高效、便捷的使用方式。内联 [ [ ] ]如果不想通过 th 标签而是简单地访问 model 对象数据,或是想在 javascript 代码块里访问 mo...
2020-09-22 12:12:17
112
原创 第 2-6 课:使用 Spring Boot 和 Thymeleaf 演示上传文件
在互联网行业中上传文件是一个高频的使用场景,常用的案例有上传头像、上传身份证信息等。Spring Boot 利用 MultipartFile 的特性来接收和处理上传的文件,MultipartFile 是 Spring 的一个封装的接口,封装了文件上传的相关操作,利用 MultipartFile 可以方便地接收前端文件,将接收到的文件存储到本机或者其他中间件中。首先通过一个小的示例来了解 Spri...
2020-09-22 12:12:15
91
原创 第 2-5 课:Thymeleaf 页面布局
页面布局就是对前端的页面进行划分区域,每个区域有不同的职责,布局是为了更好地重复利用前端代码,避免大量重复性的劳动。在现有的前端系统中,页面布局成了前端开发最重要的工作之一,Thymeleaf 在设计之初对页面布局就有考虑,通过 Thymeleaf 的相关语法可以很容易地实现对前端页面布局。快速入手Spring Boot 2.0 将布局单独提取了出来,需要单独引入依赖:thymeleaf-la...
2020-09-22 12:12:14
90
原创 第 2-7 课:使用 Spring Boot 上传文件到 FastDFS
什么是 FastDFSFastDFS 是一个开源的轻量级分布式文件系统,它解决了大数据量存储和负载均衡等问题,特别适合以中小文件(建议范围:4 KB < file_size < 500 MB)为载体的在线服务,如相册网站、视频网站等。在 UC 基于 FastDFS 开发向用户提供了网盘、社区、广告和应用下载等业务的存储服务。FastDFS 由 C 语言开发,支持 Linux、Fre...
2020-09-22 12:12:13
91
原创 第 2-8 课:Spring Boot 构建一个 RESTful Web 服务
现在越来越多的企业推荐使用 RESTful 风格来构建企业的应用接口,那么什么是 RESTful 呢?什么是 RESTfulRESTful 是目前最流行的一种互联网软件架构。REST(Representational State Transfer,表述性状态转移)一词是由 Roy Thomas Fielding 在他 2000 年博士论文中提出的,定义了他对互联网软件的架构原则,如果一个架构符...
2020-09-22 12:12:11
158
原创 第 2-9 课:使用 Swagger 2 构建 RESTful APIs
什么是 SwaggerSwagger 是一系列 RESTful API 的工具,通过 Swagger 可以获得项目的一种交互式文档,客户端 SDK 的自动生成等功能。Swagger 的目标是为 REST APIs 定义一个标准的、与语言无关的接口,使人和计算机在看不到源码或者看不到文档或者不能通过网络流量检测的情况下,能发现和理解各种服务的功能。当服务通过 Swagger 定义,消费者就能与远...
2020-09-22 12:12:09
90
原创 第 2-10 课:使用 Spring Boot WebSocket 创建聊天室
什么是 WebSocketWebSocket 协议是基于 TCP 的一种网络协议,它实现了浏览器与服务器全双工(Full-duplex)通信——允许服务器主动发送信息给客户端。以前,很多网站为了实现推送技术,所用的技术都是轮询。轮询是在特定的的时间间隔(如每 1 秒),由浏览器对服务器发出 HTTP 请求,然后由服务器返回最新的数据给客户端的浏览器。这种传统的模式带来很明显的缺点,即浏览器需要...
2020-09-22 12:12:07
90
原创 第 3-1 课:Spring Boot 使用 JDBC 操作数据库
《精通 Spring Boot 42 讲》共分五大部分,第三部分主要讲解 Spring Boot 和数据库开发,共 8 课。Spring Boot 支持了主流的 ORM 框架:MyBatis、Hibernate 和 Spring JDBC,几种 ORM 在不同的场景下各有优势,在 Spring Boot 体系内都有对应的 Starter 包以方便集成。首先将讲解 Spring JDBC 的使...
2020-09-22 12:12:06
77
原创 第 3-2 课:如何优雅地使用 MyBatis XML 配置版
MyBatis 是现如今最流行的 ORM 框架之一,我们先来了解一下什么是 ORM 框架。ORM 框架对象关系映射(Object Relational Mapping,ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM 是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。为什么需要 ORM?当你开发一个应用程序的时候(...
2020-09-22 12:12:04
73
原创 第 3-3 课:如何优雅地使用 MyBatis 注解版
自从 Java 1.5 开始引入了注解,注解便被广泛地应用在了各种开源软件中,使用注解大大地降低了系统中的配置项,让编程变得更为优雅。MyBatis 也顺应潮流基于注解推出了 MyBatis 的注解版本,避免开发过程中频繁切换到 XML 或者 Java 代码中,从而让开发者使用 MyBatis 会有统一的开发体验。因为最初设计时,MyBatis 是一个 XML 驱动的框架,配置信息是基于 XML...
2020-09-22 12:12:02
69
原创 第 3-4 课: Spring Data JPA 的基本使用
Spring Data JPA 是 Spring Boot 体系中约定优于配置的最佳实现,大大简化了项目中数据库的操作。从本课开始将会从 JPA 的由来开始讲解,什么是 JPA、Spring Boot JPA 的实现,以及如何使用。概念JPA 由来ORM 框架能够将 Java 对象映射到关系数据库中,能够直接持久化复杂的 Java 对象。ORM 框架的出现,可以让开发者从数据库编程中解脱出...
2020-09-22 12:12:01
61
原创 第 3-5 课:Spring Data JPA 的高级用法
上节课介绍了 Spring Data JPA 的使用方式和基本查询,常用的增、删、改、查需求 Spring Data JPA 已经实现了。但对于复杂的数据库场景,动态生成方法不能满足,对此 Spring Data JPA 提供了其他的解决方案,这就是这节课的主要内容。自定义 SQL 查询使用 Spring Data 大部分的 SQL 都可以根据方法名定义的方式来实现,但是由于某些原因必须使用自...
2020-09-22 12:11:59
108
原创 第 3-6 课:Spring Data JPA 多数据源的使用
项目中使用多个数据源在以往工作中比较常见,微服务架构中不建议一个项目使用多个数据源。在微服务架构下,一个微服务拥有自己独立的一个数据库,如果此微服务要使用其他数据库的数据,需要调用对应库的微服务接口来调用,而不是在一个项目中连接使用多个数据库,这样微服务更独立、更容易水平扩展。虽然在微服务架构下,不提倡一个项目拥有多个数据源,但在 Spring Boot 体系中,项目实现多数据源调用却是一件很容...
2020-09-22 12:11:58
67
原创 第 3-7 课:Spring Boot 集成 Druid 监控数据源
Druid 介绍Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和 SQL 解析器组成,该项目主要是为了扩展 JDBC 的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计 SQL 信息、SQL 性能收集、SQL 注入检查、SQL 翻译等,程序员可以通过定制来实现自己需要的功能。Druid 首先是一个数据库连接池,但它不仅仅是一个数据库连接池,还...
2020-09-22 12:11:56
68
原创 第 3-8 课:Spring Data JPA 和 Thymeleaf 综合实践
在前面课程中,我们学习了 Spring Boot Web 开发、JPA 数据库操作、Thymeleaf 和页面交互技术,这节课综合这些内容做一个用户管理功能,包括展示用户列表(分页)、添加用户、修改用户和删除用户。有人说程序员的一生都是在增、删、改、查,这句话不一定全对,但也有一定的道理,相比于这句话,我更认同的是这句:程序员的技术学习都是从增、删、改、查开始的。这节课将介绍如何使用 JPA 和...
2020-09-22 12:11:55
54
原创 第 4-1 课:Spring Boot 操作 Memcache
《精通 Spring Boot 42 讲》共分五大部分,第四部分主要讲解 Spring Boot 和中间件的使用,共 10 课,中间件是互联网公司支撑高并发业务的必备组件,常用的组件有缓存、消息中间件、NoSQL 数据库、定时任务等。常用的缓存中间件有 Memcache 和 Redis ,缓存主要支撑业务架构中高速读写;常用的消息中间件有 ActiveMQ 、RabbitMQ ,使用消息中间...
2020-09-22 12:11:53
57
原创 第 4-2 课:Spring Boot 和 Redis 常用操作
Redis 是目前使用最广泛的缓存中间件,相比 Memcached,Redis 支持更多的数据结构和更丰富的数据操作,另外 Redis 有着丰富的集群方案和使用场景,这一课我们一起学习 Redis 的常用操作。Redis 介绍Redis 是一个速度非常快的非关系数据库(Non-Relational Database),它可以存储键(Key)与 5 种不同类型的值(Value)之间的映射(Map...
2020-09-22 12:11:51
67
原创 第 4-3 课:使用 Redis 实现 Session 共享
在微服务架构中,往往由多个微服务共同支撑前端请求,如果涉及到用户状态就需要考虑分布式 Session 管理问题,比如用户登录请求分发在服务器 A,用户购买请求分发到了服务器 B, 那么服务器就必须可以获取到用户的登录信息,否则就会影响正常交易。因此,在分布式架构或微服务架构下,必须保证一个应用服务器上保存 Session 后,其他应用服务器可以同步或共享这个 Session。目前主流的分布式 S...
2020-09-22 12:11:50
62
原创 第 4-4 课:Spring Boot 中使用 Cache 缓存的使用
我们知道绝大多数的网站/系统,最先遇到的一个性能瓶颈就是数据库,使用缓存做数据库的前置缓存,可以非常有效地降低数据库的压力,从而提升整个系统的响应效率和并发量。以往使用缓存时,通常创建好缓存工具类,使用时将对应的工具类注入,操作工具类在前端处理缓存的逻辑。其实这种方式是低效的,大部分使用缓存的场景是基于数据库的缓存,这类缓存场景的逻辑往往是:如果缓存中存在数据,就从缓存中读取,如果缓存中不存在数...
2020-09-22 12:11:48
68
原创 第 4-5 课:使用 Spring Boot 操作 ActiveMQ
消息队列中间件是分布式系统中重要的组件,主要解决应用耦合、异步消息、流量削锋等问题,实现高性能、高可用、可伸缩和最终一致性架构,是大型分布式系统不可缺少的中间件。目前在生产环境中使用较多的消息队列有 ActiveMQ、RabbitMQ、ZeroMQ、Kafka、MetaMQ、RocketMQ 等。特性异步性:将耗时的同步操作通过以发送消息的方式进行了异步化处理,减少了同步等待的时间。 ...
2020-09-22 12:11:47
75
原创 第 4-6 课:Spring Boot RabbitMQ 详解
RabbitMQ 介绍AMQP(Advanced Message Queuing Protocol,高级消息队列协议)是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP 的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ 是一个开源的 AMQP 实现,服务器端用...
2020-09-22 12:11:45
65
原创 第 4-7 课:Spring Boot 简单集成 MongoDB
MongoDB 如今是最流行的 NoSQL 数据库,被广泛应用于各行各业中,很多创业公司数据库选型就直接使用了 MongoDB,但对于大部分公司,使用 MongoDB 的场景是做大规模数据查询和离线分析。MongoDB 一经推出就受到了广大社区的热爱,可以说是对程序员最友好的一种数据库,下面我们来了解一下它的特性。MongoDB 简介MongoDB(Humongous,庞大)是可以应用于各种规...
2020-09-22 12:11:44
53
原创 第 4-8 课:Spring Boot 集成 ElasticSearch
ElasticSearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。 Lucene 可以说是当下最先进、高性能、全功能的搜索引擎库——无论是开源还是私有。ElasticSearch 使用 Java 编写的,它的内部使用的是 Lucene 做索引与搜索,它的目的是使全文检索变得简单,通过隐藏 Lucene 的复杂性,取而代之提供了一套简单一致的 RE...
2020-09-22 12:11:42
78
原创 第 4-9 课:Spring Boot 集成 Quartz
在项目开发中,经常需要定时任务来帮助我们来做一些内容,比如定时派息、跑批对账、业务监控等。Spring Boot 体系中现在有两种方案可以选择,第一种是 Spring Boot 内置的方式简单注解就可以使用,当然如果需要更复杂的应用场景还是得 Quartz 上场,Quartz 目前是 Java 体系中最完善的定时方案。首先来看看 Spring Boot 自带的定时方案。Spring Boot ...
2020-09-22 12:11:41
68
jdk-7u10-windows-i586安装后jdk中jre文件
2013-01-31
jdk-6u26-windows-i586安装后jdk中jre文件
2013-01-31
mysql-5.5.28-win32.zip
2013-01-19
mysql-5.5.16-win32.zip
2013-01-19
Navicat Premium
2013-01-19
JAVA中使用JSONObject生成json 需要的所有包
2012-12-29
网上购物系统( 模拟当当网)源码
2012-12-29
Quick Easy Ftp Server绿色ftp服务
2012-12-27
editplus 绿色免安装
2012-05-05
Connectify电脑上的无线路由器
2012-03-12
SVN的Myeclipse配置、SVN、SVN-1.6
2012-01-06
Open Flash Chart的应用(java),就是很炫的报表了
2011-12-31
初级Webservice教程代码资料(java)
2011-12-31
《Go语言编程》高清完整版电子书
2015-03-06
Go+Web+编程
2015-03-06
微笑很纯洁的留言板
发表于 2020-01-02 最后回复 2020-02-29
2016年最遗憾的事情
发表于 2017-01-19 最后回复 2017-01-20
二线城市快3年了,背不住计划跳槽北京,求建议;2-3年java工作经验在北京薪资可以拿到多少
发表于 2013-02-21 最后回复 2016-07-03
六月的码农——就业记(持续更新中。。。)
发表于 2013-05-03 最后回复 2013-08-01
今天提离职申请了,散粉、散粉。。。。
发表于 2013-03-04 最后回复 2013-03-20
说说最让你感动或者难忘电影。发现国产电影不是一般的垃圾,个人推荐几个好看的电影,大家都分享下,没事可以看看
发表于 2012-05-04 最后回复 2012-05-13
第一次过5.4青年节,不知道是该高兴呢,还是该高兴呢。。。
发表于 2012-05-04 最后回复 2012-05-04
ecside 数据出不来 神马情况?
2011-11-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝