项目问题以及解决方案记录
来源:互联网 发布:手机数据恢复工具 编辑:程序博客网 时间:2024/05/01 14:14
针对在项目中出现的问题,做一些针对性的记录。大部分都是一些小问题,注意一下就差不多了。
Oracle触发器的写法
create or replace trigger TRIGGER_DELEVERY_PRODUCT after insert on temp_delivery_header FOR EACH ROWDECLARE v_material_code VARCHAR2(30); v_qty VARCHAR2(32); v_create_date date; v_update_date date; V_COLOR_CODE VARCHAR2(30); v_color_desc VARCHAR2(32); v_size_code VARCHAR2(10); v_size_desc VARCHAR2(32); BEGIN select deliline.M_PRODUCT,deliline.qty, deliline.WRITE_TIME,sysdate, deliline.color_code,deliline.color_name,deliline.size_code,deliline.size_name into v_material_code,v_qty,v_create_date,v_update_date,V_COLOR_CODE,v_color_desc,v_size_code,v_size_desc from temp_delivery_line deliline where deliline.docno=:NEW.docno; INSERT INTO PVC_DELIVERY_PRODUCT ( pk_id , commissioning_number , brand, years, season , order_meeting, material_code, amount , create_date, update_date, tcd_type, color_code, color_desc, size_code , size_desc ) values( sys_guid(), :NEW.DOCNO, :NEW.M_ATTRIBUTE_CODE1, SUBSTR(:NEW.M_ATTRIBUTE_NAME2,0,4), SUBSTR(:NEW.M_ATTRIBUTE_NAME2,6,1), :NEW.B_FAIR_CODE, v_material_code, v_qty, v_create_date, v_update_date, :NEW.BILL_TYPE, V_COLOR_CODE, v_color_desc, v_size_code, v_size_desc ); update da_pro_main damain set if_tzd = '1' where damain.color= V_COLOR_CODE AND damain.materiel_code =v_material_code; update da_pro_item daitem set if_tzd = '1' where daitem.color_code= V_COLOR_CODE AND daitem.mat_code =v_material_code;end;
java中返回List集合中指定元素的出现次数
ava中的Collections.frequency(Collection Object o):返回指定集合中指定对象出现的次数import java.util.*;public class ArrayListTest {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<Integer>();int[] array = {1, 12, 43, 12, 13, 12, 43};for (int i : array) {list.add(new Integer(i));}System.out.println(Collections.frequency(list, new Integer(1)));System.out.println(Collections.frequency(list, new Integer(12)));System.out.println(Collections.frequency(list, new Integer(43)));System.out.println(Collections.frequency(list, new Integer(13)));}}
在java 中不允许两个null去Equals。一般都会将其转化为String
public static String convertNull2String(String str) { String res = null; if (str == null || "null".equals(StringUtils.trim(str))) { res = ""; } else { res = StringUtils.trim(str); } return res; }
关联查询比子查询效率更高
在执行sql语句的过程中,子查询会比关联查询的效率低。所以在能用关联查询的时候就不要使用子查询。
经过个人实践,证明子查询效率特别低,而一般的子查询都可以由关连查询来实现相同的功能,关联查询的效率要提高很多,所以建议在数据查询时避免使用子查询(尤其是在记录很多时),而最好用关联查询来实现。
快速补全代码
本身是这样的 example.createCriteria();
然后快速变Criteria criteria=example.createCriteria();
ctrl+2右下角弹出提示,直接按L就可以了。。。。
使用StringBuilder代替“+”操作符
对于字符串的操作,其中如果用到了“+”操作符,那么应该改用StringBuilder代替。比如上面的代码。
这样使得字符串值修改更容易,而且不会对垃圾收集器GC造成额外的压力。
StringBuilder x = new StringBuilder("a");x.append(args.length);x.append("b");if (args.length == 1);x.append(args[0]);
避免使用迭代器
如果代码像这样:
for (String value: strings) { // Do something useful here}
那么在每次运行这个代码时,都会创建一个新的迭代器实例,而这会消耗大量的内存。
故建议使用下面的代码:
int size = strings.size();for (int i = 0; i < size; i++) { String value: strings.get(i); // Do something useful here}
如果实际的列表对象不需要真正发生改变,那么还可以在其阵列版本上操作,比如:
for (String value: stringArray) { // Do something useful here}
编写基于索引的迭代非常有用
阅读全文
0 0
- 项目问题以及解决方案记录
- iTVLobby项目中问题以及解决方案(1)
- iTVLobby项目中问题以及解决方案(2)
- 项目管理中遇到的问题以及解决方案(网络转载)
- Maven创建webapp项目过程中问题以及解决方案
- 问题以及解决方案
- 此博客仅用作在执行一些东西遇到的问题记录以及查找到的解决方案记录:
- Hisi3716C Android解决方案问题记录
- 几个问题以及对应的解决方案记录
- 项目中的问题记录
- 项目中问题记录
- web项目问题记录
- 项目开发问题记录
- Spark项目问题记录
- 项目开发问题记录
- Angular2项目日常开发中所遇问题及解决方案记录(一)
- jar hell问题以及解决方案
- Hbase性能问题以及解决方案
- python学习(一)
- 第三季复习
- lua 函数初识(四)
- python学习之字典
- 二面大疆提前批Android端
- 项目问题以及解决方案记录
- 剑指offer:表示数值的字符串
- 数据结构与算法(一)
- fgm实例练习笔记-3.4比较数字大小
- shell命令集
- 错题-数据结构(向量)
- Redis报错Java.net.UnknownHostException的解决办法
- SpringMVC学习之路
- java求素数算法