tip:随手记
余不二
愿做早起吃虫鸟
展开
-
单点登录SSO的实现原理
单点登录SSO(Single Sign On)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子系统,用户一次操作或交易可能涉及到几十个子系统的协作,如果每个子系统都需要用户认证,不仅用户会疯掉,各子系统也会为这种重复认证授权的逻辑搞转载 2015-05-27 16:54:58 · 307 阅读 · 0 评论 -
VS中无签名UTF8和带签名UTF8格式
在VS中,使用高级保存选项功能的时候,我们将会发现UTF8有两种格式,一个是带签名的UTF8,一个是无签名的UTF8。那么这两种的格式有什么区别呢?带签名的UTF8:带签名的UTF8,是在生成的文件中,在文件的开头使用UTF8标志,这样在下次使用编辑器编辑的时候,编辑器能准确的识别当前文件的编码格式,并做正确的解码。无签名的UTF8:相反,无签名的UTF8是在保存的时候,不再文转载 2015-06-24 15:40:26 · 4413 阅读 · 0 评论 -
url完整编码,防止冒号被编码
问题描述:有时候我们需要将一整条url编码,但如果直接整体编码的话,冒号都会被编码;例如:http://192.168.1.85:8080/Files/1\\Paper\\2015-06-05\\150602 高分子网站论文投稿BUG-20150605164633294.doc这条字符串,如果直接编码,http链接就会失效。解决方案:我想到的解决方法是先用长文本代替需要保留的字符,编码后代原创 2015-06-05 18:33:14 · 5893 阅读 · 0 评论 -
flexpaper常用参数
书籍阅读界面var fp = new FlexPaperViewer(‘/Content/FlexPaper1.4.5/FlexPaperViewer’,//这里是FlexPaperViewer.swf的路径,相对根目录‘viewerPlaceHolder’,//这里是要显示Swf的区域的ID{config: {SwfFile: escape(‘/Content/SwfSp转载 2015-06-09 10:27:36 · 397 阅读 · 0 评论 -
解决FlexPaper分页分段加载问题,大文件预览
FlexPaper是一个开源的PDF文档在线查看控件。用户查看PDF文档不需要安装Acrobat Reader,但需要利用像SwfTools这样的工具预先将PDF文档转成SWF格式的文件。FlexPaper能够对需要查看的文档进行分页、搜索、打印、缩放、全屏查看等 但对于一次性加载整个大型文档会导致加载时间过长和内存过渡消耗。在新的FlexPaper版本中已经能够解决这个问题。首先需要将你转载 2015-06-09 17:29:05 · 2996 阅读 · 0 评论 -
C++中namespace的使用
命名空间(namespace)是一种描述逻辑分组的机制,可以将按某些标准在逻辑上属于同一个任务中的所有类声明放在同一个命名空间中。标准C++库(不包括标准C库)中所包含的所有内容(包括常量、变量、结构、类和函数等)都被定义在命名空 间std(standard标准)中了。定义命名空间有两种形式的命名空间——有名的和无名的。命名空间的定义格式为:(取自C++标准文档)named转载 2015-06-30 15:31:04 · 392 阅读 · 0 评论 -
C++编程中虚函数的作用
虚函数为了重载和多态的需要,在基类中是有定义的,即便定义是空,所以子类中可以重写也可以不写基类中的此函数!纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数!虚函数引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。?123456789转载 2015-06-30 16:41:50 · 419 阅读 · 0 评论 -
C++中函数指针的使用
在class中使用函数指针可以 funpointer = (void(Object::*)(&Hello::sayHello);this->(*funpointer)() 在C/C++中存在着函数指针,即指向函数的指针。目前已知的两种使用方法是: [cpp] view plaincopyprint?#include #include ty转载 2015-06-30 17:27:32 · 400 阅读 · 0 评论 -
sql数据库varchar和nvarchar坑
问题描述:将部分符号,例如: 详细摘要或全文−侯春曰-20150531094315438,里的 - 存进varchar字段时,会因为识别不了变成?.因此,为了兼容更多的字符,不确定数据来源的情况下还是用nvarchar比较保险原创 2015-06-10 14:23:26 · 2774 阅读 · 0 评论 -
SVN服务器搭建
Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说.首先来下载和搭建SVN服务器.现在Subversion已经迁移到apache网站上了,下载地址:http://subversion.apache.org/packages.html这是二进制文件包的下载地址,你可在左侧的导航栏找到源代码,文档的下载地址.windows操作系统下面的二进制文件包一转载 2015-06-10 14:52:25 · 253 阅读 · 0 评论 -
C++伪函数
笔者这里用一个简单的代码片段来说明伪函数的实现和用法,及其优点。代码示例如下: class Abs { public: int operator()(int num)const; //这个操作符的重载是实现伪函数的关键 Abs(); void setIsOpponent(bool isOpponent); privat转载 2015-06-30 17:18:48 · 1362 阅读 · 0 评论 -
cygwin和mingw的区别
Unix下编译通过的C代码,在win32下编译是不能通过的 ,当然Unix 和win32的API都是符合标准C,也就是说,大多数函数调用在unix和win32下是相同的.但是,unix有自己一些独特的API(如fork,spawn,signals,select,sockets等),如果代码中使用了这些API,在win32下当然找不到对应的库. 但是,这些API的功能在win32中也能实现转载 2015-07-01 10:24:25 · 377 阅读 · 0 评论 -
js 返回页面顶部
一、使用锚标记此方法最简单,只需在body下放个隐藏的锚点标记,内容如下: 代码如下复制代码然后,在网页底部放一个访问链接即可: 代码如下复制代码返回顶部此方法效果是一次直接跳到顶部,而且URL地址栏会显示个#top,追求完美的可使用下面方法。二、使用JS scr转载 2015-07-12 18:30:17 · 515 阅读 · 0 评论 -
个人网站开发1
1、选择你熟悉的框架选择你最熟悉的PHP框架和前端框架,快速开发,不要拖延,拖延只会最后什么都没做。2、想清楚要做什么要做什么主题,大概有哪些模块、哪些功能,是一开始要想清楚的。就以博客为例,网站基本信息、文章、文章分类、文章标签、评论这些都算是基本的功能,技术为导向算是一个主题。3、数据库设计做好数据库设计,考虑数据库查询的方便。比如在这里我将文章分成两张转载 2015-09-06 09:38:04 · 434 阅读 · 0 评论 -
计算两个中文字符串相似度——编辑距离算法
Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离的算法是首先由俄国科学家Levenshtein提出的,故又叫Levenshtein Distance。 1、Java[java] view plaincopy转载 2015-11-11 16:20:21 · 2418 阅读 · 0 评论 -
快速获取列表唯一值方法
快速获取列表唯一值方法:一般的语言都会提供两种基本类型,List和Set,Set集合里的元素都是唯一的,因此利用语言本身的转化是最简单的方法。例如,Java和Python里都能直接 用List创建一个Set。Set里的值就是List里的唯一元素值原创 2016-10-09 16:34:32 · 6412 阅读 · 0 评论 -
vs2010 C++常见问题1:back_inserter
error C2039: “back_inserter”: 不是“std”的成员error C3861: “back_inserter”: 找不到标识符解决方法:#include ﹤iterator﹥转载 2015-06-25 15:54:07 · 622 阅读 · 0 评论 -
非spring 方式修改quartz定时任务为串行处理
quartz 默认情况下,各个schedule都是采用并行处理的。当使用servlet构建框架时,由于没有使用quartz.xml配置文件,这时候无法修改jobDetail的属性。此时需要使用注解在job类上加上@DisallowConcurrentExecution即可@DisallowConcurrentExecutionpublic class FileToPdfJob i原创 2015-06-05 14:42:16 · 1067 阅读 · 0 评论 -
使用common-fileupload实现文件上传
问题描述:前台通过表单提交文件数据,服务器获取apache的commons-fileupload : http://commons.apache.org/fileupload/解决方案:1. jsp页面 只支持office文件在线预览,如doc,docx,ppt,pptx,xls,xlxs原创 2015-06-02 09:27:45 · 629 阅读 · 0 评论 -
Tomcat搭建文件服务器
参考:http://down.51cto.com/data/9546721. 配置在tomcat目录下直接把文件放在 tomcat6/webapps/ROOT 目录下,然后在网址中访问: http://192.168.2.31:8080/download.zip 便可下载。2. 配置在其他目录如何不想放在webapps/ROOT下,就要对想要转载 2015-06-02 10:21:38 · 951 阅读 · 0 评论 -
java 从网络Url中下载文件
/** * 从网络Url中下载文件 * @param urlStr * @param fileName * @param savePath * @throws IOException */ public static void downLoadFromUrl(String urlStr,String fileName,Stri转载 2015-06-02 18:33:47 · 893 阅读 · 0 评论 -
JDBC 连接SQL Server:Connection refused: connect
问题描述:今天在重新安装Win8,全新安装了SQL Server 2012之后,发现以前的程序运行报错:“通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused: connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TC原创 2015-06-01 18:02:55 · 2768 阅读 · 0 评论 -
判断jdbc连接的数据库类型
问题描述:有时候,我们的网站需要适配不同的数据库,且可能会同时使用时,我们需要根据不同的连接数据库作出相应代码或不同的查询语句;解决方式:/** * 判断数据库类型 * @return * @throws SQLException */ public String getDataBaseType() throws SQLException { //通过drive原创 2015-06-01 18:12:43 · 7094 阅读 · 3 评论 -
cron表达式详解
Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year或Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符如下: Seconds:可出现"转载 2015-06-03 10:30:00 · 283 阅读 · 0 评论 -
js 循环提交ajax请求
function GetFeed() { $.ajax({ url: '../WebService/Feed.asmx/GetFeed', data: "{\"count\":10}", type: 'post', dataType: 'json', contentType: 'application/json; charset=utf-8',原创 2015-06-03 11:44:57 · 1687 阅读 · 0 评论 -
jquery ajax属性
jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯。废话少说,直接进入正题,我们先来看一些简单的方法,这些方法都是对jQuery.ajax()进行封装以方便我们使用的方法,当然,如果要处理复杂的逻辑,还是需要用到jQuery.ajax()的(这个后面会说到).1. load( url, [data], [ca转载 2015-06-03 17:13:41 · 1709 阅读 · 0 评论 -
Java中的instanceof关键字
instanceof是Java的一个二元操作符,和==,>, String s = "I AM an Object!"; boolean isObject = s instanceof Object; 我们声明了一个String对象引用,指向一个String对象,然后用instancof来测试它所指向的对象是否是Object类的一个实例,显然,这是真的,所以返回true,转载 2015-06-03 14:53:29 · 219 阅读 · 0 评论 -
jquery ajax satus为200却出现进入error回调函数
//请求载入文件数据var loadFile=function(){ $.ajax({ url:'filePreView.do', data:{'id':id,'md5':md5}, type:'post', dataType:'json', cache:false, success:function (data){ switch (data.statusCode原创 2015-06-03 17:17:42 · 4502 阅读 · 0 评论 -
java如何判断数组中是否包含某元素
有两种方法可以判断数组是否包含元素:方法1, 将数组转换为list,然后使用list的contains方法来判断:Arrays.asList(...).contains(...)方法2,遍历数组判断:public static T> boolean contains( final T[] array, final T v ) { for ( final T e :转载 2015-06-03 09:28:35 · 6914 阅读 · 0 评论 -
用过滤器来解决JSP中文乱码问题
先写一个过滤类package com.util;import java.io.IOException;import java.io.UnsupportedEncodingException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;转载 2015-06-03 18:24:03 · 355 阅读 · 0 评论 -
Java的日期格式化常用方法
一般常用格式化类DateFormat和SimpleDateFormat的format(Date time)方法进行格式化日期.1. 首先介绍java.text.SimpleDateFormat类.public class SimpleDateFormat extends DateFormatSimpleDateFormat是一个以与语言环境有关的方式来格式化转载 2015-06-03 14:56:14 · 313 阅读 · 0 评论 -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
在项目中总会遇到一些关于加载的优先级问题,刚刚就遇到了一个问题,由于项目中使用了quartz任务调度,quartz在web.xml中是使用listener进行监听的,使得在tomcat启动的时候能马上检查数据库查看那些任务未被按时执行,而数据库的配置信息在是在web.xml中使用servlet配置的,导致tomcat启动后在执行quartz任务时报空指针,原因就是servlet中的数据库连接信息未转载 2015-06-04 09:05:41 · 263 阅读 · 0 评论 -
Quartz 2.x 与老版本使用比较
问题描述: quartz 2.x 后新建jobdetail方法发生了变化;之前老版本直接使用new方法创建JobDetail实例和cronTrigger实例: Scheduler scheduler = new StdSchedulerFactory().getScheduler(); scheduler.start(); JobDetail job原创 2015-06-05 14:37:28 · 3110 阅读 · 0 评论 -
使用chrome控制台下载页面图片
利用chrome的javascript调试功能就能很容易 1.定义下载文件的方法function download(src) { var $a = document.createElement('a'); $a.setAttribute("href", src); $a.setAttribute("download", "img.png"); var evObj =原创 2016-11-28 11:11:42 · 9673 阅读 · 1 评论