工作小记(未整理)

来源:互联网 发布:javascript编写游戏 编辑:程序博客网 时间:2024/06/05 08:47

一、
1.在浏览器页面执行js,通过路径找到其本地文件,并进行修改的行为是否被允许,且浏览器不提示警告?
2.改动js脚本文件,需要清理浏览器缓存才能生效
3.插入clob字段SQL:
DECLARE REALLYBIGTEXTSTRING CLOB := ‘待插入的海量字符串’;
BEGIN INSERT INTO 表名(列名) VALUES(REALLYBIGTEXTSTRING);
END ;
/
commit;

    4.级联查询SQL样例:         select * from SA_AUDIT_SUBJECT START WITH SUBJECT_ID=0 CONNECT BY PRIOR SUBJECT_ID=PARENT_ID;    5.截断清空SQL样例:        truncate table sa_auditalert_bank;    6.查看表信息SQL:    select segment_name, bytes from user_segments where segment_type = 'TABLE';    7.   JSON.stringify(value[, replacer [, space]])    解析json对象为String    JSON.parse(text[, reviver])       解析Sting为Json对象    7.公用信息,频繁使用字段,提为关系表 ; 大数据量字段提为实体表;键值对 提为字典表    8.数组去重方式        List<String> countData=new ArrayList<String>();        Set<String> uniqueSet=new HashSet<String>(countData);        Collections.frequency (List,String)   // 返回Stirng在List中出现的次数

二、利用insert all实现行列转换(insert all的旋转功能)

1、建一行多列表及测试数据插入
create table week_bal(id int,w1_bal number,w2_bal number,w3_bal number,w4_bal number,w5_bal number);
insert into week_bal values(1,10.09,12.98,23.89,89.08,1098.01);
commit;
select * from week_bal;
2、建少列多行表
create table week_bal_new(id int,week int,bal number);
3、利用insert all语句插入
insert all
into week_bal_new(id,week,bal)values(id,1,w1_bal)
into week_bal_new(id,week,bal)values(id,2,w2_bal)
into week_bal_new(id,week,bal)values(id,3,w3_bal)
into week_bal_new(id,week,bal)values(id,4,w4_bal)
into week_bal_new(id,week,bal)values(id,5,w5_bal)
select id,w1_bal,w2_bal,w3_bal,w4_bal,w5_bal from week_bal;
select * from week_bal_new;

三、数据库多列比较函数

  1. COALESCE 返回该表达式列表的第一个非空value。
    格式: COALESCE(value1, value2, value3, …)
    含义: 返回value列表第一个非空的值。
    value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。
    EXAMPLE: select coalesce (1, null, 2 ) from dual ; – 返回1
    select coalesce ( null, 2, 1 ) from dual ; – 返回2
    select coalesce (t.empno, t.mgr ) from scott.emp t ; – 效果类似 NVL( t.empno, t.mgr )
  2. GREATEST 返回值列表中最大值
    格式: GREATEST(value1, value2, value3, …)
    含义: 返回value列表最大的值。
    value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。
    当value值列表中有一个为NULL,则返回NULL值。
    EXAMPLE: select greatest (1, 3, 2 ) from dual ; – 返回3
    select greatest ( ‘A’, ‘B’, ‘C’ ) from dual ; – 返回C
    select greatest (null, ‘B’, ‘C’ ) from dual ; – 返回null
    select greatest (t.empno, t.mgr ) from scott.emp t ; – 返回empno和mgr 较大值
  3. LEAST 返回值列表中最小值
    格式: LEAST(value1, value2, value3, …)
    含义: 返回value列表最小的值。
    value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。
    当value值列表中有一个为NULL,则返回NULL值。
    EXAMPLE: select least (1, 3, 2 ) from dual ; – 返回1
    select least ( ‘A’, ‘B’, ‘C’ ) from dual ; – 返回A
    select least (null, ‘B’, ‘C’ ) from dual ; – 返回null
    select least (t.empno, t.mgr ) from scott.emp t ; – 返回empno和mgr 较小值

四、Session超时设置

具体设置很简单,方法有三种:

  (1)在主页面或者公共页面中加入:session.setMaxInactiveInterval(600);参数600单位是秒,即在没有10分钟活动后,session将失效。

  这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。

  (2)也是比较通用的设置session失效时间的方法,就是在项目的web.xml中设置

  

  

  1

  
// 设置为0,-1 表示永不超时

  (3)直接在应用服务器中设置,如果是tomcat,可以在tomcat目录下conf/web.xml中找到元素,tomcat默认设置是30分钟,只要修改这个值就可以了。


<session-config>    <session-timeout>30</session-timeout></session-config>

  需要注意的是如果上述三个地方如果都设置了,有个优先级的问题,从高到低:(1)>(2)>(3)

//TODO 本篇时间匆忙,未做整理,留待空闲时整理