上一篇博客介绍了springboot自动装配的原理.springboot本身有丰富的spring-boot-starter-xx集成组件,这一篇趁热打铁加深理解,我们利用springboot自动装配的机制,从零开始制作一个属于自己的starter包. 制作一个starter包思路 ​这一篇博客我制作一个上传图片第三方图床的starter,集成常见的第三方图床sm.ms.imgur.github图床等. ​本教程不会具体的讲解图床上传相关的代码,而是主要分析封装此starter的思路. 首先安装s…
当你的APP需要一些新功能时,自定义UI控件会十分有用,尤其是这些自定义控件可以在其他APP里面很好的重用.Colin Eberhart写过一篇很棒的介绍自定义UI控件的教程.这个教程涉及的是一个继承自UISlider类的自定义控件的生成:该控件的功能是给定一个(滑动)范围供(用户滑动)选择,并返回一个(与滑动位置相对应的)固定值. 本篇基于iOS 7的自定义UI教程在Colin Eberhart那篇的基础上更深入一步:受调音台旋钮的启发,这里介绍如何制作一个功能类似UISlider的圆形旋转控…
从上一篇文章<深入springboot原理——一步步分析springboot启动机制(starter机制)> 我们已经知道springboot的起步依赖与自动配置的机制.spring-boot-starter-xxx是官方提供的starter,xxx-spring-boot-starter是第三方提供的starter.starter.jar提供jar引入,autoconfigure.jar实现自动配置.下面我们就来封装一个自己的starter. 准备要封装的组件 新建组件com-itpsc-s…
       Solr是Apache Lucene的一个子项目.Lucene为全文搜索功能提供了完备的API.但它仅仅作为一个API库存在.而不能直接用于搜索. 因此,Solr基于Lucene构建了一个完整的搜索引擎.它能够为搜索引擎加入文档.对文档内容进行分析,并为用户提供搜索功能,在此基础上提供了一个扩展功能,如hit highline, suggetion等. 一.概述   (一)基础内容      1.Solr的版本与Lucene的版本保持一直,直到2014年7月,最新版本为4.9.0.…
注1:本文译自Sprite Kit Tutorial: Making a Universal App: Part 2 目录 动画的定义:可行性 属性列表 添加游戏逻辑 添加音效 何去何从 上一篇文章中,创建了一个基本的游戏程序:一些可爱的鼹鼠从洞里面跳出来.并且为了能够让程序很好的运行在iPhone 3.5英寸,iPhone 4英寸,iPad和iPad Retina上,还花费了大量的篇幅介绍UI设计和坐标系相关知识. 本文,将给鼹鼠添加一些可爱的动画:笑和被打时的表情,并添加一种玩法:可以通过敲…
制作本地yum源有两种方式,第一种是使用光盘镜像,然后在本地进行安装.第二种是我们自己创建一个本地yum仓库,然后使用file的形式来向本地提供yum repo(也可以使用http的方式向外部提供,我们这里就自己给自己创建yum仓库) 1.把从网上下载的rpm包放在本地的某个文件夹里面 我们可以这样子下载,使用yum下载rpm包但是并不安装 yum groupinstall "Development tools" --downloadonly --downloaddir=./ [roo…
相信无论是前端还是后端开发,都或多或少地被接口文档折磨过.前端经常抱怨后端给的接口文档与实际情况不一致.后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新.其实无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档. SpringBoot集成Swagger能够通过很简单的注解把接口描述清楚,生成可视化文档页面. 原生的Swagger-ui界面很粗糙,这里用knife4j-spring-ui替代. 一个好的HTTP接口文档描述 写清楚接口的请求路径: QueryPath: /use…
spring Boot采用约定优于配置的方式,大量的减少了配置文件的使用.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. 当springboot启动的时候,默认在容器中注入许多AutoCongfigution类.在我们加入spring-boot-stareter-xx时,XXXAutoConfiguration类根据对应的条件,自动选择装配对应的Bean实例注入IOC容器中. 先说结论 SpringBoot启动的时候加载主配置类,开启了自动配置功能@EnableAut…
一.高速入门 1.Tika是一个用于文本解释的框架.其本身并不提供不论什么的库用于解释文本,而是调用各种各样的库,如POI,PDFBox等. 使用Tika.能够提取文件里的作者.标题.创建时间.正文等内容,相比于java.io自带的一些功能(如FileInputStream,FIleReader,Scanner等): (1)若文档为纯文本,如txt,html,java文件等.则二者对于文件内容的提取基本无区别,都可将内容呈现出来. (2)若文档为富文本,如office,pdf等.使用java.i…
1. 模块 在python中一个文件可以被看成一个独立模块,而包对应着文件夹,模块把python代码分成一些有组织的代码段,通过导入的方式实现代码重用. 1.1 模块搜索路径 导入模块时,是按照sys.path变量的值搜索模块,sys.path的值是包含每一个独立路径的列表,包含当前目录.python安装目录.PYTHONPATH环境变量,搜索顺序按照路径在列表中的顺序(一般当前目录优先级最高). >>> import sys >>> sys.path ['', 'E:…