整理QQ空间,摘出来的小知识

来源:互联网 发布:淮南大数据公司老总 编辑:程序博客网 时间:2024/05/21 00:52

数据库:

  • Sqlserver改密码,“exec sp_password null, '1234','sa'”;修改sa密码为1234;
  • Mysql无法连接局域网主机异常,需更改 mysql 数据库里的user表里的host字段把localhost改称%,别忘了执行flush privileges;
  • Mysql区分大小写;
  • Oracle表分区可以有效的对付海量数据;
  • Oracle直接删除数据不记录日志,会清理表占据的Extent数量,“truncate table aa”;
  • Oracle从10g开始支持正则表达式;
  • Oracle 查询 Select * from v$sqlarea;
  • SQLite最大的特点在于其数据类型为无数据类型(typelessness)。
  • A机器 oracle 10g -> B机器 oracle 9i,B机器plsql连A机器,导出dmp,再将该dmp,倒入到B机器;

JavaScript:

  • jQuery的html()方法,在不同浏览器有不同的效果,有时候会有很致命的问题;
  • jQuery布局插件isotope很好用,什么瀑布流都是浮云;jQuyer跨域操作时,传递过去的jsoncallback参数,要用request.getParamter来获取。然后加到返回的json串前,eg:request.getParamter("jsoncallback ")+"("+jsonString+")";  虽然看上去一样,但结果是不一样的。
  • jquery函数传值 $(this).bind('click', {id: f_id, tag:0, b: belongid}, vote); 函数参数如:function vote(event) ,取值如:event.data.b;
  • 用Chrome浏览器看做完之后的页面效果(带js的),要部署在Tomcat或其他中间件下看,否则会不准,比如parent.document(子窗口获取父窗口某变量,会无法获得)。
  • function stopDefault(event){if(event&&event.preventDefault()){event.preventDefault();}else{window.event.returnValue=false;}} //A标签页面乱跳问题,加在onclick中
  • Ajax不支持GBK,需要解码;

工作流:

  • Activiti5要注意流程文件的文件名一定要以bpmn20.xml结尾;

单点登录:

  • Cas客户端如无特殊需要,依赖的jar包仅放入cas-client-core-3.2.1.jar和commons-logging.jar即可。Cas相关下载http://downloads.jasig.org/cas/。

Ldap:

  • Ldap比较好用的客户端JXplorer,下载地址:http://www.jxplorer.org/;服务器端比较方便的是ApacheDS。程序方面可以使用Spring的LdapTemplate。

加密:

  • 对传输的数据进行加密解密,可使用sun.misc.BASE64Decoder(加密)与sun.misc.BASE64Encoder(解密)。若某Servlet要使用request.getHeader("XX");来接收参数的话,请求发起端要使用URL来创建HttpURLConnection连接该Servlet,再使用setRequestProperty设置参数,连接后该Servlet接收参数并进行处理返回处理结果,请求发起端使用getResponseCode获取结果代码,关闭连接,完毕。 

即时通讯:

  • OpenFire + Spark 组合搭建即时通讯工具,网上资料不多,唯一一篇有点内容的还遮遮掩掩的,官网上也没有多少有用的资料,连蒙带猜两天时间从部署到插件开发,再到XMPP协议的通讯(CS两端通讯),终于通了,S端需要注意:org.jiresoftware.openfire.handler.IQHandler.java;C端要注意:org.jiresoftware.smack.provider.IQProvider.java。最重要的一点也是困扰我最长时间的是——请求到底从何发起,最后终于找到了SparkMenager.getConnection().sendPacket(new Packet());

正则表达式:

  • “1,2,3,4,”,java中使用split则最后一个逗号会被忽略
  • var arr = str.match(reg);//返回与正则表达式所有的匹配
  • m多行匹配,g全局匹配,例:var reg = new RegExp(/<\*\*[^\s]*\s(\d+)\s\*\*>/gm); 

Java反编译:

  • jad -o -r -8 -sjava -dsrc 'd:/classes/**/*.class';

Discuz对接:

  • diszuc打印函数 sprintf("%02d", $day); %02d意思为不足两位数字补0;
  • 数据迁移到diszuc7.2中,需要注意用户密码只需要导入到cdb_uc_member表中即可,但需要注意salt字段为随机密码,discuz的加密方式为MD5(MD5(用户真实密码)+随机码),另外一个需要注意的是对历史头像的导入,头像的具体地址没有存放到数据库中,而是通过文件的方式在uc_server文件夹下建立存放头像的文件夹,比如某用户的ID为173,则处理的方式为补足9位,173->000000173然后拆分为000/00/01/73.jpg,前边的000/00/01是文件夹,73为具体的文件标示;
  • Discuz论坛从6.1开始要同时安装UCenter,且UCenter和UCenter Home是两个东西。
项目管理:

  • 编码要多注意open-close原则;
  • 可视化SVN,VisualSvn,http与svn两种访问方式,不用额外装Apache去管理密码,比较方便。

条码识别:

  • 网上找了很多条码生成器网站,多数都是假的,害我以为我的程序有问题,找了半天才找到一个靠谱的免费在线条码生成器网站:http://barcode.tec-it.com/barcode-generator.aspx?LANG=zh-cn。
  • 昨天说的google的条码识别开源代码网站为:http://code.google.com/p/zxing/,不仅支持Android,还可支持Iphone。
CSS样式:
  • “_”为IE6中CSS Hack方法