日积月累--小技巧之二

 

<1> 以前在电脑上安装windows系统时总是很顺利,没有遇到什么大问题。前几天为公司一台电脑安装win7时,进行到   展开windows文件时,每次执行到……60%左右就会报错(错误代码好像是什么0x800...,记不住了)。二话不说,www.google.com。搜索一番,找到了一个可行的办法:

使用window安装光盘(不一定是光盘,刻有windows系统的u盘亦可),进入修复模式,之后进入命令窗口,输入如下指令:

  diskpart 

  list disk  // 列出磁盘

  select disk 0 // 选择磁盘

                  list partition // 列出分区

    select partition 0 // 选择分区

  active //设置当前分区为活动分区

 

然后按照正常步骤安装windows.....进入桌面


<2>很多时候我们会有分割字符串的需求,在javascript中按回车进行分割,如何使用呢:

var splits = $("#user_input").val().split("\n");  // 注意:这里使用“\n”,而不是"\r\m" 


<3>访问网站时,有时会看到网址前段协议:https(不是熟知的http),很多这样的网页,使用http也可访问(将网址中的https换位http)。当使用程序访问分析测试网页时,会遇到SSL验证错误,比如说使用HTMLUNIT进行https网页分析时,控制台就会报错。

在代码中加入:wc.setInsecureSSL(true); // wc 为WebClient对象,正阳设置后能够正常的进行网页信息采集分析


<4>使用jeditable进行快速编辑时,如果不想使用submit,cancel按钮,可以如下:

$(".edit_select").editable("yourajaxurl",

{

...

...

data : select_options,

submit : '', // 使用空字符串,以去掉确定按钮

cancel : '', // 使用空字符串,以去掉取消按钮

}

);

对于固定选项的select的快速编辑来说,将选项存放于一个页面json对象中会比服务器查询更快速方便:

var select_options = {'1':'student', '2' : 'teacher', '3' : 'athlete'}; // 使用如上代码


<5>尽管这样一个应用场景很少出现,但是特定情况下是足够有效的(适用情况就不举例了)。数据库中存放的是一种模式而并非具体的条目,如数据库coder中pattern列存放了如下数据: abc%d%fe%a,从客户端获取的数据为"abcfdbfeca"以及其他用户的序列,那么如何对这些序列进行匹配呢。当然最先想到的是like进行模糊查询。

select * from coder where pattern like ${user_input}  这是思维定势,因为写sql语句总喜欢将列名在前变量在后,这条sql这里并不会返回期待的数据

select * from coder where ${user_input} like pattern  很多时候我们应该转换思维模式,以得到解决问题更好的办法,it's pretty cool.....


<6> 在对数据库进行操作时,有时需要将相同功能的代码写成好多份,由于列名无法或者不方便指定与sql语句中,比如对一个商品表信息的更新,sql可以如下优雅的设计:

在MyBatis中如下使用:

update goods set ${column} = #{value} where goods_id = #{goods_id} 

如上编写sql可以灵活的更新所有数据表中的列。注意${column}这里使用的是"$",而不是"#","$"在MyBatis中会将字符串中的单引号去掉。



Good Bye, Readers.....

 

 

 

你可能感兴趣的:(小技巧)