魅蓝note3和魅蓝note5怎么用影梭

标准的UICollectionView包含三个部分,它们都是UIView的子类: Cells 用于展示内容的主体,对于不同的cell可以指定不同尺寸和不同的内容,这个稍后再说 Supplementary Views 追加视图 如果你对UITableView比较熟悉的话,可以理解为每个Section的Header或者Footer,用来标记每个section的view Decoration Views 装饰视图 这是每个section的背景 UICollectionViewDataSource(与数据相关) section的数量 -numberOfSectionsInCollection: 某个section里有多少个item -collectionView: numberOfItemsInSection: 对于某个位置应该显示什么样的cell -collectionView: cellForItemAtIndexPath: Supplementary View的方法 collectionView: viewForSupplementaryElementOfKind: atIndexPath: UICollectionViewDelegate(与数据无关) 关于用户交互,UICollectionView也做了改进。每个cell现在有独立的高亮事件和选中事件的delegate,用户点击cell的时候,现在会按照以下流程向delegate进行询问: -collectionView:shouldHighlightItemAtIndexPath: 是否应该高亮? -collectionView:didHighlightItemAtIndexPath: 如果1返回结果为是,那么高亮 -collectionView:shouldSelectItemAtIn...
今天访问 我的 wordpress 网站时发现出问题了,一直都是 service unavailable,错误码 503,无法访问。 因为前些天整了一些插件,我以为是插件的问题,用 putty 登录腾讯云后台,先是简单用“service httpd restart” 重启了一下 apache 服务器,问题依旧。 于是又重启了一下云服务器,还是不行!看来问题有点麻烦。 只好跑到 apache 的安装目录下的 logs 文件夹下查看日志,发现 access_log 和 error_log 两文件大小居然都高达 100 多M,看来很不妙,因为我的网站目前并没有什么人访问,主要是自己弄着玩,不可能有如此之大的日志。 查看 access_log 后发现有一个 ip 大量的 post 请求到 xmlrpc.php 上: 191.96.249.70 - - [14/Feb/:50 +0800] "POST /xmlrpc.php HTTP/1.0" 503 299 如下图所示,连续不断地 post: 行数居然已经到了 100 多万行,汗…… 查询一下 ip 191.96.249.70,居然是来自塞舌尔: 显然如果不是主动攻击就是肉鸡了,无语呀!就是这一 DDoS 攻击把服务器给弄垮了。 网上一些说法是想通过这一方式暴力破解密码,建议关闭 xmlrpc 功能,不过我还想用这一功能,所以决定先 ban 掉这个 ip。 找到问题根源后,去到腾讯云管理中心后台,在 安全组...
ImageIO框架提供了读取与写入图片数据的基本方法,通过它可以实现对图片数据的深入分析与内容修改。
本文整理了一些优秀的 Go 存储相关开源项目和库。
近年来,云计算开源技术逐渐成为云计算发展的重要支撑和导向,改变了以往的信息技术进化模式,引领软件技术标准的发展和创新,深刻影响着整个信息技术产业的发展格局。为进一步探索我国云计算开源技术发展模式,加速云计算与各行业的深度融合,更好地发挥云计算在经济社会创新发展中的支撑和引领作用,促进我国云计算产业快速、健康发展。
前三章的内容是为方便想在短时间内马上用上Kotlin的人,例如作为一个刚入职的新人,公司的代码已经是用Kotlin编写了,你应该如何更快的融入与适应。
本文主要介绍Mybatis的一级缓存、二级缓存,包括它们的原理、应用等,以及如何使用自定义的Cache。
最近有一款游戏特别的火爆,叫做 Steve ,一种可以在通知中心直接玩的游戏。作者的脑洞也是非常的大,实在让人佩服。其实实现起来也简单,就是用到了 iOS8 新特性 app extension(Today extension),我们先来看看 Steve 这图的效果: 我打算把一个曾经很火爆的开源游戏移植成控制中心的游戏。没错就是它 FlappyBird 传送门 首先我们来看以下效果。 flappybirdNC.gif extension 支持以下几种 Action 扩展 - 点击 Action 按钮后通过判断上下文来将内容发送到应用 Today 扩展 - 通知中心的 "Today" 的面板中添加一个 widget Share 扩展 - 点击分享按钮后将网站或者照片通过应用分享 Photoshop edit 扩展 - 编辑系统照片的扩展 Document 扩展 - 提供和管理文件内容 Custom Keyboard - 替代系统键盘的扩展自定义键盘或输入法 我们需要创建 Today extension,today extension 就是在下拉通知栏下面添加应用扩展。如下图所示。 1. 新建工程 创建工程。 2. 新建一个Today Extension targets ,如下图所示 可以看到工程中多了扩展项目,扩展项目下有一个 MainInterface.storyboard,这个 .storyboard 的就是要展示在 Today 通知中心的内容(突然感觉整个世界都清晰了,直接在这个 Vi...
这篇文章来自于2016年年会上我和大家的分享。 自从2010年创业至今,已有七年。人常说有七年之痒,创业也不例外。我最近经常在思考:我们团队的价值是什么?下一步的发展方向是什么? 我如何给团队的成员创造更广阔的空间呢?这些问题思考了很久,一直萦绕在心头,郁郁不畅。 春节前,微信小程序发布,腾讯的墙又砌了一道。有感于微信的封闭,还和几位朋友争论过一番。也恰恰是这次契机,让我最终悟到了开源软件的最终价值。 我们通常所能看到的开源软件的价值是实用层面的。 比如我可以免费的使用开源软件,节省我的金钱。 我可以修改开源软件,以让其适应个性化的需求。 我可以从开源软件中学习知识,以提高个人的技能等等。 这些实用层面的价值大家很容易看得到。我这几年创业坚持做开源软件,目的也是为了给用户提供好用的开源软件,也是从实用角度出发的。直到今年年会,和朋友的一些讨论,最终让我悟到了开源软件的最终价值:那就是为用户保留一个选择,让用户还可以有自由选择的权利。 如果没有linux和bsd这样的自由操作系统,很难想像我们现在在用什么。 也正因为有了linux,我们才能有安卓系统,也才有了国内的小米、华为厂商的崛起。 自由选择的权利,大家往往会忽...
一个sql mapping 框架。
最近因为安全要求对原本`http` 访问的marathon 配置为`https`访问,这里主要说明采用**rpm** 安装的marathon https访问配置, 以下是配置过程和说明
开源项目在国外已经成为了一股热潮,已经开始影响到日常生活的方方面面,可是在中国,开源项目的使用者不少,贡献者却寥寥无几,但同时有很多人想要参加开源项目,却总是不得其门而入……无论你是久经沙场的编程老手还是初入门道的技术小白,或者压根就不是一个程序猿,都有不写代码而为开源项目作出贡献的方法。 与非自由软件相比,开源项目的非工程贡献往往相对缺乏,所以不要因为你不是一个程序员就逃避开源,说不定你的博客帖子或设计技能对于项目来说比一行代码有意义多了。 下面有几种不写代码也能为开源项目做贡献的方式,赶紧参与到开源中来吧: 拥护 最简单的为开源项目作出贡献的方法就是成为开源技术的忠实用户。 忠实用户的意思是使用开源应用,并且有选择的情况下尽量选择开源软件(或者至少试试开源软件)。比如,当你所在的组织考虑用一款非自由软件来解决某个问题时,先试试搜索支持一下类似的开源软件吧。 不同于 SAAS(软件即服务),开源软件可以安装在你自己的服务器上(或者你公司的数据中心)。隐私,安全,可定制化通常是开源软件的核心优点。 谷歌一下“open source alternative to X”(替代X的开源软件,强烈建议使用英文谷歌)是一个找到像
Unity适配Android6.0权限管理,在使用权限时候弹出权限确认
学习任务目标 ---- 1. 用户必须要登陆之后才能访问定义链接,否则跳转到登录页面。 2. 对链接进行权限控制,只有当当前登录用户有这个链接访问权限才可以访问,否则跳转到指定页面。 3. 输入错误密码用户名或则用户被设置为静止登录,返回相应json串信息。 & 我是用的是之前搭建的一个springboot+mybatisplus+jsp的一个基础框架。在这之上进行shiro的整合。需要的同学可以去我的码云下载。 个人博客:[http://z77z.oschina.io/](http://z77z.oschina.io/) 此项目下载地址:[https://git.oschina.net/z77z/springboot_mybatisplus](https://git.oschina.net/z77z/springboot_mybatisplus) 导入shiro依赖包到pom.xml ------------------ ```xml org.apache.shiro shiro-spring 1.3.2 ``` 采用RBAC模式建立数据库 ------------- & RBAC 是基于角色的访问控制(Role-Based Access Control )在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便。 ```xml /*表结构插入*/ DROP TABLE IF EXISTS `u_permission...
MQTT(MessageQueueing Telemetry Transport Protocol)的全称是消息队列遥感传输协议的缩写,是由IBM公司推出的一种基于轻量级代理的发布/订阅模式的消息传输协议,运行在TCP协议栈之上,为其提供有序、可靠、双向连接的网络连接保证。由于其开放、简单和易于实现所以能够应用在资源受限的环境中,对于M2M和物联网应用程序来说是一个相当不错的选择。
我想要实现这样的功能,只要我 `push` 代码到 [github](/k55k32/cms-front)仓库中,那么我的服务器就会自动执行预先写好的脚本。 类似于: 1. 拉取最新代码 2. 更新项目依赖 3. 编译 4. 重启项目 有很多持续集成工具都可以实现这样的功能,可是我的服务器内存小呀,没那么多资源去部署一个持续化集成工具了,只能自己写一个轻量级工具来完成这项工作。 ## Github Webhooks 详解 我们每个github仓库可以都在 `Settings -& Webhooks -& Add webhooks` 配置 `Webhooks`。配置这个的作用就是让代码库有某些动作的时候,将这些信息提交到我们指定的服务器地址上。 我个人代码库的配置信息如下 ![alt](/img/ccab3b20-1528-42bd-a70b-65bd) ### Payload URL 用于接收 `Webhook` 请求的接口地址 ### Content type 请求时数据类型,有两种可选 1. `application/json`,返回类似 `{ key1: value, key2: value ...}` 的json串 2. `application/x-www-form-urlencoded `, 返回类似 `key1=value1&key2=value2...` 的键值对 ### Secret 为了让我们自身服务器信任这次请求不是伪造的,我们会在配置 `Webhooks` 的时候填写一个 `S...
hadoop学习笔记 ,文档中所示例的项目的地址 https://git.oschina.net/weiwei02/WHadoop
酱油一篇,整理一下关于Spring Boot后台运行的一些配置方式。在介绍后台运行配置之前,我们先回顾一下Spring Boot应用的几种运行方式: - 运行Spring Boot的应用主类 - 使用Maven的Spring Boot插件`mvn spring-boot:run`来运行 - 打成jar包后,使用`java -jar`运行 我们在开发的时候,通常会使用前两种,而在部署的时候往往会使用第三种。但是,我们在使用`java -jar`来运行的时候,并非后台运行。下面我们分别针对Windows和Linux/Unix两种环境,整理一下如何配置后台运行的方法。 ## Windows Windows下比较简单,我们可以直接使用这款软件:`AlwaysUp`。如下图所示,简单、暴力、好用。 ![输入图片说明](https://static.oschina.net/uploads/img/B.png "在这里输入图片标题") 配置方式很简单,我们只需要把Spring Boot应用通过`mvn install`打成jar包,然后编写一个`java -jar yourapp.jar`的bat文件。再打开`AlwaysUp`,点击工具栏的第一个按钮,如下图所示,选择上面编写的bat文件,并填写服务名称。 ![输入图片说明](https://static.oschina.net/uploads/img/13417_TI8z.png "在这里输入图片标题") 完成了创建之后,在列表中可以看到我们...
Kubernetes Resource QoS介绍,机制解析和简单的源码分析。
group分组统计是数据库比较常用的功能,mongodb也不例外。不过相对于普通的增删改查,group操作就略微麻烦一些, 这里对group在shell中的操作、使用java原生代码操作以及集成spring进行操作进行一个简单的归纳总结,分组的途径和方法应该都有多种,这里每一样只举一例。 本例中数据源如下: 需要使用group实现的目的是:按年龄分组统计出每一组的数量。 1、mongo shell中执行如下命令: db.test.group({
key:{"age":1},
initial:{"count":0},
$reduce:function(doc,out){ out.count++; } ,
$finalize:function(out){ }
) 执行代码及结果如图: 2、java原生代码进行上述操作: public class MonTest {
public static void main(String[] args) {
monGroup();
public static void monGroup() {
ServerAddress sa = new ServerAddress("192.168.0.201", 37017);
List&MongoCredential& mongoCredentialList = new ArrayList&MongoCredential&();
mongoCredentialList.add(MongoCredential.createMongoCRCredential("admin", "admin", "123456".toCharArray()));
Mongo client = new Mon...
阿里巴巴集团推出的《阿里巴巴Java开发手册(正式版)》是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效、更加容错、更加有协作性,力求知其然,更知其不然,结合正反例,让Java开发者能够提升协作效率、提高代码质量。
Jflow ccflow工作流引擎烟台培训邀请函 各位jFlow, CCFlow 爱好者:
驰骋工作流程引擎是国内开源很成功的一款工作流程引擎,广泛应用于大型集团企业、机关事业单位、部队军区、保密军工行业。设计精巧、功能强大、极高的可配置性、概念名词通俗易懂、成长于中国生产制造、管理审批特有的环境下,深的国内开发者追崇,拥有众多的成功案例:http://ccflow.org/Case.aspx。 驰骋工作流引擎具有.net与java两个版本,代码&数据库解构,设计思想,功能,操作手册,完全相同. 流程表单模版完全通用。 我们定于{号上午}起到{2月22号下午}止,在{烟台}培训,欢迎各位新老用户报名参与。
我们将对如下用户提供免费培训,请提前预约。 1,
jflow, ccflow的老用户,新进的员工,我们将免费提供二次培训。 2,
评估选型的用户, 需要遵守驰骋公司的评估选型协议。 http://ccflow.org/Site/License.aspx
3,有一定贡献的开源软件作者。
我们将对小微企业提供有偿的收费服务培训: 符合小微企业标准,将不按照12万的最低标准计算, 我们会根据项目情况进行收费,这类的用户我们将会提供如下服务。 1,
全方位的培训,享受大企业一样的培训效果。 2,
近年来,云计算开源技术逐渐成为云计算发展的重要支撑和导向,改变了以往的信息技术进化模式,引领软件技术标准的发展和创新,深刻影响着整个信息技术产业的发展格局。为进一步探索我国云计算开源技术发展模式,加速云计算与各行业的深度融合,更好地发挥云计算在经济社会创新发展中的支撑和引领作用,促进我国云计算产业快速、健康发展。
今天访问 我的 wordpress 网站时发现出问题了,一直都是 service unavailable,错误码 503,无法访问。 因为前些天整了一些插件,我以为是插件的问题,用 putty 登录腾讯云后台,先是简单用“service httpd restart” 重启了一下 apache 服务器,问题依旧。 于是又重启了一下云服务器,还是不行!看来问题有点麻烦。 只好跑到 apache 的安装目录下的 logs 文件夹下查看日志,发现 access_log 和 error_log 两文件大小居然都高达 100 多M,看来很不妙,因为我的网站目前并没有什么人访问,主要是自己弄着玩,不可能有如此之大的日志。 查看 access_log 后发现有一个 ip 大量的 post 请求到 xmlrpc.php 上: 191.96.249.70 - - [14/Feb/:50 +0800] "POST /xmlrpc.php HTTP/1.0" 503 299 如下图所示,连续不断地 post: 行数居然已经到了 100 多万行,汗…… 查询一下 ip 191.96.249.70,居然是来自塞舌尔: 显然如果不是主动攻击就是肉鸡了,无语呀!就是这一 DDoS 攻击把服务器给弄垮了。 网上一些说法是想通过这一方式暴力破解密码,建议关闭 xmlrpc 功能,不过我还想用这一功能,所以决定先 ban 掉这个 ip。 找到问题根源后,去到腾讯云管理中心后台,在 安全组...
答复网友对jflow ccflow常见问题.
基于接口的调用远比基于基础消息交互来得更简单和便于维护,特别在业务展现上,接口作为业务表现更适合其便利性。为了让SmartRoute更适合业务应用集成,在新的一年开始SmartRoute集成了远程接口调用功能。基于SmartRoute的基础特性,在这基础上扩展的接口调用会变得更简单灵活,其特别点如下:并不需要知道服务地址,只需要明确接口和方法即可以实现远程服务调用;无需任何配置即可实现负载和故障迁移。而这一系列的更利功能都归攻于SmartRoute基础建设!
SmartRoute的远程接口调用是基于Protobuf的RPC实现,其制定服务是以接口为基础有点似于wcf,但调会变得更透明简单.以下针对组件实现一个简单的远程接口调用和负载处理。 接口定义
组件对接口的定义并没有什么特别要求或添加特性,但接口方法的定义不支持同名称重载,现有版本的组件暂不支持。对于out和ref类型的参数也暂不支持。以下是定义一个简单的用户操作接口:
public interface IUserService
DateTime Register(string name, string email);
void ChangePWD(string name, string oldpwd, string newpwd);
} 注册口服务
接口定义后需要...
Activity是Android组件中最基本也是最常见用的四大组件。 Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。 Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。 在一个android应用中,一个activity通常就是也该单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。activity之间通过intent进行通信。 package com.itcast.
import android.app.A
import android.os.B
import android.util.L
public class MainActivity extends Activity {
private static final String TAG = "MainActivity";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.v(TAG,"onCreate()");
protected void onStart() {
super.onStart();
Log.v(TAG, "onStart()");
protected void onRestart() {
super.onRestart();
使用java和javascript的AES技术实现web前后端数据加密处理
"xmlns"是XHTML namespace的缩写,叫做"名字空间"声明。名字空间是什么作用呢?我的理解是: 由于xml允许你自己定义自己的标识,你定义的标识和其他人定义的标识有可能相同,但表示不同的意义。当文件交换或者共享的时候就容易产生错误。为了避免这种错误发生,XML采用名字空间声明,允许你通过一个网址指向来识别你的标识。
比如在一个文档&table&wood table&/table&中&table&表示桌子,而在另一个文档&table&namelist&/table&中&table&表示表格。如果我需要同时处理这两个文档,就会发生名字冲突。为了解决这个问题,我们引进了namespaces这个概念。namespaces通过给标识名称加一个网址(URL)定位的方法来区别这些名称相同的标识。
Namespaces同样需要在XML文档的开头部分声明,声明的语法如下:
&document xmlns:yourname='URL'& 其中yourname是由你定义的namespaces的名称,URL就是名字空间的网址。
假设上面的"桌子&table&"文档来自/,我们就可以声明为
&document xmlns:zhuozi=''&; 然后在后面的标识中使用定义好的名字空间:
&zhuozi:table&wood table&/table&
这样就将这两个&table&区分开来。注意的...
很多同学可能不明白看板管理究竟是什么,别急,下面这两个场景你肯定看到过: 什么是看板管理? 没错,这其实就是KanBan(看板),也叫“看板管理”(来自日语“看板”, カンバン)是丰田生产模式中的重要概念,指为了达到准时生产方式(JIT) 控制现场生产流程的工具,一般常见于生产系统,比如工厂车间或传统IT软件开发…… 大家常见的应该是实体看板,适合布置在团队所有成员都在一个办公室工作的环境。它的优点很明显,方便工作成员展示和查看自己的任务以及进度,可以提高员工间的相互竞争意识;但缺点也很致命,没有历史记录无法查看之前的工作内容。 瀑布模型VS敏捷模型 现在被大众使用最多的是云看板,尤其在互联网服务开发中用于项目管理。而互联网开发项目管理常见的有瀑布模型和敏捷模型,瀑布型项目管理实施的对象是应用本身,它以整个应用的完整发布为目标,发布周期最短以月为单位,不够灵活。历史上因为项目实施过程中遇到市场环境变化,而无法快速响应变化导致失败的项目数不胜数。 敏捷项目的目标是“快速交付有价值产品”,应用在实施时,会对其进行合理的拆解,比如应用—功能—用户故事—任务。这样就要求从大而全的应用中找到当下用户最期望获得的...
终究英雄迟暮,才过几十年,技术日新月异,像现在 iPhone 6 每秒能响应 250 亿条指令;另外中国新晋超级计算机“神威·太湖之光”去年更是荣登超算领域榜首,运算速度高达 93 petaflop(每秒运算一千万亿次),理论最高速达 125.4 petaflops。不过 ENIAC 开启了计算机技术奔腾的闸门,这点不仅是在情人节,无论何时都会在历史的长河熠熠生辉。/question/1b8v2f4d8n2902atgmo9h9r19j0ipcqdmajo6 /question/1b8v2f4d8n2902atgmo9h9r19j0ipcqdmajo6?&qx17=zsin /question/1b8v2f3e0id4jtl62lt5815tchda /question/1b8v2f3e0id4jtl62lt5815tchda?&jm16=goxb /question/1b8v2f1fglob0u6c3g164ick7ejs6a3ogcjfm /question/1b8v2f1fglob0u6c3g164ick7ejs6a3ogcjfm?&ic04=oknb /question/1b8v2euhoi4avo5pp0p9h3kv6ptd3isb8chb2 /question/1b8v2euhoi4avo5pp0p9h3kv6ptd3isb8chb2?&gi91=jokq /question...
Flex七宗罪
我的Flex之旅
2009年开始接触Flex,到现在已经5年之久。5年间,完整经历Flex由盛到衰的全过程。想起那句经典:眼见它起高楼,眼见它宴宾客,眼见它楼塌了。想起那些倾注在Flex上面的心血,想起那些debug到凌晨的日子,我只想说:Fuck you Adobe!
这5年间,写了大量Flex和AS3代码,从当年在亚联算起,少说也得有5万行。2011年我在javaeye上发过一个系列帖《我参与的“云计费”项目前台Flex架构》,点击量近两万,足以说明Flex在当时是多么炙手可热,这篇帖子也是小僧第一篇点击量过万的帖子。有兴趣的道友可以点击进去看看/blog/1054664。
不扯了,上一些图,给各位道友展示一下这几年搞过的Flex相关的东西,小僧先上为敬:
13张图,足以说面这些年我在Flex这个方面做过的东西,踩过的坑,熬过的夜,抽过的烟,写过的代码。
这些图里面有一些东西目前公司还在用,所以这里就不解释了,各位道友也不要问我怎么去实现这些东西。
一把辛酸泪,什么都不...
&!DOCTYPE html&
&meta charset="UTF-8"&
&title&&/title&
&link rel="stylesheet" href="styles/demo.css" /&
&div id="app"&
&fieldset&
Create New Person
&div class="form-group"&
&label&Name:&/label&
&input type="text" v-model="newPerson.name"/&
&div class="form-group"&
&label&Age:&/label&
&input type="text" v-model="newPerson.age"/&
&div class="form-group"&
&label&Sex:&/label&
&select v-model="newPerson.sex"&
&option value="Male"&Male&/option&
&option value="Female"&Female&/option&
&div class="form-group"&
&label&&/label&
&button @click="createPerson"&Create&/button&
&/fieldset&
&th&Name&/th&
&th&Age&/th&
&th&Sex&/th&
&th&Delete&/th&
&tr v-for="person in people"&
&td&{{ person.name }}&/td&
策略模式,他定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响到算法客户(大话设计模式)。
标准的UICollectionView包含三个部分,它们都是UIView的子类: Cells 用于展示内容的主体,对于不同的cell可以指定不同尺寸和不同的内容,这个稍后再说 Supplementary Views 追加视图 如果你对UITableView比较熟悉的话,可以理解为每个Section的Header或者Footer,用来标记每个section的view Decoration Views 装饰视图 这是每个section的背景 UICollectionViewDataSource(与数据相关) section的数量 -numberOfSectionsInCollection: 某个section里有多少个item -collectionView: numberOfItemsInSection: 对于某个位置应该显示什么样的cell -collectionView: cellForItemAtIndexPath: Supplementary View的方法 collectionView: viewForSupplementaryElementOfKind: atIndexPath: UICollectionViewDelegate(与数据无关) 关于用户交互,UICollectionView也做了改进。每个cell现在有独立的高亮事件和选中事件的delegate,用户点击cell的时候,现在会按照以下流程向delegate进行询问: -collectionView:shouldHighlightItemAtIndexPath: 是否应该高亮? -collectionView:didHighlightItemAtIndexPath: 如果1返回结果为是,那么高亮 -collectionView:shouldSelectItemAtIn...
无论是Google, Youtube还是百度,当我们用“android studio opencv”类似这样的关键词去搜索如何在Android Studio调用调用opencv时,几乎所有的博客所用的方法都是如“useDeprecatedNdk”,或者还需要配置“Android.mk”这些方法,随着Android Studio不断对C++支持方法的更新,我们也需要新的引用OpenCV的方式,上一篇转发了关于Google官方最新使用Android Studio配置C++的方法,本文将继续添加调用OpenCV中java和C++模块。
好久没有冒泡了,最近公司开发模式变成了敏捷开发,技术人员的时间已经成为压缩饼干了,没有太多的事情去整理在开发中遇到的问题和使用到的技术点了.今天有一点点事件来整理了开发中用到的一个知识点,网上图片保存,或者本地图片保存到指定文件夹. public class ImageHelper {
private Context mC
private static ImageHelper instance =
public synchronized static ImageHelper getInstance(Context context) {
if (instance == null) {
instance = new ImageHelper(context.getApplicationContext());
private ImageHelper(Context context) {
mContext =
public Bitmap loadImage(String filePathOrUrl) throws ClientProtocolException, IOException, HttpRequestException {
Bitmap ret =
if (filePathOrUrl.startsWith("http")) {
// 是否有缓存
String fileName = generateDiskCacheKey(filePathOrUrl, 0, 0, false);
File file =
file = new File(...
单例模式是为了确保一个类有且仅有一个实例,并为它提供一个全局访问点.简单说就是你不能new一个实例出来.
一条命令安装服务器java
SaaS是Software-as-a-Service(软件即服务)的简称!我们的核心目标是简化用户使用!
今天面试遇到的两个面试题: 一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.找出1000以内的所有完数。 package P public class Test {
public static void main(String[]args){
int sum = 0;
for(int i = 0;i&=1000;i++){
int arr[] = new int[i];
for(int j = 1;j &j++){
if(i%j == 0){
int k = 0;
sum += arr[k];
}if(i == sum){
System.out.print(i+" ");
目前我们在做一个机遇docker、JFinal的SaaS平台,暂时测试阶段!今日,系统在做域名绑定的时候发现:未绑定过的域名cname到我们得三级域名上,会绑定到某个系统上!
这篇文章主要讲 Spring MVC 如何动态的去返回 Json 数据 在我们做 Web 接口开发的时候, 经常会遇到这种场景。 & 两个请求,返回同一个对象,但是需要的返回字段并不相同。如以下场景 ```java /** * 返回所有名称以及Id */ @RequestMapping("list") @ResponseBody public List findAllNameAndId() { return articleService.findAll(); } /** * 返回所有目录详情 */ @RequestMapping("list-detail") @ResponseBody public List findAllDetail() { return articleService.findAll(); } ``` Spring MVC 默认使用转json框架是 `jackson`。 大家也知道, `jackson` 可以在实体类内加注解,来指定序列化规则,但是那样比较不灵活,不能实现我们目前想要达到的这种情况。 这篇文章主要讲的就是通过自定义注解,来更加灵活,细粒化控制 json 格式的转换。 最终我们需要实现如下的效果: ```java @RequestMapping(value = "{id}", method = RequestMethod.GET) // 返回时候不包含 filter 内的 createTime, updateTime 字段 @JSON(type = Article.class, filter="createTime,updateTime") public Article get(@PathVariable String id) { return articleService.get(id); } @RequestM...
每周为您推送最有价值的开源技术内参!
各位道友大家好:
“Angular2.0视频教程”来了!这是第一个完整版的Angular 2.0系列中文视频教程。
还是大漠穷秋老师,还是熟悉的声音,还是淡淡的小幽默。3年前,大漠老师在慕课网发布了“AngularJS实战” /learn/156 系列视频教程,迄今为止已经有14万人学习,整体评分9.6分。很多道友反馈说,通过学习这门课程找到了心仪的工作,大漠老师感到非常开心,说明他的付出是有价值的。
这一次,大漠老师再度倾力打造,从开发环境到完整案例,涵盖了Angular2的方方面面。如果你自己看文档,或者在网上寻寻觅觅,看那些碎片化的文章,可能需要几十个小时,甚至几个月才能摸到门道。而你来听大漠老师的系统讲解,只要8小时,你就是Angular开发专家了!整个课程全部基于大漠老师自己开发的NiceFish这个小项目,如果你想先睹为快,请自己检出代码上手试玩 http://git.oschina.net/mumu-osc/NiceFish 。
同时,大漠老师还给大家带来了一波小福利,每一节课都会送出2本《揭秘Angular2,/.html ,整个课程共送出20本。《揭秘Angular2》由广发证券金融团队编著,汤桂川老师领...
近年来,云计算开源技术逐渐成为云计算发展的重要支撑和导向,改变了以往的信息技术进化模式,引领软件技术标准的发展和创新,深刻影响着整个信息技术产业的发展格局。为进一步探索我国云计算开源技术发展模式,加速云计算与各行业的深度融合,更好地发挥云计算在经济社会创新发展中的支撑和引领作用,促进我国云计算产业快速、健康发展。
原创地址:https://my.oschina.net/u/3039671/blog/. 最初始的网站架构
就像我们在自己电脑上搭建了一个论坛的网站,应用程序(例如Apache服务器)、数据库等都部署在我们自己的电脑上的。就可以正常运行了。 2. 应用服务和数据服务分离 我们的论坛越来越受欢迎,用户越来越多,论坛也十分越活。但是面临的问题是数据库中的信息越来越多,存储不够了。这个时候我们又多弄了几台服务器,应用程序(Apache服务器)、数据库和保存用户上传的文件(图片)单独部署在不同的服务器上。 应用服务器处理大量的业务逻辑,所以需要更好的CPU 数据库服务器需要完成数据的快速查询,所以需要更大的硬盘和内存 文件服务器保存用户上传的图片等文件,所以需要更大的硬盘 3. 使用缓存改善网站性能 我们的论坛用户继续快速增涨,我们发现访问速度越来越慢,原因就是很多请求都要访问数据库(例如,读取用户的个人信息,打个不恰当的比喻,每次进入一个话题,该话题中的每一个发言用户的信息都要从数据库中读取)。这个时候如果我们能缓存这些用户信息,每次从缓存中读取,这样对数据库的压力会大大降低,并且读取的性能也提升了很多。 4. 使用应用服务器集群改善网站的并发处理能...
1)报警配置信息的录入
这部分比较简单,就是一个简单的管理系统 架构如下所示: 配置信息具体要存什么,看你自己需要,每个人有自己的想法 我之前的思路是: (0)定义本配置所属的服务,比如web服务,rpc服务,cache缓存服务,mq服务,sql服务。 (1)定义一个采样次数的总数,比如10次采样样本为一次计算单位。 (2)定义一个采样样本不过关的次数,比如4次,也就是10次里面有4次样本不过关就报警。 (2.1)单个样本里的成功率必须&=某个阀值 (2.2)单个样本里的平均耗时必须&=某个阀值 (2.3)单个样本里的最大耗时必须&=某个阀值(可选) (2.4)单个样本里的最小耗时必须&=某个阀值(可选) (2.5)单个样本里的TP99数值必须&=某个阀值(可选) (2.6)其它,你想怎么做就怎么做,规则你自己定,你就是规则之王。 (3)报警周期,就是后面如果报警,多少时间之内同种类型的不再报警,如果你不需要就设置为0,那么有多少报警都会发出去,造成报警短信洪灾。 单个样本到底是啥意思? 客户端调用埋点jar包里的API,会调用很多次,然后如果你定义了6秒钟收割一次进行数据采样汇总,上传到服务器,那就是一个采样样本。 PS:如果在这6秒钟某个API被调用1万次,成功6000次,那么只会上报一条数据给远程...
软件周刊(02.05 — 02.11):本周热门软件更新 — 史上最快 Opera 43 发布,页面加载时间缩至极限;PostgreSQL 五版齐发,修复超过 75 个 bug;阿里开源的企业级 Node.js 框架 egg 0.11 发布
免费VPN账号 可以在Win 10应用商店搜索【快鸟VPN】或【快鸟SS】获取,或者收藏本页面 获取后的帐号需要填入系统设置或者软件才能使用,不是获取了就能连上。 快鸟VPN QQ群: 使用教程点击本页面下方教程,免费账号更新: PPTP连不上的话,请使用手机流量,或者使用影梭。 打不开国外网页,浏览器建议使用Chrome浏览器:/s?wd=chrome浏览器 今天免费账号更新 【VPN:类型PPTP,服务器地址45.63.93.189用户名freevpn密码hhhhhh】 【影梭Shadowsocks:服务器地址185.72.156.28端口8989密码hhhhhh加密方式:AES-256-CFB】 【L2TP免费VPN失效,如需要使用,请联系客服QQ:
购买付费帐号】
另外:付费VIP更快更稳定,购买VIP付费独立帐号请加快鸟vpn客服qq:。遇到VPN连不上的情况请联系客服解决。 点击下方超链接可以查看教程: PPTP: 快鸟VPN Win10 VPN设置教程
快鸟VPN Win7 PPTP VPN设置教程 快鸟VPN WP连接PPTP使用教程 快鸟VPN 安卓Andriod PPTP设置教程 快鸟VPN iOS PPTP设置教程
影梭: 快鸟影梭SS Windows上使用影梭教程 快鸟影梭SS Android上使用影梭教程 快鸟影梭SS iPhone iOS 设置教程 【W...
作为一门语言,你知道 Python 是如何获得现在的成功的吗? 不妨去看看它大量的库吧,不管是原生的,还是第三方的,可能会有所收获。 有这么多的库,也就不奇怪为什么有的很多人用,有的却没有引起多少人注意。 而且,专注于一个领域的程序员往往并不知道那些看起来是为其他工作类型创建的库能给他们带来什么好处。 这里有 13个你可能已经忽略,但绝对值得你的注意的优秀的 Python 库。 是时候给这些隐藏的宝藏一些关注了。 1、Pillow 简介:图像“无痛”处理库,易用版的 PIL。 亮点:大多数执行过图像处理的 Pythonist 应该会熟悉 PIL(Python 图像库),但 PIL 有不少缺点和限制,并且很少更新。Pillow 的目标是比 PIL 更容易使用,并通过最小的变化与 PIL 代码兼容。 扩展包括用于与本机 Windows 的映像功能和 Python Tcl/Tk-backed Tkinter GUI 包。 Pillow 在2017年初发布了 4.0 版本,增加了许多变化,主要是针对内部结构,但同时也更新了 Pillow 使用 的 FreeType 和 OpenJpeg 等最新版本的依赖库。 2、Gooey 简介: 一条命令,将命令行程序变成一个 GUI 程序。 亮点:Gooey 论证了 argparse 命令行解析库期望的参数,并把它们作为 GUI 形式呈现给用户,所有选项...
![码云周刊](https://static.oschina.net/uploads/img/70848_HsPK.jpg "码云周刊") & 每周为您推送最有价值的开源技术内参! ##热门资讯 **1、[2017 码云招聘-被窝已暖,漂洋过海来睡我](https://www.oschina.net/news/81098/gitosc-recruitment-2017)** & 好吧,我承认这是一则寻人启事! & 既然来了,何不今日将咱们彼此之间纯洁的革命友谊升华一下?外面冷我已将被窝暖好~ & 码云团队是一群追逐梦想的人,为做出美好的事情而努力。在这里没有大公司的等级观念,扁平化的管理模式让每个人都可以随时提出自己的创意和想法。所以,我们诚意邀请您的加入…… **2、[谷歌 Chrome 新功能曝光:“小程序”来了](https://www.oschina.net/news/81573/chrome-add-to-pwas)** & 在微信推出“小程序”后,谷歌也准备这么做了,将在谷歌浏览器Chrome上推出。 & 谷歌的“小程序”名叫增强型网页应用( Progressive Web Apps,简称 PWAs),是目前正处于测试版的Chrome 57新增的功能…… **3、[GitLab 称有 707 位用户超 5000 个项目丢失数据](https://www.oschina.net/news/81560/gitlab-707-users-lost-data)** & GitLab 的一位系统管理员本周早些时候删错了服务器上的 ...
这篇文章主要讲的就是如何让自己的网站免费从HTTP升级为HTTPS,使用的是 [Let's Encrypt](https://letsencrypt.org/)的证书。实际上也就是一个Let's Encrypt 免费证书获取教程 。 为什么要上HTTPS,说一个小故事。 & 从前有个网站,后来有个广告,没了 作为一个博客,自然不想让在被别人浏览的时候,出现莫名的广告([运营商劫持](.hk/webhp?hl=zh-CN&sourceid=cnhp&gws_rd=ssl#safe=strict&hl=zh-CN&q=%E8%BF%90%E8%90%A5%E5%95%86%E5%8A%AB%E6%8C%81))。这时候,HTTPS的价值就体现出来了。 HTTPS的好处还有很多,但单单这一条,就够我花心思去升级了。 (其实主要目的是提升网站Biger :) ## Let's Encrypt 简介 如果要启用HTTPS,我们就需要从证书授权机构(以下简称CA) 处获取一个证书,Let's Encrypt 就是一个 CA。我们可以从 Let's Encrypt 获得网站域名的免费的证书。这篇文章也主要讲的是通过 Let's Encrypt + Nginx 来让网站升级到HTTPS。 ## Certbot 简介 [Certbot](https://certbot.eff.org) 是Let's Encrypt官方推荐的获取证书的客户端,可以帮我们获取免费的Let's Encrypt 证书。Certbot 是支持所有 Unix 内核的操作系统的,个人博客的...
1、该组件基于Vue 2.1.X版本;
一直对vue很感兴趣,最近使用vue2.0开发了高仿饿了么点餐系统来练练手,不得不说vue真是一个很不错的框架,但是也遇到过一些坑,在这里和大家分享一下 饿了么点餐系统 vue2.0、vuex、vue-router、axios、webpack、eslint、better-scroll 部分细节还在开发中,感兴趣的可以加入进来,觉得不错的给个star 更新
已经写完,仍有不少地方可以优化,一起来完善吧~ GitHub地址:/SimonZhangITer/VueDemoSellEleme 演示 在线演示戳我 扫二维码在手机上查看效果更好 项目截图 构建 vue有自己的脚手架构建工具vue-cli,使用起来非常方便,使用webpack来集成各种开发便捷工具,比如: 代码热更新,修改代码之后网页无刷新改变,对前端开发来说非常的方便 PostCss,再也不用去管兼容性的问题了,只针对chrome写css代码,会自动编译生成支持多款浏览器的css代码 Eslint,统一代码风格,规避低级错误,对于有代码洁癖的人来说是绝对的好东西,不过有些地方的代码校验有时候也挺麻烦的-.- bable,ES2015出来已经有一段时间了,但是不少浏览器还没有兼容ES6.有了bable,放心使用ES6语法,它会自动转义成ES5语法。 Stylus,类似于SASS/SCSS,但是可以不写{}和...
【一周源资讯(-)】春节过完,程序员在忙着制定新一年的目标,还有不少的程序员忙着跳槽,这里给你准备了一些参考。
作为个程序员需要对自己系统的每块内存做到了如指掌
在项目迭代的过程中,不可避免需要”上线“。上线对应着部署,或者重新部署;部署对应着修改;修改则意味着风险。 目前有很多用于部署的技术,有的简单,有的复杂;有的得停机,有的不需要停机即可完成部署。本文笔者简单讨论一下目前比较流行的几种部署方案,或者说策略。如有不足之处请指出,如有谬误,请指正^_^。
Blue/Green Deployment(蓝绿部署) 蓝绿部署无需停机,并且风险较小。 (1) 部署版本1的应用(一开始的状态) 所有外部请求的流量都打到这个版本上。 (2) 部署版本2的应用 版本2的代码与版本1不同(新功能、Bug修复等)。 (3) 将流量从版本1切换到版本2。 (4) 如版本2测试正常,就删除版本1正在使用的资源(例如实例),从此正式用版本2。 从过程不难发现,在部署的过程中,我们的应用始终在线。并且,新版本上线的过程中,并没有修改老版本的任何内容,在部署期间,老版本的状态不受影响。这样风险很小,并且,只要老版本的资源不被删除,理论上,我们可以在任何时间回滚到老版本。
rolling update(滚动发布) 滚动发布,一般是取出一个或者多个服务器停止服务,执行更新,并重新将其投入使用。周而复始,直到集群中所有的实例都更新成新版本。 这种...
闭包,是 javascript 中重要的一个概念,对于初学者来讲,闭包是一个特别抽象的概念,特别是ECMA规范给的定义,如果没有实战经验,你很难从定义去理解它。因此,本文不会对闭包的概念进行大篇幅描述,直接上干货,让你分分钟学会闭包! 1 闭包–爱的初体验 在接触一个新技术的时候,我首先会做的一件事就是:找它的demo code。对于码农们来说,代码有时候比自然语言更能理解一个事物。 其实,闭包无处不在,比如:jQuery、zepto的主要代码都包含在一个大的闭包中,所以下面我先写一个最简单最原始的闭包demo,好让你在大脑里产生闭包的画面: function A(){
function B(){
console.log("Hello Closure!");
var c = A();
c();//Hello Closure!
这是史上最简单的闭包,不能再简单了,再简单就不是闭包了! 有了初步的认识后,我们简单分析一下它和普通函数有什么不同,这样我们才能从“茫茫人海”中一眼认出“她”。 上面代码翻译成自然语言如下: (1)定义了一个普通函数A (2)在A中定义了普通函数B (3)在A中返回B(确切的讲,在A中返回B的引用) (4)执行A(),把A的返回结果赋值给变量 c (5)执行 c()
Docker for windows 目前只适用于windows10版本,对10以下的只能使用 Docker Toolbox 本文只讲win10下的安装使用: 1、从这里下载/products/docker#/windows Docker for windows10
下载一定注意要下载完整,最好是校验一下,否则安装可能会出错。 2、在安装之前确保win10已经开启了Hype-v虚拟器。(开启后需要重启)
3、开始安装docker,按默认设置安装完成即可。最后在右下角会出现docker的图标,稍等一会,打开cmd输入docker info 命令检查是否安装成功。 4、由于国内网络原因的问题,建议使用国内加速器。这里以阿里云Docker加速器为例说明:
首先在阿里云注册(https://cr.),获取专用加速地址。
在右下角docker图标上右键打开设置对话框,按图填写上面的加速器地址。
5、运行hello-world验证:
docker run hello-world
如果不出意外将输出下面的内容: Hello from Docker.
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The D...
上周轰动一时的Gitlab事件终于尘埃落定了,不可否认的是这次事故Gitlab官方公关的的很出色,及时公布事件细节并寻求帮助,这让本是一个失误引发的事故,演变为一个真诚面对问题并反思的正面教材。对此,网络上一片好评。
今天就结合深度桌面操作系统给大家讲讲桌面操作系统的架构设计和原理细节,一来向外界讲讲深度这么多年都做了哪些工作,二来希望通过客观公正的事实向中国新一代的开源爱好者讲述怎么用正确的三观去贡献自己的力量。 ### 什么是桌面操作系统? 简而言之,桌面操作系统就是大家平常个人电脑里面用的操作系统。 桌面操作系统应该是所有操作系统类型中最为复杂、研发技术难度最高的一种操作系统了。 世界上非常优秀的桌面操作系统有微软的Windows和苹果的Mac OS,其他的Linux桌面操作系统,比如Fedora、Suse、Ubuntu包括我们自己的Deepin,虽然这十几年取得了长足的进步,但是相对于Windows和Mac OS,不论技术先进性、交互设计还是产品质量方面都还有非常大的差距。 ### 桌面操作系统都有哪些部分组成? 一个普通用户使用的桌面操作系统的组成部分主要包括: * 内核、驱动以及固件:主要用于驱动硬件可以正常工作,除了CPU、内存、磁盘外,最主要的要是要广泛兼容不同的网卡、显卡、声卡和外设等硬件设备 * 软件仓库及众多开发库:如果没有开源社区众多大神打包好的软件仓库和各种开发库,要基于Linux来开发一个操作系统甭说开源爱好者,甚至就是一个中型公司都很难做起来,可...
hadoop学习笔记 ,文档中所示例的项目的地址 https://git.oschina.net/weiwei02/WHadoop
近年来,云计算开源技术逐渐成为云计算发展的重要支撑和导向,改变了以往的信息技术进化模式,引领软件技术标准的发展和创新,深刻影响着整个信息技术产业的发展格局。为进一步探索我国云计算开源技术发展模式,加速云计算与各行业的深度融合,更好地发挥云计算在经济社会创新发展中的支撑和引领作用,促进我国云计算产业快速、健康发展。
从网络上摘抄过一句话,是这样的:”软件开发之路是充满荆棘与挑战之路,也是充满希望之路”。Java学习也是如此,没有捷径可走。 如何学习程序设计?
Java是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于Java,对C++等其他程序设计语言也一样管用。编程语言之间有共通之处,领会了编程的精髓,自然能够做到一通百通。如何学习程序设计理所当然也有许多共通的地方。
1、培养兴趣
兴趣是能够让你坚持下去的动力。如果只是把写程序作为谋生的手段的话,你会活的很累,也太对不起自己了。多关心一些行业趣事,多想想盖茨。不是提倡天天做白日梦,但人要是没有了梦想,你觉得有味道吗? 2、慎选程序设计语言
男怕入错行,女怕嫁错郎。初学者选择程序设计语言需要谨慎对待。软件开发不仅仅是掌握一门编程语言了事,它还需要其他很多方面的背景知识。软件开发也不仅仅局限于某几个领域,而是已经渗透到了各行各业几乎每一个角落。
如果你对硬件比较感兴趣,你可以学习C语言/汇 编语言,进入硬件开发领域。如果你对电信的行业知识及网络比较熟悉,你可以在C/C++等之上多花时间,以期进入电信软件开发领域。如果你对操作系统比较 熟悉,你可以学习C...
php调用java包
Mysql出现Table 'performance_schema.session_status' doesn't exist bin目录下执行命令行: mysql_upgrade -u root -p
如何终止正在发送的ajax请求
####Ap isolation(无线隔离): 1. 它类似于有线网络的VLAN,将所有的无线客户端设备完全隔离,使之只能访问AP连接的 固定网络,相当于无线中的局域网。 2. 一些大型的公共场所,如机场、酒店等可以采用这个方法来完成公共热点Hot Spot的架设 ,它可以让接入的无线客户端保持隔离,保证旅客们之间的距离,提供安全的Internet接入。 ####HT Physical Mode(高速物理模式): 1. Operating Mode: ①. Legacy mode(延伸模式): 用来解决802.11n的AP与a/g/b的兼容模式。在这种模式下, 客户端首先解码首先得三部分在第六层(six-field header,我觉得是第六层也就是mac的意思 )的报头,对于802.11a和g市特定的部分。如果AP是不支持5G的频带,那么这时候AP就不能 向下兼容802.11a. ②. Mixed mode(混合模式):用来解决802.11n的AP与一个n/a/g/b混合的模式。 如同延伸模式一样,11a与11g/b的客户端将会读首先mac帧的三个字段, 而802.11n还会解析增加的三个“高吞吐量”字段在整个802.11n的帧报头中。如同延伸模式一样,如果AP不支持5G频段,那么不能够兼容802.11a ③. Greenfield mode: 这个模式是在可选择的高吞吐量模式,没有延伸模式的那种兼容性, 只被希望去提供802.11n那种高吞吐...
今天我们将一起学习Java虚拟机使用垃圾收集算法和常见的垃圾收集器。Java虚拟机内存区域的程序计数器、虚拟机栈和本地方法栈3个区域是随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出出栈和入栈。每一个栈帧中分配多少内存基本上是在类结构确定下来的时候就已知的,因此这个几个区域的内存分配和回收都具备确定性,在这几个区域就不需要过多考虑回收问题,因为方法结束或者线程结束时,内存自然就跟着回收了。而Java堆和方法区就不一样,一个接口中的多个类实现需要的内存可能不一样,一个方法中的多个分支需要的内存也可能不一样,我们只有在程序处于运行期间是才能知道会创建哪些对象,这部分内存和回收是动态的,垃圾收集器所关注的是这部分内存。 一、判断对象是否存活 在垃圾收集器对对象进行回收前,首先需要判断哪些对象是存活的。 1、引用计数算法 给对象添加一个引用计数器,每当有一个地方引用它时,计数器就加1;当引用失效时,计数器值就减1;任何时候计数器为0的对象就是不可能在被使用的。但是这样算法的存在的问题是很难解决对象之间相互循环引用的问题。当前主流的Java虚拟机都没有采用这样的算法。我们看如下列子:testGC()方法执行后,objA和o...
一:初识YII2,以下是本人的一些愚见,不到住处,请多指教(本文是基础归类文档的演示),11步完成一个请求的生命周期: 以下图表展示了一个应用如何处理请求: 用户向入口脚本 web/index.php 发起请求。 入口脚本加载应用配置 并创建一个应用实例去处理请求。 应用通过请求组件 解析请求的路由。 应用创建一个控制器实例去处理请求。 控制器创建一个操作实例并针对操作执行过滤器。 如果任何一个过滤器返回失败,则操作退出。 如果所有过滤器都通过,操作将被执行。 操作会加载一个数据模型,或许是来自数据库。 操作会渲染一个视图,把数据模型提供给它。 渲染结果返回给响应组件。 响应组件发送渲染结果给用户浏览器。
HttpDNS 服务详解
viewer.addCheckStateListener(new ICheckStateListener(){
public void checkStateChanged(CheckStateChangedEvent event) {
//级联勾选
handleCheckStateChange(event);
* @param event
protected void handleCheckStateChange(final CheckStateChangedEvent event) {
BusyIndicator.showWhile(getShell().getDisplay(), new Runnable() {
public void run() {
Object element = event.getElement();
boolean state = event.getChecked();
viewer.setGrayed(element, false);
if (isExpandable(element))
setSubtreeChecked(element, state, state); //
viewer.setSubtreeChecked(element, state);
// only check subtree if state is...
答复网友对jflow ccflow常见问题.
基于接口的调用远比基于基础消息交互来得更简单和便于维护,特别在业务展现上,接口作为业务表现更适合其便利性。为了让SmartRoute更适合业务应用集成,在新的一年开始SmartRoute集成了远程接口调用功能。基于SmartRoute的基础特性,在这基础上扩展的接口调用会变得更简单灵活,其特别点如下:并不需要知道服务地址,只需要明确接口和方法即可以实现远程服务调用;无需任何配置即可实现负载和故障迁移。而这一系列的更利功能都归攻于SmartRoute基础建设!
SmartRoute的远程接口调用是基于Protobuf的RPC实现,其制定服务是以接口为基础有点似于wcf,但调会变得更透明简单.以下针对组件实现一个简单的远程接口调用和负载处理。 接口定义
组件对接口的定义并没有什么特别要求或添加特性,但接口方法的定义不支持同名称重载,现有版本的组件暂不支持。对于out和ref类型的参数也暂不支持。以下是定义一个简单的用户操作接口:
public interface IUserService
DateTime Register(string name, string email);
void ChangePWD(string name, string oldpwd, string newpwd);
} 注册口服务
接口定义后需要...
Xamarin.Forms的ActivityIndicator和ProgressBar比较
本文给大家重点讲述一下对java多态的深入理解 首先我们先理解什么是多态:大家都知道面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。所以多态也是最重要的知识点。 首先我们先理解一下多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用) 实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。 多态的作用 消除类型之间的耦合关系。 多态存在的三个必要条件 一、要有继承; 二、要有重写; 三、父类引用指向子类对象。 多态的好处: 1.可替换性(substitutability)。多态对已存在代码具有可替换性。例如,多态对圆Circle类工作,对其他任何圆形几何体,如圆环,也同样工作。 2.可扩充性(extensibility)。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际上新加子类更容易获得多态功能。例如,在实现了圆锥、半圆锥以及半球体的多态基础上,很容易增添球体类的多态性。 3.接口性(interface-ability)。...
1.修改oracle客户端地址 C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 修改上面路径下得文件 ,注意 :NCDX 前面不能有空格 NCDX =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 222.204.3.44)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = JLQLS)
2.导出数据 参考:http://blog.csdn.net/lanpy88/article/details/7580691/ 账号: thinkgem
,密码:12345 exp thinkgem/123456@NCDX
file=d:\daochu.dmp
---导出当前用户的所以数据 一下没有使用过 命令: exp thinkgem/12345@NCDX
file=d:\daochu.dmp full=y
--导出所以得用户和觉得
原文链接:http://www.marmoset.co/toolbag/learn/pbr-theory 近来,基于物理的渲染(PBR)是一项令人激动的实时渲染的趋势。这个术语包含了很多内容,通常会让人产生困惑,以至于不明白它到底是什么。因此我将使用试图解释下,什么是基于物理的渲染,以及它和以往的渲染方式的区别。这篇文档主要是给非技术工程师的,并且文中不会有任何数学和代码。 基于物理的渲染系统不同于以往的渲染系统,大部分更细节的原因是关于光和表面的行为。着色能力有了很大的进步,一些老旧的近似模拟的效果和制作方法可以抛弃了。这就意味着技术工程师和艺术家都应该清楚的理解这些变化。 在讲解基于物理的渲染的新内容之前,我们会从一些基础的内容开始讲起。如果你已经知道下面要讲的内容了,你应该会认为这是非常值得阅读的。或许你可以去看看 Joe Wilson 的名为 creating PBR artwork 的文章。 散射(Diffusion)和反射(Reflection) 散射(Diffusion)和反射(Reflection),就是我们平时所说的漫反射(diffuse)和镜面反射(specular),这是描述光和表面交互的最基本的区别的两个术语。大多数人在现实情况中对这些概念很熟悉,但是也许并不知道其中的物理区别。 当光线到达表面边...
1、进入系统管理-&系统设置 2、在Jenkins Location找到系统管理员邮件地址,输入发送邮件的邮箱地址 3、在邮件通知中输入配置 这里使用网易的163邮箱进行设置,此处的密码是网易的授权码。 4.配置好了之后可以勾选“通过发送测试邮件测试配置”来测试配置是否成功 5、需要更高级的邮件通知功能需要再安装一个Jenkins插件:Email Extension Plugin 安装完成后可在系统管理-&系统设置中找到Extended E-mail Notification Default Recipients:输入需要发送邮件的接收人邮箱地址,使用英文“,”分割。 Default Subject:邮件的主题名 【构建通知】:$PROJECT_NAME - $BUILD_STATUS - Build # $BUILD_NUMBER! Default Content 我的邮件发送内容: &!DOCTYPE html&
&meta charset="UTF-8"&
&title&${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志&/title&
&body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0"&
&table width="95%" cellpadding="0" cellspacing="0"
style="font-size: 11 font-family: Tahoma, Arial, Helvetica, sans-serif"&
maven依赖包
&dependencies&
&dependency&
&groupId&org.apache.logging.log4j&/groupId&
&artifactId&log4j-api&/artifactId&
&version&2.8&/version&
&/dependency&
&dependency&
&groupId&org.apache.logging.log4j&/groupId&
&artifactId&log4j-core&/artifactId&
&version&2.8&/version&
&/dependency&
&dependency&
&groupId&com.lmax&/groupId&
&artifactId&disruptor&/artifactId&
&version&3.3.6&/version&
&/dependency&
&/dependencies&
log4j2.xml配置
&?xml version="1.0" encoding="UTF-8"?&
&Configuration status="WARN"&
&Properties&
&Property name="log.file.name"&/workspace/logs/log4j&/Property&
&/Properties&
&Appenders&
&Console name="Console" target="SYSTEM_OUT"&
ES6之let(理解闭包)和const命令   最近做项目的过程中,使用到了ES6,因为之前很少接触,所以使用起来还不够熟悉。因此购买了阮一峰老师的ES6标准入门,在此感谢阮一峰老师的著作。   我们知道,ECMAScript 6即ES6是ECMAScript的第五个版本,因为在2015年6月正式发布,所以又成为ECMAScript2015。ES6的主要目的是为了是JS用于编写复杂的大型应用程序,成为企业级的开发语言。   说明:由于有时候我们希望得知es6代码的具体实现原理或者说希望能够转化为es5使用,我们可以使用http://babeljs.io/来实现在线将es6代码转化为es5代码。 第一部分:let命令   一.块级作用域(重点)。    我们知道,在javascript中只有全局作用域和函数作用域,并不存在块级作用域。这样,在使用时就会出现一些问题。 下面我们先来举例说明let块级作用域的使用。    例1:   代码如下所示:  {
console.log(a);
console.log(b);   我们在控制台得到的结果如下所示:   也就是说,var声明的变量由于不存在块级作用域所以可以在全局环境中调用,而let声明的变量由于存在块级作用域所以不...
用 Elasticsearch 的同学都知道,最近一段时间 Elasticsearch 像中毒一样全国、全世界都发生的 Elasticsearch 被删库,有的甚至被加密后敲诈比特币。 当然我也难逃删库的命运,我200GB 的爬虫数据被删,我所在的公司只开放了公司IP 才能访问,也被删除了整个库。
给大家推荐一款不错的UI框架-WeUI。用于移动端Web及小程序开发尤为方便。可以让HTML5和微信小程序界面风格保持一致,内置移动端开发常用的组件和样式,为你在手机移动端的开发,提供一种便捷的前端框架。
ImageIO框架提供了读取与写入图片数据的基本方法,通过它可以实现对图片数据的深入分析与内容修改。
Gulp、Rollup、Webpack、Webpack-stream使用入门
这篇文章主要讲 Spring MVC 如何动态的去返回 Json 数据 在我们做 Web 接口开发的时候, 经常会遇到这种场景。 & 两个请求,返回同一个对象,但是需要的返回字段并不相同。如以下场景 ```java /** * 返回所有名称以及Id */ @RequestMapping("list") @ResponseBody public List findAllNameAndId() { return articleService.findAll(); } /** * 返回所有目录详情 */ @RequestMapping("list-detail") @ResponseBody public List findAllDetail() { return articleService.findAll(); } ``` Spring MVC 默认使用转json框架是 `jackson`。 大家也知道, `jackson` 可以在实体类内加注解,来指定序列化规则,但是那样比较不灵活,不能实现我们目前想要达到的这种情况。 这篇文章主要讲的就是通过自定义注解,来更加灵活,细粒化控制 json 格式的转换。 最终我们需要实现如下的效果: ```java @RequestMapping(value = "{id}", method = RequestMethod.GET) // 返回时候不包含 filter 内的 createTime, updateTime 字段 @JSON(type = Article.class, filter="createTime,updateTime") public Article get(@PathVariable String id) { return articleService.get(id); } @RequestM...
1、该组件基于Vue 2.1.X版本;
近年来,云计算开源技术逐渐成为云计算发展的重要支撑和导向,改变了以往的信息技术进化模式,引领软件技术标准的发展和创新,深刻影响着整个信息技术产业的发展格局。为进一步探索我国云计算开源技术发展模式,加速云计算与各行业的深度融合,更好地发挥云计算在经济社会创新发展中的支撑和引领作用,促进我国云计算产业快速、健康发展。
本文旨在通过几何方法来阐述为何人工神经网络能够有效地工作。
2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
WSL(Windows Subsystem for Linux) 是 在Windows系统中为那些熟悉Linux用户准备的诸多子系统功能。换言之,你可以在Windows环境下来执行Linux操作,运行 Linux程序。这对于Windows、Linux双系统有需求的用户来说是个不错的功能。本文详细介绍了如何使用 WSL
这是一篇讲究套路的数据结构实战教学文,阅读需要约20分钟。
上周轰动一时的Gitlab事件终于尘埃落定了,不可否认的是这次事故Gitlab官方公关的的很出色,及时公布事件细节并寻求帮助,这让本是一个失误引发的事故,演变为一个真诚面对问题并反思的正面教材。对此,网络上一片好评。
Session知识点整理开篇和Session缓存(Hibernate一级缓存)详解
在Spring Boot的众多Starter POMs中有一个特殊的模块,它不同于其他模块那样大多用于开发业务功能或是连接一些其他外部资源。它完全是一个用于暴露自身信息的模块,所以很明显,它的主要作用是用于监控与管理,它就是:`spring-boot-starter-actuator`。 `spring-boot-starter-actuator`模块的实现对于实施微服务的中小团队来说,可以有效地减少监控系统在采集应用指标时的开发量。当然,它也并不是万能的,有时候我们也需要对其做一些简单的扩展来帮助我们实现自身系统个性化的监控需求。下面,在本文中,我们将详解的介绍一些关于`spring-boot-starter-actuator`模块的内容,包括它的原生提供的端点以及一些常用的扩展和配置方式。 # 初识Actuator 下面,我们可以通过对快速入门中实现的Spring Boot应用增加`spring-boot-starter-actuator`模块功能,来对它有一个直观的认识。 在现有的Spring Boot应用中引入该模块非常简单,只需要在`pom.xml`的`dependencies`节点中,新增`spring-boot-starter-actuator`的依赖即可,具体如下: ```xml org.springframework.boot spring-boot-starter-actuator ``` 通过增加该依赖之后,重新启动应用。此时,我们可以在控制台中看到如下...
实现功能与spring注解集成。 在web服务中,及可以当作普通的spring bean又可以作为服务的提供者。 在消费者中,与spring注解结合,方便使用。
今天就结合深度桌面操作系统给大家讲讲桌面操作系统的架构设计和原理细节,一来向外界讲讲深度这么多年都做了哪些工作,二来希望通过客观公正的事实向中国新一代的开源爱好者讲述怎么用正确的三观去贡献自己的力量。 ### 什么是桌面操作系统? 简而言之,桌面操作系统就是大家平常个人电脑里面用的操作系统。 桌面操作系统应该是所有操作系统类型中最为复杂、研发技术难度最高的一种操作系统了。 世界上非常优秀的桌面操作系统有微软的Windows和苹果的Mac OS,其他的Linux桌面操作系统,比如Fedora、Suse、Ubuntu包括我们自己的Deepin,虽然这十几年取得了长足的进步,但是相对于Windows和Mac OS,不论技术先进性、交互设计还是产品质量方面都还有非常大的差距。 ### 桌面操作系统都有哪些部分组成? 一个普通用户使用的桌面操作系统的组成部分主要包括: * 内核、驱动以及固件:主要用于驱动硬件可以正常工作,除了CPU、内存、磁盘外,最主要的要是要广泛兼容不同的网卡、显卡、声卡和外设等硬件设备 * 软件仓库及众多开发库:如果没有开源社区众多大神打包好的软件仓库和各种开发库,要基于Linux来开发一个操作系统甭说开源爱好者,甚至就是一个中型公司都很难做起来,可...
前天Spring Boot 1.5终于迎来了第一个RELEASE版本:1.5.0,但是由于[一个编译依赖问题](/spring-projects/spring-boot/issues/8136)在第二天直接连击到了1.5.1。该版本的发布包含了超过320位贡献者的奉献、10000多次的代码提交。 每次Spring Boot版本更新所带来的新特性都是我们每个用户特别关注的。虽然其中不少特性可能对于大部分用户来说还不一定适用,但是作为基础知识的储备还是有一定的必要性。对于1.5.x版本的新特性列表读者可以直接查看官方博文:[《Spring Boot 1.5.1 released》](https://spring.io/blog//spring-boot-1-5-1-released)来了解它们,本文不做这些概要性的介绍。在后续的一段时间内,本博客将会陆续介绍一些笔者关心且将会使用的关于Spring Boot 1.5.x中的一些新特性。 ## loggers端点 本文我们就来看看Spring Boot 1.5.x中引入的一个新的控制端点:`/loggers`,该端点将为我们提供动态修改Spring Boot应用日志级别的强大功能。该功能的使用非常简单,它依然延续了Spring Boot自动化配置的实现,所以只需要在引入了`spring-boot-starter-actuator`依赖的条件下就会自动开启该端点的功能(更多关于`spring-boot-starte...
##三次握手 ![输入图片说明](https://static.oschina.net/uploads/img/04509_U5nu.jpg "在这里输入图片标题") ##ListenOverflows ``` root@b5dbe93bcb04:/opt# netstat -s | grep listen 22438 times the listen queue of a socket overflowed ``` tcp_v4_syn_recv_sock():三路握手最后一步完成之后,Accept queue队列(完全连接队列,其大小为min(/proc/sys/net/core/somaxconn, backlog))超过上限时加1. ##ListenDrops ``` root@b5dbe93bcb04:/opt# netstat -s | grep LISTEN 49148 SYNs to LISTEN sockets dropped ``` tcp_v4_syn_recv_sock():任何原因,包括Accept queue超限,创建新连接,继承端口失败等,加1. 包含ListenOverflows的情况,也就是说当出现ListenOverflows时,它也会增加1;除此之外,当内存不够无法为新的连接分配socket相关的数据结构时,也会增加1,当然还有别的异常情况下会增加1。 ##AttemptFails - tcp_done():如果在SYN_SENT/SYN_RECV状态下结束一个连接,加1 - tcp_check_req():被动三路握手最后一个阶段中的输入包中如果有RST|SYN标志,加1 &1.试图和一个不存在的套接口建立连接时,连接失败,而TcpAttemptFails同时会加1 &2....
public class AsyncDemo {
private static void doSomeTask() {
System.out.println("Hello World");
private static void onCompletion() {
System.out.println("All tasks finished");
public static void main(String[] args) {
ExecutorService executor = Executors.newCachedThreadPool();
final CountDownLatch latch = new CountDownLatch(2);
executor.execute(new Task(latch));
executor.execute(new Task(latch));
executor.execute(() -& {
latch.await();
} catch (InterruptedException e) {
e.printStackTrace();
onCompletion();
executor.shutdown();
private static class Task implements Runnable {
* CountDownLatch 是JDK提供的一个简单的线程监测工具
* 基于简单的计数,调用countDown()方法表明当前线程已经终止
* 在监测线程中调用await()方法,该方法会一直挂起直到所有其它线程终止...
这篇文章主要讲的就是如何让自己的网站免费从HTTP升级为HTTPS,使用的是 [Let's Encrypt](https://letsencrypt.org/)的证书。实际上也就是一个Let's Encrypt 免费证书获取教程 。 为什么要上HTTPS,说一个小故事。 & 从前有个网站,后来有个广告,没了 作为一个博客,自然不想让在被别人浏览的时候,出现莫名的广告([运营商劫持](.hk/webhp?hl=zh-CN&sourceid=cnhp&gws_rd=ssl#safe=strict&hl=zh-CN&q=%E8%BF%90%E8%90%A5%E5%95%86%E5%8A%AB%E6%8C%81))。这时候,HTTPS的价值就体现出来了。 HTTPS的好处还有很多,但单单这一条,就够我花心思去升级了。 (其实主要目的是提升网站Biger :) ## Let's Encrypt 简介 如果要启用HTTPS,我们就需要从证书授权机构(以下简称CA) 处获取一个证书,Let's Encrypt 就是一个 CA。我们可以从 Let's Encrypt 获得网站域名的免费的证书。这篇文章也主要讲的是通过 Let's Encrypt + Nginx 来让网站升级到HTTPS。 ## Certbot 简介 [Certbot](https://certbot.eff.org) 是Let's Encrypt官方推荐的获取证书的客户端,可以帮我们获取免费的Let's Encrypt 证书。Certbot 是支持所有 Unix 内核的操作系统的,个人博客的...
比较了JFina3.0新的模板引擎功能与Beetl的功能对比
SpringSecurity是基于Spring的应用程序提供声明式安全保护的安全性框架
前言 开源实时日志分析ELK平台(ElasticSearch, Logstash, Kibana组成),能很方便的帮我们收集日志,进行集中化的管理,并且能很方便的进行日志的统计和检索,下面基于ELK的最新版本5.1进行一次整合测试。 ElasticSearch 1.概述: ElasticSearch是一个高可扩展的开源的全文搜索分析引擎。它允许你快速的存储、搜索和分析大量数据。ElasticSearch通常作为后端程序,为需要复杂查询的应用提供服务。 Elasticsearch是一个基于Lucene的开源分布式搜索引擎,具有分布式多用户能力。Elasticsearch是用java开发,提供Restful接口,能够达到实时搜索、高性能计算;同时Elasticsearch的横向扩展能力非常强,不需要重启服务,基本上达到了零配置。 2.解压ElasticSearch并进入目录: unzip elasticsearch-5.1.1.zip
cd elasticsearch-5.1.1 3.启动ElasticSearch服务: ./bin/elasticsearch 因为这里使用的是root账号进行启动服务的,所以会报如下错误:
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-5.1.1.jar:5.1.1]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearc...

我要回帖

更多关于 魅蓝note3怎么样 的文章

 

随机推荐