- 博客(10)
- 收藏
- 关注
原创 Java ArrayList的实现原理及源码解析
ArrayList 的介绍:ArrayList 是Java collections 集合的一种实现,是大小可自动动态改变的列表,其底层数据结构是一个允许存放任何对象类型(包括 null 的)的数组 Object[]。/** * * Resizable-array implementation of the List interface. Implements all * optio
2017-09-23 07:52:06 306
原创 Java8 Lambda表达式
引入:通过 Runnable 接口创建线程的代码如下所示,代码中创建了一个实现 Runnable 接口的新对象, Runnable 接口只有一个方法,即 run方法,新对象实现了 run 方法,打印出一行字:真正的业务代码。实现了Runnable 接口的匿名内部类是传递了一种行为的对象,行为就是第7行的代码。此例中,程序只想传入行为,而非对象,真正的行为代码只有一行,但是调用这行业务代码却不得不多
2017-09-13 06:28:51 321
原创 Java8 常用的Stream流操作
概念:Steam 是Java8 提出的一个新概念,不是输入输出的 Stream 流,而是一种用函数式编程方式在集合类上进行复杂操作的工具。简而言之,是可以处理集合数据的操作。在Java8以前,对集合的操作需要写出处理的过程,如在筛选出满足条件的数据,需要一一遍历集合中的每个元素,再把每个元素逐一判断是否满足条件,最后将满足条件的元素保存返回。而Stream 对集合筛选的操作提供了一种更为便捷的
2017-09-12 06:52:09 28612 8
原创 Oracle 如何将某一行记录放在查询结果的第一行【最后一行】
场景:已知药品费用所占比例的公式是药品费用与总费用之间的比例,通过如下SQL语句已求出各个机构的药品费用所占比例,查询各机构药品费用所占比例的SQL语句: select t1.parent_id org_id, --机构id decode(sum(t.charge_money), 0, 0, round(sum(t.drug_money) / sum(t
2017-09-11 20:50:41 10356
原创 MyBatis where标签的用法
场景:在MyBatis拼装动态SQL语句中,在where的条件中常常先判断 if 条件是否成立,再加入 where 的条件部。例如,查询满足条件的学生时,考虑到 if 标签的条件都不成立的情况,因此在 where 的 条件补加入 1=1 这个永真条件,如果没有加入1=1,这个语句在执行时是一个错误不能执行的语句。XML语句代码: select * from St
2017-09-11 20:19:59 2238
原创 Dozer 简介
简单定义:Dozer是相同类型或者不同复杂类型的JavaBean之间的数据递归复制的工具。Why Dozer:用于分层的J2EE系统里JavaBean之间的拷贝。如下图,展示层的数据是封装好的VO,展示层和服务层之间传递数据的对象是DTO,DO是业务实体对象,PO是持久化对象,与数据库表字段一一对应的映射对象。在不同层次之间数据需要转化和传递。除了set、get转换对应复制及Spring的Be
2017-09-07 17:05:32 738
原创 MyBatis foreach语句批量插入数据
项目框架:Spring+SpringMVC+MyBatis+Oracle问题描述:需要将程序里的一个集合保存到数据库里,集合的类型对应数据库的一个实体,若在程序里遍历集合再一条条保存到数据库表中有点麻烦,这里可以利用MyBatis 的 foreach标签实现批量插入数据。实例:要新增的实体为Item(项目实体):
2017-09-06 14:31:38 12214
原创 Leetcode Java求解Longest Common Prefix
题目:Write a function to find the longest common prefix string amongst an array of strings.题意:写出一个函数,求解一个字符串数组中的最长公共前缀。示例:{“abcd”,“avf”,“adww”,“awew”} 的最长公共前缀是"a"。解题思路:1.若数组长度为0,即数组为空数组,则最长公共前缀是
2017-09-05 21:28:40 257
原创 Java8 创建Stream的几种方法
Stream的静态方法 of 可以将数组转换为Stream//Stream.of(T... values) 参数为一组数组String[] strings = { "java", "js", "angular", "react", "vue" };Stream stream1 = Stream.of(strings);Stream stream2= Stream.of("java", "js",
2017-08-26 09:10:39 1455
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人