- 博客(26)
- 收藏
- 关注
原创 list边删除边遍历元素,java8
String aaa = "axa1axty1utxyu11x213";String aaa2 = "66666";List<String> ccc = new ArrayList<>();ccc.add(aaa);ccc.add(aaa2);ccc.removeIf(str -> str.contains("666"));for (String cc : ccc) { System.out.println(cc);}
2022-02-23 15:46:39
332
原创 oracle sql 分组,排序备忘
今天使用 oracle sql in (id) 有1000限制,,但是带上子查询就不会有1000限制比如 in (select id from dual)order by 排序 时 例如 order by aaa,bbb desc 不填默认是 asc
2021-12-07 16:46:27
692
原创 分组引发索引失效问题
今天oracle 对一大表进行分组查询,耗时20S,建了索引,看执行计划还是走了全表扫描。后来查询相关文档,分组索引字段需要设置为not null ,索引才会生效
2021-04-30 18:11:41
504
1
原创 Mockito.when.thenReturn 空指针问题
今天写mockit 单测时候,之前为了省事 when 的方法入参,一律使用anyObject() ,但是问题就出来了,mock方法直接空指针异常排查了很久,看了这篇文档,https://blog.youkuaiyun.com/weixin_44388689/article/details/113757617才知道,when 的方法 参数多种类型时,要指定类型,否则预期返回值就有问题,我的参数类似这种 method(0,10,"name") ,原始写法 method(anyObject(),anyObje..
2021-04-21 17:35:23
8676
1
原创 Mockit 遇到一个注入问题
之前遇到一个mockit 注入问题。 在service 同时注入 2个相同Dao 对象, 然后用mockit @mock 这个对象测试时,会报空指针异常,跟踪源码是mock不能反射指定那个对象,会照成注入对象null值
2021-04-15 14:28:23
516
1
原创 关于springboot大war包的坑
由于最近买了阿里云,装上tomcat7然后美滋滋的上了War包,但是结果是~~~springboot打的war包最低支持tomcat8,,
2018-06-25 23:44:34
1008
原创 Oracle 分页混乱解决
今天发现项目中一BUG 先贴出代码SELECT pm.MODEL_ID AS "modelId", pm.MODEL_NO AS "modelNo", pm.MODEL_TYPE_CN AS "modelTypeCn", pm.MODEL_TYPE_EN AS "modelTypeEn", ...
2018-02-11 14:28:15
844
转载 Oracle 条件语句 in和exists 区别
1、in和existsin是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询,一直以来认为exists比in效率高的说法是不准确的。如果查询的两个表大小相当,那么用in和exists差别不大;如果两个表中一个较小一个较大,则子查询表大的用exists,子查询表小的用in;例如:表A(小表),表B(大表)select * from A where c...
2018-02-11 14:16:11
2099
1
原创 mybatis 转义字符解决
在写mybatis sql时候有时候会遇到这种符号id <> #{id}这样的条件,执行就会报编译错误,由xml无法正确编译 <>符号因此只要加上 id <![CDATA[ <>]> #{id} 即可例如<![CDATA[ t.op_date >= SYSDATE - 30 AND t.op_date <= SYSDATE ]]&...
2018-02-11 14:07:17
1045
原创 Oracle 跨表更新sql
业余需求有时候会更新一张表的数据,从另外一张表的字段来贴上代码MERGE INTO t_hog_product_models_test teUSING (SELECT modelno, price FROM tmp_price) tpON (tp.modelno = te.model_no)WHEN MATCHED THEN UPDATE SET te.price_info_cn...
2018-02-11 14:00:38
659
原创 mybatis 中关于jdbcType=VARCHAR
看到网上很多大牛的mybatis xml代码 其中取值 都加上#{filter,jdbcType=VARCHAR} 一直很好奇。查询了一下 一些资料说是: 引用MyBatis 插入空值时,需要指定JdbcType mybatis insert空值报空值异常,但是在pl/sql不会提示错误,主要原因是mybatis无法进行转换, 所以一般在insert语句中insert的对象加上jdbcType就可...
2018-02-11 13:51:51
23772
2
原创 Oracle 锁表解决
有时候有测试接口,或者查询sql语句,数据会无限阻塞,而且后台也不报错。有可能是表被锁住得原因用以下sql 查看锁表记录select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time;然后...
2018-02-11 13:35:56
187
原创 Oracle 借助DECODE函数,自定义顺序排序
由于业务需求想根据自定义的ids排序 贴出部分代码 基于mybatisorder by decode (t.id, <foreach item="id" index="index" collection="ids" separator=","> #{id},#{index} </foreach>
2018-02-11 11:27:28
1675
转载 Oracle MERGE INTO用法
动机:想在Oracle中用一条SQL语句直接进行Insert/Update的操作。说明:在进行SQL语句编写时,我们经常会遇到大量的同时进行Insert/Update的语句 ,也就是说当存在记录时,就更新(Update),不存在数据时,就插入(Insert)。实战:接下来我们有一个任务,有一个表T,有两个字段a,b,我们想在表T中做Insert/Update,如果存在,则更新T中b的值,如果不存在...
2018-02-11 11:25:04
222
原创 mybatis自动扫描XML文件填坑
新增XXDao.java 已经XXDao.xml 命名 注意mybatis自动扫描命名规则比如路径结尾为Dao的xml 会纳入扫描,否则mybatis会报错<property name="mapperLocations" value="classpath*:com/mybatis/mapper/**/*Dao.xml" />...
2018-02-11 11:05:12
2531
转载 Oracle的NVL函数用法
从两个表达式返回一个非 null 值。语法NVL(eExpression1, eExpression2)参数eExpression1, eExpression2如果 eExpression1 的计算结果为 null 值,则 NVL( ) 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eE...
2018-02-11 11:01:24
553
转载 SQL中distinct的用法
用distinct关键字只能过滤查询字段中所有记录相同的(记录集相同),而如果要指定一个字段却没有效果,另外distinct关键字会排序,效率很低 。 select distinct name from t1 能消除重复记录,但只能取一个字段,现在要同时取id,name这2个字段的值。 select distinct id,name from t1 可以取多个字段,但只能消除这2个字段值全部相同的...
2018-02-11 10:59:06
1697
原创 单元测试类,事务回滚解决
由于自己编写单元测试类,每次新增,删除,修改,事务回滚,数据库更新不成功 研究半天后在单元测试类上加上注解@Transactional@Rollback(false) 注解式事物自动回滚关闭其中改为false,解决! 贴上代码@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations = { "classpath...
2018-02-11 10:52:43
2147
原创 mybatis批量插入
在mybatis 批量插入 由于 oracle数据 不支持insert into 表名 values (xxx,xxx),(xxx,xxx);因此用 begin end 解决,贴出代码 begin <foreach item="item" collection="nameList"> INSERT INTO T t (t.id, t.name) ...
2018-02-11 10:40:44
134
原创 mybatis 新增主键返回sql (Map传参)
由于项目用的是oracle 贴出代码片段<selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE"> Select fn_seq_format(S_hog_role_profile.nextval, 'HR') as id from dual</selectKey>这段写在新增语句之前...
2018-02-11 10:18:43
999
原创 关于mybatsi foreach用法感悟
先贴出代码片段<foreach item="item" collection="list" open="(" separator=","close=")"> #{item.值}</foreach>已上写法,当传入参数为 List<Map<String,Object>>集合时,item 则是
2018-02-11 10:07:13
316
原创 查询表同时满足同一个列sql
业务需求同时满足同一个列有多个字段的值 (适合过多条件过滤 )分组统计次数 =2 ,满足in条件有点类似双表交集.不说废话,贴出代码SELECT t.字段 FROM 表名 t WHERE t.字段1 IN ('值1', '值2') GROUP BY t.字段HAVING COUNT(*) = 2以上同时满足2个条件的 数据,用于以下sql不能实现需求t.字段1 = '值1' and t....
2018-02-11 09:55:08
467
原创 备份表sql语句
我用的是oralce 数据库。在每次手动对数据库表作CRUD时,备份一下表数据,防止误操作。以下是SQL语句create table T_BAK(备份表名) as select * from T(原表)注意备份的 T_BAK 主键以及外键关系均不会保留。...
2018-02-11 09:31:21
28601
原创 oracle 表复制sql简单SQL语句
INSERT INTO T(表名) (T_ID, T_NAME) SELECT SYS_GUID()(自定义主键), T1_NAME(需要复制的字段) FROM T1(需要复制的表)
2018-02-11 09:27:44
187
原创 string,stringbuffer,stringbuilder的区别
string,stringbuffer,stringbuilder的区别标签: javastringbufferstringbuilderstring线程安全2017-08-25 20:58 6人阅读 评论(0)收藏举报分类: JAVA(5) 作者同类文章X版权声明:本文为博主原创文章,未经
2017-08-27 11:51:36
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人