DRP总结(四)

 

 

1.       注意在货币计算时,为了不产生精度上的问题,最好采用java.math.BigDecimal来声明数据类型

 

2.       sql批量更新的使用

    try {

        pstmt = conn.prepareStatement(sql);

for (Iterator iter = flowCardDetailList.iterator(); iter.hasNext();) {

        FlowCardDetail flowCardDetail = (FlowCardDetail)iter.next();

            pstmt.setString(1, vouNo);

            pstmt.setString(2, flowCardDetail.getAimClient().getId());

            pstmt.setString(3, flowCardDetail.getItem().getItemNo());

            pstmt.setDouble(4, flowCardDetail.getQty());

            //批量更新

            pstmt.addBatch();

            }

            pstmt.executeBatch();

}......

 

 

T_seq Name

Value

t_flow_card

200802030001

……

……

3.       当数据量大时,需要检索表中最大的数据时,为了节省查询比较所需的时间,可以采用单独的表对业务意义的字段进行维护

 

 

例如:生成流向单号,select value from t_seq for update where T_seqNmae = ‘t_flow_card’,然后加一即可 ,每次用完对表进行更新

for update指的是采用悲观锁,悲观锁一般是采用数据库机制实现的,数据会一直被锁定,其他各户端将无法查看和更改,只有锁释放才可以,悲观锁比较适合于短事务的情况。

 

 

 

4.       实现克隆要点:

l         类要实现 Cloneable 标识性接口(空的接口,任何实现都没有)

l         要实现clone() 方法,native调用java外的类库(比如用c写一个类库,用native修饰)

l         必须调用super.clone

   public Object clone() {

        object obj = super.clone();//调用父类,object对自身克隆

}

 

假设有个对象,有多个其他方法要调用,其中

克隆:重新申请一个空间,把数据复制过来,不会改变原来的数据

String类型可以直接克隆,主要是String每次都是申请新的空间

StringBuffer不能直接克隆,需要新new一个StringBuffer来实现

 

 

 

5.       了解html<iframe>标签

l         可以实现局部刷新

l         可以实现页面的滚动,方便数据查看

 

6.       sqlgroup by的用法

出现在select列表中的字段值必须在guoup by 字段中

where(单条数据进行过滤) having(对分组后的数据过滤,只能用在group by 后)

order by 需在group by

 

7.       Map 多个键值对的遍历取值

Map map = ...

for(Iterator iter = map.entrySet().iterator(); iter.hasNext();) {

    Map.entry entry = (Map.entry) iter.next();

    entry.getKey();

    entry.getValue();} 

8.       采用Ajax实现html<select>下拉列表的联动

    <selects>

        <select>

            <id>4</id>

             <name>吉林省</name>

        </select>

        <select>

             <id>5</id>

                 <name>辽宁省</name>

        </select>

<select>

<id>6</id>

             <name>黑龙江省</name>

        </select>

</selects>

 

 

    xmlDoc = xmlHttp.responseXML.documentElement;

    var selectProvince = document.getElementById("province");

            var xSels = xmlDoc.getElementsByTagName("select");

            selectProvince.options.length = 0;

            for (var i = 0; i< xSels.length; i++) {

            //var id = xSels[i].childNodes[0].firstChild.nodeValue;

            var id = xSels[i].childNodes[0].childNodes[0].nodeValue;

            var name = xSels[i].childNodes[1].childNodes[0].nodeValue;

                    var option = new Option(name, id);

                    selectProvince.add(option);

        }

 

 

responseXML---->返回的是xml dom对象,通过该对象可以访问xml文件的节点、属性节点、值节点。

 

    responseText--->返回的是文本字符串,可以直接打印输出

 

    两者的读入都需jsp隐式对象out写入文本或xml

 

 

 

9.       URI(统一资源标识)URL(统一资源定位)URN(统一资源名称)

 

URI

URL

URN

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

l         URI标识网络上的资源

l         URLURN的区别,前者不仅标识资源,而且还指出了访问资源的方式,如:用何种协议(http,ftp…..),URN则没有

 

 

10.    处理login页面在子窗口显示的问题:

如果在子窗口则跳到最前端显示,login.jsp页面里加上

 

if(window.self != window.top) {

    window.top.location = window.self.location;

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值