Ghostsf Blog

Do what i love and just do it !

Html5里面的 标签的 Download 属性可以设置一个值来规定下载文件的名称。所允许的值没有限制,浏览器将自动检测正确的文件扩展名并添加到文件 (.img, .pdf, .txt, .html, 等等),浏览器支持:但是 Download 的兼容性不怎么样,只有 Firefox 和 Chrome 支持 download 属性。在文章后面会给大家说说怎么兼容IE的! 测试代码: <a href="imges/ghostsf.jpg" download="图片 ...

阅读全文 »


pacakge-info.java是一个Java文件,可以添加到任何的Java源码包中。pacakge-info.java的目标是提供一个包级的文档说明或者是包级的注释。pacakge-info.java文件中,唯一要求包含的内容是包的声明语句,比如:package com.ghostsf.tools; 包文档在Java 5之前,包级的文档是package.html,是通过JavaDoc生成的。而在Java 5以上版本,包的描述以及相关的文档都可以写入pacakge-info.java文件,它也用 ...

阅读全文 »


首先,我们明确自己的需求:搭建一个自动化部署平台,其需求如下:能做到自动拉取代码自动编译自动更新数据库表结构只更新master分支这是一个最简单的自动化部署平台需求,下面就来看看怎么实现,需要说明的是,因为是最简单的方案,故没有考虑分布式的架构。 我们来做功能拆分,拆分如下:代码同步模块:正常代码拉取强制推送代码拉取忽略其他分支的代码推送编译模块正常编译异常编译回滚部署模块编译文件自动部署重启服务端重启代理工具日志模块:正常情况下日志输出代码拉取失败日志输出编译错误日志输出服务端重启日志输出现在功 ...

阅读全文 »


EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。主要的特性有:快速简单多种缓存策略缓存数据有两级:内存和磁盘,因此无需担心容量问题缓存数据会在虚拟机重启的过程中写入磁盘可以通过RMI、可插入API等方式进行分布式缓存具有缓存和缓存管理器的侦听接口支持多缓存管理器实例,以及一个实例的多个缓存区域提供Hibernate的缓存实现配置参数详解:name:缓存名称。maxElementsInMemory:缓存最大个数。eter ...

阅读全文 »


Fork自Javen整理的常用开源框架微信公众号1、企业微信公众号jfinal-qyweixin https://git.oschina.net/javen205/jfinal_qyweixin.git2、服务号、订阅号jfinal-weixinhttps://git.oschina.net/jfinal/jfinal-weixin.gitjfinal-weixin-demohttp://git.oschina.net/javen205/weixin_guide.gitfastweixinhttp ...

阅读全文 »


Latke https://github.com/b3log/latke框架使用框架的好处很多,它规范了我们的开发方式,减少了出错的可能性,让我们可以更快地完成开发目标,后续维护也可以有章可循;使用框架的弊端也很明显,它束缚了我们,离开熟悉的框架进行开发我们可能会手足无措,它让我们身陷其中。但无论如何,我们是离不开框架的,多认识几种框架是没错的,Java Web 领域更是如此(选择很多,同时也很少)。到目前为止,我所认识的框架无一不例外都是以 class 作为实体类型的,为什么会这样?为什么不能以 ...

阅读全文 »


先安装字体管理软件,Centos4.x之后,都用fontconfigyum install fontconfig 将需要安装的字体放到/usr/share/fonts/chinese/目录下这里的中文字体,可以直接去windows系统里面拿,或者网上下载等。比如微软雅黑字体:C:/Windows/Fonts/msyh.ttf 可以直接copy过来,放到linux系统里。如果不存在这个目录,可以自行创建修改目录权限,以便其他用户也可以使用chmod -R 755 /usr/share/fonts/c ...

阅读全文 »


ORACLE ERROR ORA-01489: result of string concatenation is too long一般遇到这种oracle的问题,DBA都会说去搜下ORA-01489即可。然后我就去搜了,- -。一般这种就是string concatenation作为结果输出太长了,放不下。于是可以用TO_CLOB转型。原来的长字符串拼接,比如是t.SUGGESTIONS1 || t.SUGGESTIONS2 || t.SUGGESTIONS3 这是里每个字段都存储着超长的文本, ...

阅读全文 »


在PC浏览器中打开,然后按住Ctrl+F键,然后输入数字9,你会看到数字中隐藏着一段浪漫的故事,很简单吧,马上就是七夕节了,复制这段数字,发给你暗恋的那个他(她)吧!9966999999666999999669966669966699996669966699 9969999999969999999969966669966996699669966699 9966999999999999999669966669969966669969966699 996666999999999999666669999 ...

阅读全文 »


这个图很好地概况了功能对比:

阅读全文 »


使用letsencrypt免费SSL证书的问题证书到期了,要续期了,自动续期出错了。Invalid response for ACME challenge 大概提示如下:IMPORTANT NOTES: - The following errors were reported by the server: Domain: bbs.6doors.org Type: unauthorized Detail: Invalid response from http:/ ...

阅读全文 »


相信很多人是喜欢用印象笔记的,比如ghostsf 哈哈!那么也相信很多人发现印象笔记客户端会出现同步失败的情况,同步按钮有红色感叹号,然后每次同步都会提示可能服务器出现了什么问题,- -。网上经常出现的方案就是:印象笔记windows客户端同步失败怎么解决?1、重启,升级,清空废纸篓,备份删 2、重建数据库:重新下载本地笔记文件当然如果对你有用,就不用往下看了。其实还有一个原因就是印象笔记对同步设备的数量限制。一般免费账号会被限制只能使用两台设备。我们在这里可以看到。如果超过了同一免费账号绑定了超 ...

阅读全文 »


RT Caused by: java.lang.ArrayIndexOutOfBoundsException: 21at oracle.jdbc.driver.OracleSql.computeBasicInfo(OracleSql.java:950)oracle ojdbc6的驱动包是存在bug的。具体看Raimonds Simanovskis的分析:In Oracle Metalink (Oracle's support site - Note ID 736273.1) I found tha ...

阅读全文 »


首先可以完爆微信等其他网页缓存问题的就是Cache Buster技术了。Cache Buster是什么? 这是一个技术学名。翻译过来就是缓存的克星。其实就是url带随机数。首先要知道,网页是无法控制浏览器进行缓存的。如果不想要缓存,唯一的办法就是在url后面添加参数,比如http://www.ghostsf.com/?t=20170119参数可以用时间戳或者各种随机数。很好用,完爆微信等其他网页缓存问题。另外:如果是静态html文件遇到微信缓存而无法及时更新问题,请在html标签中增加不存在的ma ...

阅读全文 »


“你好,我是小程序”,小程序强势来袭。你的朋友圈被小程序霸占了吗?但是ghostsf这里需要给大家说明的是,小程序背后的各种调整和限制:小程序服务范围大调整:社交与直播都能做了首当其冲的是 2016 年的两大热词 —— 直播和共享都出现在了新的服务类目中。「直播」出现在新分类「社交」中,与其并行的还有陌生人交友、熟人交友、社区/论坛、直播、婚恋、问答,而这些在之前都被认为是微信不希望小程序涉足的领域。共享「共享」则出现在了「出行与交通」中的「城市共享交通」。2016 年共享单车大热,摩拜单车、of ...

阅读全文 »


ghostsf All rights reserved. 苏ICP备15036367号