摘要: 本篇博客我们就来聊一下如何使用Eclipse+STS插件来创建Spring Boot的工程。Spring Boot可以使我们更容易的使用Spring框架,在Spring Boot中自动配置了好多东西,这就给我们省了不少事儿。今天我们就来创建一个Spring Boot工程,然后在该工程上创建一个测试的 阅读全文
posted @ 2017-05-03 09:52 青玉伏案 阅读(2018) 评论(0) 推荐(6) 编辑
摘要: 上篇博客我们详细的聊了《JavaEE开发之SpringMVC中的静态资源映射及服务器推送技术》,本篇博客依然是JavaEE开发中的内容,我们就来聊一下SpringMVC中的自定义消息转发器(HttpMessageConverter)和SpringMVC中的文件上传。消息转发器在日常开发中是比较常用的 阅读全文
posted @ 2017-04-28 09:51 青玉伏案 阅读(2418) 评论(2) 推荐(3) 编辑
摘要: 在上篇博客中,我们聊了《JavaEE开发之SpringMVC中的自定义拦截器及异常处理》。本篇博客我们继续的来聊SpringMVC的东西,下方我们将会聊到js、css这些静态文件的加载配置,以及服务器推送的两种实现方式。当然我们在服务器推送时,会用到JQuery的东西,所以我们先聊一下如何加载静态资 阅读全文
posted @ 2017-04-25 10:05 青玉伏案 阅读(4857) 评论(5) 推荐(8) 编辑
摘要: 上篇博客我们聊了《JavaEE开发之SpringMVC中的路由配置及参数传递详解》,本篇博客我们就聊一下自定义拦截器的实现、以及使用ModelAndView对象将Controller的值加载到JSTL上、最后再聊一下异常的捕获处理。这些在日常开发中都是经常使用的东西。具体请看下方内容。 一、自定义拦 阅读全文
posted @ 2017-04-21 09:44 青玉伏案 阅读(9973) 评论(1) 推荐(4) 编辑
摘要: 在之前我们使用Swift的Perfect框架来开发服务端程序时,聊到了Perfect中的路由配置。而在SpringMVC中的路由配置与其也是大同小异的。说到路由,其实就是将URL映射到Java的具体类中的具体方法,或者映射到具体的JSP文件上。本篇博客主要就阐述了如何在SpringMVC中配置路由以 阅读全文
posted @ 2017-04-18 09:24 青玉伏案 阅读(19791) 评论(0) 推荐(7) 编辑
摘要: 前几篇博客已经陆陆续续的聊了一些Spring的东西,今天博客我们就来聊一下SpringMVC。SpringMVC目前在JavaEE开发中可谓占据一席之地,用起来也是比较顺手的。低耦合,高内聚,利用一些注解以及Java配置类就能很好的实现解耦。今天我们就来看一下如何使用Maven来配置SpringMV 阅读全文
posted @ 2017-04-12 09:04 青玉伏案 阅读(3358) 评论(0) 推荐(9) 编辑
摘要: 上篇博客我们详细的聊了《JavaEE开发之Spring中的多线程编程以及任务定时器详解》,本篇博客我们就来聊聊条件注解@Conditional以及组合条件。条件注解说简单点就是根据特定的条件来选择Bean对象的创建。条件注解就是可以根据不同的条件来做出不同的事情。在Spring中条件注解可以说是设计 阅读全文
posted @ 2017-04-07 09:09 青玉伏案 阅读(10108) 评论(2) 推荐(8) 编辑
摘要: 上篇博客我们详细的聊了Spring中的事件的发送和监听,也就是常说的广播或者通知一类的东西,详情请移步于《JavaEE开发之Spring中的事件发送与监听以及使用@Profile进行环境切换》。本篇博客我们就聊一下Spring中的并发编程,看一下Spring中的多线程编程和任务的定时执行。下方我们就 阅读全文
posted @ 2017-04-05 09:36 青玉伏案 阅读(6902) 评论(3) 推荐(6) 编辑
摘要: 本篇博客我们就来聊一下Spring框架中的观察者模式的应用,即事件的发送与监听机制。之前我们已经剖析过观察者模式的具体实现,以及使用Swift3.0自定义过通知机制。所以本篇博客对于事件发送与监听的底层实现就不做过多赘述了。下方会给出Spring中是如何进行事件的发送与监听的。聊完事件的发送与监听, 阅读全文
posted @ 2017-04-01 09:03 青玉伏案 阅读(1691) 评论(1) 推荐(4) 编辑
摘要: 上篇博客我们聊了《JavaEE开发之Spring中的依赖注入以及AOP》,本篇博客我们就来聊一下Spring框架中的Bean的作用域以及Bean的Init和Destroy方法,然后在聊一下Spring中的EL表达式。在Spring框架中我们可以使用@Scope注解来指定我们定义的Bean的作用域。下 阅读全文
posted @ 2017-03-28 09:36 青玉伏案 阅读(5924) 评论(1) 推荐(7) 编辑
摘要: 上篇博客我们系统的聊了《JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建》,并在之前的博客中我们聊了依赖注入的相关东西,并且使用Objective-C的Runtime来实现了ObjC中的依赖注入,相关博客请参考《类比Spring框架来实现OC中的依赖注入》。当然之前 阅读全文
posted @ 2017-03-24 09:39 青玉伏案 阅读(6505) 评论(4) 推荐(8) 编辑
摘要: 本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project。本篇博客是JavaEE开发的开篇,也是基础。本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具来配置的环境。下方内容主要包括了JDK1.8的安装、JavaEE版本的Eclipse的安装、Mave 阅读全文
posted @ 2017-03-20 09:57 青玉伏案 阅读(9163) 评论(2) 推荐(7) 编辑
摘要: 上篇博客我们类比着Java的Spring框架中的依赖注入的实现方式,也试着使用Objective-C来写了一下OC中的依赖注入的实现方式。当然,我们是使用的PList文件来加载的依赖注入时用到的依赖关系。本篇博客我们就来实现一下OC中的AOP编程。上篇博客我们对AOP(Aspect Oriented 阅读全文
posted @ 2017-03-15 09:13 青玉伏案 阅读(2870) 评论(1) 推荐(3) 编辑
摘要: 如果你之前使用过JavaEE开发中的Spring框架的话,那么你一定对依赖注入并不陌生。依赖注入(DI: Dependency Injection)是控制反转(IoC: Inversion of Control)的实现方式之一,另外一种是依赖查找(DL: Dependency Lookup)。当然在 阅读全文
posted @ 2017-03-08 09:11 青玉伏案 阅读(2272) 评论(2) 推荐(3) 编辑
摘要: 本篇博客比较简单,但还是比较实用的。其中的示例依然使用Swift3.0来实现,该博客算是下篇博客的一个引子,因为我们下篇博客要介绍使用Swift开发iOS应用中常用的一些Extension。而在这些Extension中的Image Extension中会用到仿射变换的东西来对图片进行处理。所以本篇博 阅读全文
posted @ 2017-03-02 09:34 青玉伏案 阅读(1613) 评论(1) 推荐(3) 编辑
摘要: 经常有小伙伴私下在Q上问一些关于Runtime的东西,问我有没有Runtime的相关博客,之前还真没正儿八经的总结过。之前只是在解析第三方框架源码时,聊过一些用法,也就是这些第三方框架中用到的Runtime。比如属性关联,动态获取属性等等。本篇博客就针对Runtime这个主题来总结一些其常用的一些方 阅读全文
posted @ 2017-02-23 09:37 青玉伏案 阅读(5080) 评论(1) 推荐(3) 编辑
摘要: 本篇博客就来介绍一下iOS App中主题切换的常规做法,当然本篇博客中只是提到了一种主题切换的方法,当然还有其他方法,在此就不做过多赘述了。本篇博客中所涉及的Demo完全使用Swift3.0编写完成,并使用iOS的NSNotification来触发主题切换的动作。本篇博客我们先对我们的主题系统进行设 阅读全文
posted @ 2017-02-20 09:23 青玉伏案 阅读(5998) 评论(3) 推荐(3) 编辑
摘要: 前面几篇博客聊了HTTP的相关东西,今天就来聊一聊HTTPS的东西。因为HTTP协议本身存在着明文传输、不能很好的验证通信方的身份和无法验证报文的完整性等一些安全方面的确点,所以才有了HTTPS的缺陷。HTTPS确切的的说不是一种协议,而是HTTP + SSL (TSL)的结合体。HTTP报文经过S 阅读全文
posted @ 2017-02-14 09:21 青玉伏案 阅读(5047) 评论(5) 推荐(10) 编辑
摘要: 本篇博客我们就来详细的聊一下HTTP协议的常用头部字段,当然我们将其分为请求头和响应头进行阐述。下方是报文头每个字段的格式,首先是头部字段的名称,如Accept,冒号后方紧跟的是该字段名所对应的值,每个值之间有逗号分隔。如果该值需要优先级,那么在值的后方跟上优先级q=0.8(q的值由0~1,优先级从 阅读全文
posted @ 2017-02-10 09:26 青玉伏案 阅读(5660) 评论(1) 推荐(10) 编辑
摘要: 接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的。接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单的聊一下TCP/IP协议族,然后聊一下HTTP协议,然后再聊一下SSL上的HTTP(也就是HTTPS 阅读全文
posted @ 2017-02-03 08:44 青玉伏案 阅读(6382) 评论(15) 推荐(20) 编辑
摘要: Mac系统上虽然自带PHP和Apache,但是有时不是我们想要的版本呢。今天我们就在macOS Sierra(10.12.1)上安装比较新的版本的PHP版本,也就是PHP7.0+了。本篇博客我们安装的Apache是2.4的版本, MySQL5.7.16。稍后会详细介绍这一过程。 一、安装前的准备 1 阅读全文
posted @ 2017-01-22 09:07 青玉伏案 阅读(6375) 评论(3) 推荐(4) 编辑
摘要: 前边以及陆陆续续的介绍了使用Swift3.0开发的服务端应用程序的Perfect框架。本篇博客就做一个阶段性的总结,做一个完整的实例,其实这个实例在《Swift3.0服务端开发(一)》这篇博客中已经简单的介绍过了,本篇博客就来详细的聊一下这个工程的具体实现细节。当然包括iOS端和服务端的代码。本篇博 阅读全文
posted @ 2017-01-19 09:31 青玉伏案 阅读(3671) 评论(3) 推荐(5) 编辑
摘要: 本篇博客我们来聊聊MySQL数据库的连接与操作。如果你本地没有MySQL数据库的话,需要你先安装MySQL数据库。在Mac OS中使用brew包管理器进行MySQL的安装是及其方便的。安装MySQL的命令为:brew install mysql。本篇博客我们就要使用Perfect框架来连接操作数据库 阅读全文
posted @ 2017-01-16 09:22 青玉伏案 阅读(9276) 评论(2) 推荐(5) 编辑
摘要: 本篇博客主要介绍如果在Perfect工程中引入和使用Mustache页面模板与日志记录系统。Mustache页面模板类似于PHP中的smarty模板引擎或者Java中的JSTL标签。当然Mustache页面模板的功能要弱的多。Mustache页面模板的主要功能是将html页面中的标签变量(比如“{{ 阅读全文
posted @ 2017-01-13 09:04 青玉伏案 阅读(2599) 评论(8) 推荐(5) 编辑
摘要: 今天博客中就来聊一下Perfect框架的静态文件的添加与访问,路由的配置以及表单的提交。虽然官网上有聊静态文件的访问的部分,但是在使用Perfect框架来访问静态文件时还是有些点需要注意的,这些关键点在其官方文档上并未提出。今天我们要做的事情就是通过浏览器访问静态文件,然后在静态文件中使用form表 阅读全文
posted @ 2017-01-11 09:39 青玉伏案 阅读(3620) 评论(3) 推荐(3) 编辑
摘要: 本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客。当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现。Perfect框架是加拿大一个创业团队开发的,目前是Perfect2.0版本,关于Perfect框架,下方会详细的介绍。本篇博客会演示一个完整 阅读全文
posted @ 2017-01-05 09:32 青玉伏案 阅读(12345) 评论(18) 推荐(6) 编辑
摘要: 上篇博客《iOS可视化动态绘制八种排序过程》可视化了一下一些排序的过程,本篇博客就来聊聊图的东西。在之前的博客中详细的讲过图的相关内容,比如《图的物理存储结构与深搜、广搜》。当然之前写的程序是比较抽象的。上篇博客我们以可视化的方式看了一下各种排序的过程,今天博客中我们就来可视化的看一下图的相关部分, 阅读全文
posted @ 2016-12-29 09:13 青玉伏案 阅读(4500) 评论(9) 推荐(12) 编辑
摘要: 前面几篇博客都是关于排序的,在之前陆陆续续发布的博客中,我们先后介绍了冒泡排序、选择排序、插入排序、希尔排序、堆排序、归并排序以及快速排序。俗话说的好,做事儿要善始善终,本篇博客就算是对之前那几篇博客的总结了。而本篇博客的示例Demo也是在之前那些博客Demo的基础上做的,也算是集成了各种排序的方法 阅读全文
posted @ 2016-12-23 09:28 青玉伏案 阅读(4348) 评论(10) 推荐(5) 编辑
摘要: 前面几篇博客我们已经陆陆续续的为大家介绍了7种排序方式,今天博客的主题依然与排序算法相关。今天这篇博客就来聊聊基数排序,基数排序算法是不稳定的排序算法,在排序数字较小的情况下,基数排序算法的效率还是比较高的。今天就来聊一下基数排序算法的原理以及代码的具体实现。 一、基数排序算法示意图 下方的基数排序 阅读全文
posted @ 2016-12-21 09:41 青玉伏案 阅读(4417) 评论(0) 推荐(2) 编辑
摘要: 上篇博客我们主要聊了比较高效的归并排序算法,本篇博客我们就来介绍另一种高效的排序算法:快速排序。快速排序的思想与归并排序类似,都是采用分而治之的方式进行排序的。快速排序的思想主要是取出无序序列中第一个值,然后通过比较将比该值小的元素放到该值的前方,将比该值大的元素放在该值的后方。这样一来该值前方的数 阅读全文
posted @ 2016-12-19 09:38 青玉伏案 阅读(4673) 评论(0) 推荐(7) 编辑
摘要: 上篇博客我们主要聊了堆排序的相关内容,本篇博客,我们就来聊一下归并排序的相关内容。归并排序主要用了分治法的思想,在归并排序中,将我们需要排序的数组进行拆分,将其拆分的足够小。当拆分的数组中只有一个元素时,则这个拆分的数组是有序的。然后我们将这些有序的数组进行两两合并,在合并过程中进行比较,合并生成的 阅读全文
posted @ 2016-12-16 10:04 青玉伏案 阅读(2299) 评论(0) 推荐(5) 编辑
摘要: 上篇博客主要讲了冒泡排序、插入排序、希尔排序以及选择排序。本篇博客就来讲一下堆排序(Heap Sort)。看到堆排序这个名字我们就应该知道这种排序方式的特点,就是利用堆来讲我们的序列进行排序。“堆”其实就是一种有着特定结构的完全二叉树,下方将会详细的介绍一下堆。本篇博客讲的就是堆排序,首先我们先对大 阅读全文
posted @ 2016-12-12 09:36 青玉伏案 阅读(3907) 评论(0) 推荐(3) 编辑
摘要: 本篇博客中的代码实现依然采用Swift3.0来实现。在前几篇博客连续的介绍了关于查找的相关内容, 大约包括线性数据结构的顺序查找、折半查找、插值查找、Fibonacci查找,还包括数结构的二叉排序树以及平衡二叉树的构建与查找,然后还聊了哈希表的构建与查找。接下来的几篇博客中我们就集中的聊一下常见的集 阅读全文
posted @ 2016-12-08 10:47 青玉伏案 阅读(6170) 评论(5) 推荐(5) 编辑
摘要: 散列表又称为哈希表(Hash Table), 是为了方便查找而生的数据结构。关于散列的表的解释,我想引用维基百科上的解释,如下所示: 散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一 阅读全文
posted @ 2016-12-01 10:18 青玉伏案 阅读(5654) 评论(4) 推荐(4) 编辑
摘要: 今天的博客是在上一篇博客的基础上进行的延伸。上一篇博客我们主要聊了二叉排序树,详情请戳《二叉排序树的查找、插入与删除》。本篇博客我们就在二叉排序树的基础上来聊聊平衡二叉树,也叫AVL树,AVL是发明平衡二叉树的两个科学家的名字的缩写,在此就不做深究了。其实平衡二叉树就是二叉排序树的一种,比二叉排序树 阅读全文
posted @ 2016-11-23 10:15 青玉伏案 阅读(1830) 评论(0) 推荐(6) 编辑
摘要: 在上一篇博客中,我们主要介绍了四种查找的方法,包括顺序查找、折半查找、插入查找以及Fibonacci查找。上面这几种查找方式都是基于线性表的查找方式,今天博客中我们来介绍一下基于二叉树结构的查找,也就是我们今天要聊的二叉排序树。今天主要聊的是二叉排序树的查找、插入与删除的内容,二叉排序的创建过程其实 阅读全文
posted @ 2016-11-18 09:20 青玉伏案 阅读(26558) 评论(8) 推荐(16) 编辑
摘要: 今天这篇博客就聊聊几种常见的查找算法,当然本篇博客只是涉及了部分查找算法,接下来的几篇博客中都将会介绍关于查找的相关内容。本篇博客主要介绍查找表的顺序查找、折半查找、插值查找以及Fibonacci查找。本篇博客会给出相应查找算法的示意图以及相关代码,并且给出相应的测试用例。当然本篇博客依然会使用面向 阅读全文
posted @ 2016-11-15 09:19 青玉伏案 阅读(3603) 评论(1) 推荐(7) 编辑
摘要: 上篇博客我们介绍了AOV网的拓扑序列,请参考《数据结构(七) AOV网的拓扑排序(Swift面向对象版)》。拓扑序列中包括项目的每个结点,沿着拓扑序列将项目进行下去是肯定可以将项目完成的,但是工期不是最优的。因为拓扑序列是一个串行序列,如果按照该序列执行项目,那么就是串行执行的。我们知道在一个项目中 阅读全文
posted @ 2016-11-10 09:23 青玉伏案 阅读(5600) 评论(0) 推荐(6) 编辑
摘要: 今天博客的内容依然与图有关,今天博客的主题是关于拓扑排序的。拓扑排序是基于AOV网的,关于AOV网的概念,我想引用下方这句话来介绍: AOV网:在现代化管理中,人们常用有向图来描述和分析一项工程的计划和实施过程,一个工程常被分为多个小的子工程,这些子工程被称为活动(Activity),在有向图中若以 阅读全文
posted @ 2016-11-08 09:21 青玉伏案 阅读(4148) 评论(2) 推荐(7) 编辑
摘要: 上篇博客我们详细的介绍了两种经典的最小生成树的算法,本篇博客我们就来详细的讲一下最短路径的经典算法 迪杰斯特拉算法。首先我们先聊一下什么是最短路径,这个还是比较好理解的。比如我要从北京到济南,而从北京到济南有好多条道路,那么最短的那一条就是北京到济南的最短路径,也是我们今天要求的最短路径。 因为最短 阅读全文
posted @ 2016-11-02 10:30 青玉伏案 阅读(3678) 评论(0) 推荐(5) 编辑