关闭
当前搜索:

ETL工具LucaNet读取子级科目

数据源: 需求: 对科目代码进行处理,保留汇总(父节点)科目的最下级(最后的子节点)科目,如只有一个汇总科目,就保留该科目。 比如:有a-->b-->c(151199)-->d(1511991) d的上级科目是C 思路: 观察得到,表中数据的科目代码至多有10位,8位,6位,汇总科目的科目代码只有4位。 每拿到一条数据中的科目代码,进行判断,如果...
阅读(75) 评论(0)

BI项目中的ETL设计详解(数据抽取、清洗与转换 )

ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析的依据。 ETL是BI项目最重要的一个环节,通常情况下ETL会花掉整个项目的1/3的时间,ETL设计的好坏直接关接到BI项目的成败。ETL也是一个长期的过程,只有不断的发现问题并解决问题,才能使ETL运行效率更高,为项目后期开发提供准确的数据。 ETL的...
阅读(323) 评论(0)

java基础总结-----》java三大特性/原则------多态

三大特性之一::多态 面向对象编程有三大特性:封装,继承,多态 封装隐藏了类内存的实现机制,可以在不影响使用的情况下改变类的内部结构,同时也不保护了数据。对外界而言它的内部细节是隐藏的,暴露给外界的只是它的访问方法。 继承是为了复用代码。继承定义了类与类之间的关联,共享特性。把若干个类相同/相似的属性抽取出来定义为一个父类或超类,然后使用这些类继承父类,这样他们不仅拥有父类的属性和方法,还可...
阅读(79) 评论(0)

java基础总结(二)-----》java三大特性/原则------继承

在《Think in java》中有这样一句话:复用代码是Java众多引人注目的功能之一。但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情。在这句话中最引人注目的是“复用代码”,尽可能的复用代码使我们程序员一直在追求的,现在我来介绍一种复用代码的方式,也是java三大特性之一---继承。 继承的概念: 继承所描述的是“is-a”的关系,如果有两...
阅读(43) 评论(0)

java基础总结-----》java三大特性/原则------封装

三大特性之一::封装 什么是封装? 信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据。 对外界而已,它的内部细节是隐藏的,暴露给外界的只是它的访问方法。 封装可以使我们容易的修改类的内部实现,而无需修改使用了该类的客户代码。 使...
阅读(47) 评论(0)

修改Ubuntu的aptget源为阿里源的方法

1、复制原文件备份 sudo cp /etc/apt/source.list /etc/apt/source.list.bak 2、编辑源列表文件 sudo vim /etc/apt/source.list 3、将原来的列表删除,添加如下内容 deb http://mirrors.aliyun.com/ubuntu/ vivid main restricted universe mu...
阅读(246) 评论(0)

浅说Mysql的行级锁,表级锁,页级锁

MySQL行级锁:引擎 INNODB,理解为对单独的一行记录加锁 仅对指定的记录进行加锁,这样其它进程还是可以对同一个表中的其它记录进行操作。 MySQL表级锁:引擎 MyISAM , 理解为锁住整个表,可以同时读,写不行 直接锁定整张表,在你锁定期间,其它进程无法对该表进行写操作。如果你是写锁,则其它进程则读也不允许。 MySQL页级锁:引擎 BDB ...
阅读(74) 评论(0)

数据库的连接池的原理与Hibernate的内置连接池及C3P0的配置

数据库连接池的原理: 在未使用DB连接池时,通过数据库连接对象Connection连接DB的。 这种方式的缺点是,当本次连接使用完毕后,就需要将该连接删除。 连接对象的创建需要通过网络与运程的数据库服务器DBserver 进行连接,连接对象的删除,也需要解除与远程的连接,将占有的资源释放。 这两处过程都是很消耗系统时间与系统资源的。当下一个访问数据库的请求到达时,需要再次创建连接,删除连接...
阅读(108) 评论(0)

了解hibernate.propertites文件

把log4j.xml文件放入项目src目录下,打开 删除File与RollingFile标签包含的内容(它们会自动生成两个文件夹,存文件的) 这样做的作用: 当我们在运行操作数据库的方法时,自动加载hibernate.propertites文件,但找不到,需要我们给它配置; src下新建一个文件file叫hibernate.propertites 打开编辑: hibernate...
阅读(65) 评论(0)

Hibernate的CURD操作

首先定义工具类:HbnUtils 包:com.etc.utils SessionFactory由于是重量级,线程安全的,所有我们的使用原则:是用单例的,且不要手动关闭该对象 public class HbnUtils{ private static SessionFactory sessionFactory; public static Session getSessio...
阅读(46) 评论(0)

ThreadLocal管理Session

利用ThreadLocal模式管理Session 为什么要用ThreadLocal模式呢? 在利用Hibernate开发DAO模块时,我们和Session打的交道最多, 所以如何合理的管理Session,避免Session的频繁创建和销毁,对于提高系统的性能来说是非常重要的; 以往是通过eclipse的插件来自动完成这些代码的,当然效果是不错的。但代码过于冗长,维护困难。  ...
阅读(47) 评论(0)

HIbernateAPI -Session与sessionFactory接口及Session对象的获取方式

HIbernateAPI-Session接口 sessionFactory接口: sessionFactory对象特点: 重量级,单例的,线程安全的, 由于是重量级,线程安全的,所有我们的使用原则:是用单例的,且不要手动关闭该对象 session接口: session对象 轻量级的,线程不安全的,多例的。 轻量级的,线程不安全的,所有我们把它做成多例模式的。使用完毕...
阅读(61) 评论(0)

Hibernate的配置文件与测试

首先新建java project项目,,笔者使用hibernate的版本是4.2.21 搭建hibernate环境: src新建文件夹,导入以下jar包: required目录下的所有jar包 optional/c3p0目录下的所有jar包 optionnal/ehcache/slf4j-api-1.6.1.jar jpa-metamodel-generator目录下所有jar包...
阅读(58) 评论(0)

插入排序--折半插入

思想: ①每次插入,都从前面的有序子表中查找出待插入元素应该被插入的位置;    ②给插入位置腾出空间,将待插入元素复制到表中的插入位置。    注意到该算法中,总是边比较边移动元素,下面将比较和移动操作分离开来,即先折半查找出元素的待插入位置,然后再同意地移动待插入位置之后的所有元素。当排序表为顺序存储的线性表时,可以对直接插入排序算法作如下改进:由于是顺序存储的线性表,所以查找有序子表时...
阅读(55) 评论(0)

插入排序---直接插入

思想: 插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。  插入排序方法分直接插入排序和折半插入排序两种。 算法实现: /// 插入排序 static void insertion_sort(int[] unsorted) { for (int i = ...
阅读(104) 评论(0)

快速排序

快速排序是冒泡排序的改进版,也是最好的一种内排序,在很多面试题中都会出现,也是作为程序员必须掌握的一种排序方法。 思想:1.在待排序的元素任取一个元素作为基准(通常选第一个元素,但最的选择方法是从待排序元素中随机选取一个作为基准),称为基准元素;        2.将待排序的元素进行分区,比基准元素大的元素放在它的右边,比其小的放在它的左边;        3.对左右两个分区...
阅读(70) 评论(0)

选择排序

思想: 选择排序的思想非常直接,从所有序列中先找到最小的,然后放到第一个位置。之后再看剩余元素中最小的,放到第二个位置……以此类推,就可以完成整个的排序工作了。 插入排序和选择排序的区别: 选择排序是固定位置,找元素。 插入排序的固定元素找位置,是两种思维方式。 int[] v = new int[]{5,6,92,10,8,1,3}; for(int i=0;...
阅读(51) 评论(0)

使用Hadoop和Spark实现二次排序

一、输入、期望输出、思路。 输入为SecondarySort.txt,内容为: 2000,12,04,10 2000,11,01,20 2000,12,02,-20 2000,11,07,30 2000,11,24,-40 2012,12,21,30 2012,12,22,-20 2012,12,23,60 2012,12,24,70 2012,12,25,10 2013,01,23,...
阅读(50) 评论(0)

使用Hadoop和Spark实现TopN算法(1)——唯一键

0.简介   TopN算法是一个经典的算法,由于每个map都只是实现了本地的TopN算法,而假设map有M个,在归约的阶段只有M x N个,这个结果是可以接受的并不会造成性能瓶颈。   这个TopN算法在map阶段将使用TreeMap来实现排序,以到达可伸缩的目的。   当然算法有两种,一种是唯一键,就是说key的类型是唯一的(是指在比较的实际阶段),比如本篇就是唯一键的TopN...
阅读(80) 评论(0)

StringTokenizer的用法及示例

StringTokenizer类: 根据自定义字符为分界符进行拆分,并将结果进行封装提供对应方法进行遍历取值 StringTokenizer方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释;该方法用途类似于split方法,只是对结果进行了封装; 帮助文档上对此进行了说明: StringTokenizer 是出于兼容性的原因而被保留的遗留类(在新代码中...
阅读(85) 评论(0)
28条 共2页1 2 下一页 尾页
    个人资料
    • 访问:3507次
    • 积分:209
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:11篇
    • 译文:0篇
    • 评论:1条
    文章存档