看到题目,大家是不是认为根据上一篇(两万字长文50+张趣图带你领悟网络编程的内功心法)一样,其实不然,我们上一边介绍的是网络编程的基本功,有了这些基本功之后,我们就可以在此之上构建更加接近实际应用的web程序了.为了快速展示他们的层次关系,我用几本书叠了起来进行说明,顺便给大家推荐这几本基本算是这些领域比较权威的书籍.如下图,由下往上看: TCP/IP构成了网络编程的基础设施: Socket套接字编程为应用层提供了访问TCP/IP协议栈的接口: 在应用层上面,指定了面向Web编程的HTTP协议:…
1.我觉得像我这般年纪的(29岁),有相对扎实技术功底的(就不自谦了),对赚钱有着强烈欲望的程序员,应该定一个切实的小目标——五年内月入三万! 之所以要定这个目标,最主要的原因是老婆的批评刺痛了我——一个身强力壮的年轻男子(脑子也还好使),不想方设法的多挣点钱,简直就是对自己人生的不负责任:嗯,也是对家庭的不负责任——有罪啊! 次要的原因是业界(IT)的大牛“纯洁的微笑”对“挣钱”的认知警醒了我: 千万别把有本事挣钱的人,当成臭奸商:挣钱能力,几乎是判定一个人综合能力的最高标准.能够挣到钱的人,…
上一篇博文介绍了Server的创建,在Server创建完之后,就进入到Engine的创建过程,如下: 一.Engine的创建   1.创建Engine实例 当前次栈顶元素为Service对象,通过Service对象的setContainer()方法,将Engine对象添加到Service中. 2.为Engine添加集群配置 3.为Engine添加生命周期监听器 4.为Engine添加安全配置 二.Host的创建   1.创建Host的实例 addCallMethod(String rule,St…
Socket-IO 系列(三)基于 NIO 的同步非阻塞式编程 缓冲区(Buffer) 用于存储数据 通道(Channel) 用于传输数据 多路复用器(Selector) 用于轮询 Channel 状态,四种状态:Connect(连接),Accept(阻塞),Read(读),Write(写) 一.Buffer(缓冲区) 不同于面向流的 IO 中将数据直接写入或读取到 Stream 对象中,在 NIO 中,所有数据都是用缓冲区处理(读写).缓冲区通常是一个字节数组(ByteBuffer),这个数组…
前言 Spring MVC 是构建在 Servlet API 上的原生框架,并从一开始就包含在 Spring 框架中.本文主要通过简述 Spring MVC 的架构及分析,并用 Spring Boot + Spring MVC + MyBatis (SSM)+ Thymeleaf(模板引擎) 框架来简单快速构建一个 Web 项目. Web MVC 架构及分析 MVC 三层架构如图所示,红色字体代表核心模块.其中 MVC 各分层分别为: Model (模型层)处理核心业务(数据)逻辑,模型对象负责…
最近跟朋友在一起聚会的时候,提了一个问题,说 Java 程序员如何能月薪达到二万,技术水平需要达到什么程度?人回答说这只能是大企业或者互联网企业工程师才能拿到.也许是的,小公司或者非互联网企业拿二万的不太可能是码农了,应该已经转管理.还有区域问题,这个不在我的考虑范围内,因为除了北上广深杭,其他地方也很难达到. 还有人提到这个水平不止 2w,其实工资是跟面试表现有关的,也跟其他综合水平有关,比如你是 985,top10,或者研究生学历,也或者懂点 node,懂点大数据等等,或者表达能力强,击中面…
最近跟朋友在一起聚会的时候,提了一个问题,说Java程序员如何能月薪达到二万,技术水平需要达到什么程度?人回答说这只能是大企业或者互联网企业工程师才能拿到.也许是的,小公司或者非互联网企业拿二万的不太可能是码农了,应该已经转管理.还有区域问题,这个不在我的考虑范围内,因为除了北上广深杭,其他地方也很难达到. 还有人提到这个水平不止2w,其实工资是跟面试表现有关的,也跟其他综合水平有关,比如你是985,top10,或者研究生学历,也或者懂点node,懂点大数据等等,或者表达能力强,击中面试官痛点都…
一.HTML4客户端存储 B/S架构的应用大量的信息存储在服务器端,客户端通过请求响应的方式从服务器获得数据,这样集中存储也会给服务器带来相应的压力,有些数据可以直接存储在客户端,传统的Web技术中会使用Cookie,但Cookie有一些缺点,为了说明这个缺点我们先看看当提交表单时会有那些信息会被浏览器收集后发送到服务器. 1.1.提交表单发送到服务器的信息 1).带name的可用表单元素 2).url 3).客户端请求头部信息 4).cookie <%@ page language="j…
写在前面 这篇博文主要介绍javaScript的发展史,根据作者在B站发布的同名视频的文案整理修改而成,对视频感兴趣的博友可访问https://www.bilibili.com/video/av86031488/ Python的诞生背景 Python的创始人名叫Guido van Rossum,因为这个名字冗长又难记,调皮的中国程序员发挥拼音的特长给他起了个特短的名字,龟叔.  故事要从ABC开始说起,ABC不是中国农业银行,也不是美国广播公司,它是由荷兰教学研究组织旗下的CWI负责研发的一种结…
作者: 马锐拉 我们的日常工作场景几乎离不开"云文档".目前,人们对于文档的需求再不仅仅是简单的记录,而扩展到办公协同.信息组织.知识分享等.在国内众多在线文档中,wolai 因为功能新.迭代快.流畅的异地协同体验.高效的信息组织方式以及"信息块"信息整合等特点,作为一个独特的存在进入了人们的视线.人们关注 wolai 独特的功能和舒适的用户的用户体验,更关注实现这些背后的技术架构.在一个晴朗下午,我们邀请了 wolai.com 的创始人马锐拉,跟我们聊聊 wola…