- ORDER SIBLINGS BY MENUORDER
jQuery中处理含有特殊字符的id
html中是支持某些特殊字符的id,但是jquery不支持 如星号*
但是document.getElementById可以获取到特殊字符id
$(document.getElementById(id))
这样就一步到位搞定了搞定了,直接调用jQuery的函数
如 $(document.getElementById(id)).hide();
php中 json_encode返回中文为null的解决方法
在php中使用json_encode居然返回了null,后来才知道应该先进行转码再返回到页面,代码如下:
- echo json_encode(gbk2utf8($result)); function gbk2utf8($data){ if(is_array($data)) { return array_map('gbk2utf8', $data); } return iconv('gbk','utf-8',$data); }
关于IE6下纵向滚动条影响宽度的bug
之前遇到这样的bug,很头疼,怎么也搜不到解决方案,无意间找到的解决之法。这次,同事也遇到了这样的问题,便记录下来。
先看问题,代码如下:
- <style>
- <!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>crazyhr.com</title>
- <style>
- body{margin:0; padding:0}
- td{background:#66c}
- </style> <div style="width: 100%; height: 200px; overflow: auto"> <table style="width: 100%; height: 300px"> <tbody> <tr> <td width="50%">aaaaaaaa</td> <td width="50%">bbbbbbbbbb</td> </tr> </tbody> </table> </div>
标准模式下,IE6会把纵向滚动条的宽度算在内容里,故而出现了横向滚动条,就算横向滚动条设置为隐藏,也是可以“拖动”内容的。
其实只要给内容套一层div,并给div设置高度100%就会解决这个问题了,代码如下:
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <HEAD> <TITLE>crazyhr.com</TITLE> <style>
- body{margin:0; padding:0}
- td{background:#66C}
- </style> </HEAD> <BODY> <div style="width:100%; height:200px; overflow:auto"> <div id="fix_ie6" style="height:100%"> <table style="width:100%; height:300px"> <tr> <td width="50%">aaaaaaaa</td> <td width="50%">bbbbbbbbbb</td> </tr> </table> <div> </div> </BODY> </HTML>
ibatis/Oracle 笔记
根据level添加空格作为下拉菜单
- SELECT T.CONSTCODE, CASE MENULEVEL WHEN 2 THEN ' ' || T.CONSTDESC WHEN 3 THEN ' ' || T.CONSTDESC WHEN 4 THEN ' ' || T.CONSTDESC WHEN 5 THEN ' ' || T.CONSTDESC ELSE T.CONSTDESC END CONSTDESC, CONSTEXT3 FROM VW_REPORTINDEXWB T
ibatis数组作为条件,自动拼装
- <iterate prepend="AND" property="catarray" open="(" close=")" conjunction="OR"> T1.REPORTCATEGORY = #catarray[]# </iterate>
Oracle补充
添加字段
- ALTER TABLE gt_user_base ADD usertype varchar2(8) DEFAULT 0 not null;
增加注释
- comment on column gt_user_base.id is '主键ID';
查询default默认值
- SELECT a.COLUMN_NAME,a.DATA_DEFAULT FROM user_tab_columns a WHERE a.TABLE_NAME = 'GT_USER_BASE';
修改默认值
- alter table gt_user_base modify(usertype default 0);
修改字段名称
- alter table gt_user_base rename column id to newid;
删除字段
- alter table gt_user_base drop (ttst);
查询树状结构
- SELECT T.CATEGORYCODE, LEVEL CATEGORYLEVEL, CATEGORYNAME
- FROM (SELECT T1.CATEGORYCODE,
- T2.CONSTDESC CATEGORYNAME,
- T1.PARENTCODE,
- T1.REPORTTYPE,
- T1.MENUCODE
- FROM BACK_REPORTMENU_CATEGORY T1, CNT_SYSTEM T2
- WHERE T1.CATEGORYCODE = T2.CONSTCODE
- AND T2.TYPECODE = 900003
- -- AND T1.MENUCODE= #menucode#
- ) T
- CONNECT BY PRIOR T.CATEGORYCODE = t.PARENTCODE
- START WITH t.PARENTCODE = 0
- ORDER SIBLINGS BY TO_CHAR(T.CATEGORYCODE)
oracle关于表的操作
创建表
- create table gt_user_base
- (
- id number not null,
- userid varchar2(18) not null,
- username varchar2(18),
- password varchar2(18),
- );
删除表
- drop table gt_user_base;
默认值 日期
- alter table gt_user_base modify regdate default sysdate;
插入记录
- insert into gt_user_base(id,userid,username,password) values(gt_user_sequence.nextval,'00001','nameee','passssswd');
Sequence
- create sequence gt_user_sequence INCREMENT BY 1 START WITH 0000001 NOMAXVALUE NOCYCLE
更改数据
- update gt_user_base a set a.userlevel = 1 WHERE a.id = 100000022;
oracle创建命名空间和新用户
Oracle安装完后,其中有一个缺省的数据库,除了这个缺省的数据库外,我们还可以创建自己的数据库。
为了避免麻烦,可以用’Database Configuration Assistant’向导来创建数据库(这步一定要创建好,因为这里没有做好,会在创建表空间时出错—我就在这里花了几个小时,晕)。
创建完数据库后,并不能立即在数据库中建表,必须先创建该数据库的用户,并且为该用户指定表空间。
下面是创建数据库用户的具体过程:
1.假如现在已经建好名为’test’的数据库,此时在d:\oracle\oradata\目录下已经存在test目录(注意:我的Oracle11g安装在d:\oracle下,若你的Oracle安装在别的目录,那么你新建的数据库目录就在*\oradata\目录下)。
2.在创建用户之前,先要创建表空间:
其格式为:格式: create tablespace 表间名 datafile ‘数据文件名’ size 表空间大小;
如: SQL> create tablespace test_tablespace datafile ‘d:\oracle\oradata\test\test.dbf’ size 100M;
其中’test_tablespace’是你自定义的表空间名称,可以任意取名;
‘d:\oracle\oradata\test\test.dbf’是数据文件的存放位置,’test.dbf’文件名也是任意取;
‘size 100M’是指定该数据文件的大小,也就是表空间的大小。
删除命名空间
DROP TABLESPACE test INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
3.现在建好了名为’test_tablespace’的表空间,下面就可以创建用户了:
其格式为:格式: create user 用户 名 identified by 密码 default tablespace 表空间表;
如: SQL> create user testone identified by testone default tablespace test_tablespace;
默认表空间’default tablespace’使用上面创建的表空间。
4.接着授权给新建的用户:
SQL> grant connect,resource to testone; –表示把 connect,resource权限授予testone用户
SQL> grant dba to testone; –表示把 dba权限授予给testone用户 授权成功。
ok! 数据库用户创建完成,现在你就可以使用该用户创建数据表了!
java 附件下载 或 直接打开 response.setHeader
点击会提供对话框选择另存为:
response.setHeader( “Content-Disposition “, “attachment;filename= “+filename);
通过IE浏览器直接选择相关应用程序插件打开:
response.setHeader( “Content-Disposition “, “inline;filename= “+fliename)
下载前询问(是打开文件还是保存到计算机)
response.setHeader( “Content-Disposition “, “filename= “+filename);