自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苦逼的程序猿☺

嗵,嗵,嗵,一库!!!

  • 博客(293)
  • 资源 (2)
  • 问答 (3)
  • 收藏
  • 关注

转载 Oracle中用一个表的数据更新另一个表的数据

转自:http://www.2cto.com/database/201205/130987.html有下面两个表:将表tab1中id值与和表tab2中id值相同的行的val更新为tab2中val的值. select * from tab1; select * from tab2 最容易犯的错误是:update tab1 set val=(select val from tab2 whe

2017-01-03 13:49:54 28489 3

原创 Android EditText定制粘贴和定制输入

前言EditText是大家比较熟悉的输入框控件,我们长按,可以使用系统自带的复制粘贴功能;另外获得焦点后,也能和输入法进行交互,实现文字的输入! 如果一个EditText,没有设置任何style,我们想在粘贴显示之前,做一些逻辑上的操作,比如一段文字是粗体或者倾斜的,我想粘贴过来也是粗体或者倾斜,该怎么做!还有如果我们想在输入法输入文字时,就想让输入法输入的文字是粗体或者倾斜的展示在EditTex

2016-12-12 15:37:31 9528

原创 RxJava 2.0 使用详解

前言在上一篇博客中,提到了RxJava的一些比较核心的东西,还有与1.x版本的一些区别! 现在我们具体了解一下它的使用!使用最基本的的使用我们知道一个简单的RxJava的应用,需要一个观察者或者订阅者Observer,一个被观察者Observable,最后调用subscribe()方法将两者绑定起来! 示例://创建观察者或者订阅者Observer observer = new

2016-11-29 11:42:28 44635 9

原创 RxJava 2.0,我来了

先扯几句作为响应式编程牛逼的开源库RxJava已经火了好久了,后被移植到很多平台比如RxAndroid,最近一段时间才对它做了一些了解,我相信好多新手的在接触这块内容的时候,都看过这篇文章: 给 Android 开发者的 RxJava 详解 没错,就是扔物线大神写一篇文章,这篇文章对整个RxJava的使用,原理都做了比较详细的阐述,不过文章是真的长啊!需要花费较长的时间阅读和理解! 然而,在我

2016-11-23 15:49:58 3184

原创 ButterKnife使用详解

简介正如其官网所说:"Field and method binding for Android views",ButterKnife是对Android view的属性和方法的强大的绑定注解框架。 GitHub地址:https://github.com/JakeWharton/butterknife/ 官网地址:http://jakewharton.github.io/butterknife/

2016-11-21 15:55:22 3159

原创 Android音频进阶

前言在Android2.3中增加了对音频混响的支持,这些API包含在android.media.audiofx包中。 AudioEffect是android audio framework(android 音频框架)提供的音频效果控制的基类。开发者不能直接使用此类,应该使用它的派生类。派生类有:Equalizer,Visualizer,BassBoost,PresetReverb,Environm

2016-11-16 17:36:57 11809 10

转载 Google推荐的图片加载库Glide介绍

前言官方推荐的图片加载库,最近有具体的了解了一下!介绍这篇文章讲解的比较详细,收藏一下! Google推荐的图片加载库Glide介绍

2016-11-14 17:50:55 438

原创 Android中使用Timer和TimerTask

前言近期有个需求,要每隔一段时间,应用向后台发送一些数据,用作统计,这时可以使用Java提供的计时器的工具类,即Timer和TimerTask来实现这一功能。 简介Timer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象,然后调用schedule方法来完成这种间隔的操作。 这里用

2016-11-08 17:58:57 21200

转载 Oracle修改字段类型的方法

转自:Oracle修改字段类型方法总结需求有一个表名为tb,字段段名为name,数据类型nchar(20),现需要将其修改为其他类型!方法1、假设字段数据为空,则不管改为什么字段类型,可以直接执行:alter table tb modify (name nvarchar2(20));2、假设字段有数据,则改为nvarchar2(20)可以直接执行:alter table tb modify (nam

2016-11-07 14:58:59 933

原创 Oracle 解决锁表问题

前言更新一张表的数据,就几百条,然后特别慢,一直在执行,然后强制退掉,重新执行还是一样,考虑到可能是锁表的问题!解决①首先查找是哪些session被锁:select object_name,machine,s.sid,s.serial#from v$locked_object l,dba_objects o ,v$session swhere l.object_id=o.object_id an

2016-11-04 11:03:15 5155

转载 HashMap实现原理和性能分析

前言HashMap是一个非常重要的数据结构,了解它的实现原理是必要的!分析参考文章: HashMap详细介绍(源码解析)和使用示例 Map实现之HashMap性能及算法 Hashmap实现原理

2016-11-02 15:54:35 547

原创 内存缓存LruCache详解

前言最近有用到LruCache,但是对其原理不太了解,所以看了源码,知道了一个大概,想总结一下!介绍现在大部分的缓存框架,比如图片加载框架,网络请求框架等都使用三级缓存来提高效率,即内存-文件(SD卡或手机)-网络。对于图片加载来说,就是加载图片的时候首先从内存缓存中取,如果没有再从文件缓存中取,如果文件缓存没有取到,就从网络下载图片并且加入内存和文件缓存。 LruCache是android提供的

2016-11-02 15:17:11 3871 1

转载 Android Touch事件传递机制

之前分享过一个关于事件传递机制的文章,最近又看到一篇,收藏分享一下! Android-三张图搞定Touch事件传递机制

2016-10-26 17:43:45 350

转载 Android View绘制流程

看到一篇文章,讲解的比较清晰透彻!分享一下: 公共技术点之 View 绘制流程

2016-10-26 17:39:56 282

转载 Java常用排序算法/程序员必须掌握的8大排序算法

算法这块还是比较薄弱,需要花功夫加强!传送门:Java常用排序算法/程序员必须掌握的8大排序算法

2016-10-24 17:00:04 465

转载 ContentResolver query 参数详解

前言遇到查询系统联系人的一个问题,对query()方法理解的不到位,现在总结整理一下!解释ContentResolver contentResolver = this.getContentResolver(); ContentResolver直译为内容解析器,Android中程序间数据的共享是通过Provider/Resolver进行的。提供数据(内容)的就叫Provider,Resovler提供接

2016-10-20 17:24:49 7513

原创 存储过程中创建表 报ORA-01031: insufficient privileges权限不足

问题在PL/SQL中新建存储过程Procedure,然后在右键,点击测试的时候,调试到建表的那一行就报错:ORA-01031: insufficient privileges! 存储过程:create or replace procedure get_clob is v_table_name varchar2(32); v_sql varchar2(2000); v_cn

2016-10-19 15:36:46 28287 1

原创 Oracle 创建DBLink

需求两台数据库服务器(本地)和(远程192.168.1.59),本地用户orcl需要访问到远程服务器下mars的数据,这时就需要创建DBLink。方案①先确定用户是否有创建DBLink的权限:select * from user_sys_privs where privilege like upper('%DATABASE LINK%'); 如果没有,则需要使用 sysdba 角色给用户赋权:gra

2016-10-19 11:13:44 29186 1

转载 Oracle通过DBLink操作数据表,报错“ORA-22992:无法使用从远程表选择的lob定位器”

介绍错误异常:[Error] Execution (1: 1): ORA-22992: 无法使用从远程表选择的 LOB 定位器 原因:使用dblink从远程数据库向本地数据库 INSERT数据时,因远程表中含有BLOB或者CLOB字段,在SELECT 和 INSERT INTO操作时,报”ORA-22992: 无法使用从远程表选择的 LOB 定位器”错误,通过创建临时表并从临时成功把数据插入到目的

2016-10-14 16:44:34 16814

原创 Android Webview使用自定义字体加载网页

前言有时,当我们使用Webview加载一个网页的时候,需要使用特定的字体来显示,这时就需要我们对页面做下处理!方法①首先需要我们获得目标网页的HTML源码:URL url = new URL(address); URLConnection urlConnection = url.openConnection(); HttpURLConnection conn = (H

2016-10-10 15:09:37 15609 2

原创 Android应用与Java Web服务器保持Socket长连接

前言如果服务器需要知道应用当前的连接状态,包括手机网络状态的切换(Wifi和数据的转换),断开网络或者切换VPN网络等,那么这些情况,socket连接该如何处理? 下面简单说一下我的想法和遇到的坑!Java Web服务器①首先一个线程类,用来接收客户端连过来的socket: ThreadSocket.javaimport java.io.IOException;import java.io.I

2016-10-10 11:05:10 6396

原创 HashMap排序

前言我们都知道HashMap在遍历的时候,是无序的,特别是不能保证该顺序恒久不变。但是我们有的时候,会要求它按照一定的顺序来输出,这时候就需要我们对HashMap进行排序处理。方法Map<String,String> map=new HashMap<String,String>(); map.put("key1", "bb"); map.put("key0

2016-09-29 14:11:25 1532

原创 PackageManager获得当前手机正在运行的应用程序

前言在网上找到了一张图,对于理解PackageInfo,ApplicationInfo和ActivityInfo有很好的帮助! 示例 /** * 获得手机中正在运行的有访问网络权限的第三方应用的名字 * * @param context * @return */public static void getRunningAPP(Context co

2016-09-23 18:07:29 1904

原创 Android中使用DES加密算法

import java.security.Key;import java.security.spec.AlgorithmParameterSpec;import java.util.Locale;import javax.crypto.Cipher;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.DESKeySpec

2016-09-23 17:52:48 4879 2

原创 中文和Unicode编码互转

public class UnicodeUtil { /** * 字符串转换unicode */ public static String string2Unicode(String string) { StringBuffer unicode = new StringBuffer(); for (int i = 0; i < st

2016-09-23 17:50:58 2588

原创 Android获取如何获取当前手机IP地址

public static String getIPAddress(Context context) { NetworkInfo info = ((ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();

2016-09-22 18:30:01 40893 1

原创 Android中如何提取HTML源码内的所有文字内容

前言近期一个需求,要提取到网页源码中的文字,然后对这些文字做进一步的处理,首先想到的就是正则表达式,那么下边说一下怎么用正则表达式来提取到文字内容。做法①我们得到的HTML源码,是带有格式的,比如换行,缩进等,所以我们首先要对这些内容进行清除。private String regMatchEnter="\\s*|\t|\r|\n";上面对应的分别是空格,制表符,回车,换行的正则表达式,然后匹配到后,

2016-09-09 15:18:17 9794 2

原创 盘点Android使用自定义字体遇到的坑

最近项目中涉及到一些其他平面的汉字或者别的文字的展示,具体的细节就不提了,那么怎么使用这些TTF字体文件呢,就需要借助于TypeFace这个类来实现。使用字体文件我们可以有两种方式使用字体文件: ①一般字体文件都放在项目Assets目录下,使用的时候:Typeface typeface = Typeface.createFromAsset(getAssets(), "fonts/xxxx.ttf"

2016-09-06 16:03:33 8614

原创 Android Studio引用第三方项目,Jar包,AAR包总结

引用第三方项目①首先将第三方项目作为Module导入到我们的项目中,具体就是: ②导入之后,需要我们在项目的Gradle的dependencies{}下添加:compile project(':这里为第三方项目名称')关于jar包使用android studio打jar包如果想使用android studio将我们的项目打成jar包,首先要明确的是只能将java文件打包,而不能打包res等资

2016-08-23 18:11:28 16774 1

转载 开源ETL工具kettle系列之建立缓慢增长维

摘要本文主要介绍使用kettle 来建立一个Type 2的Slowly Changing Dimension 以及其中一些细节问题Kettle 简介Kettle 是一个强大的,元数据驱动的ETL工具被设计用来填补商业和IT之前的差距,将你公司的数据变成可增长的利润. 我们先来看看Kettle能做什么: 1. Data warehouse population with built-in supp

2016-08-08 11:51:22 2416

转载 开源ETL工具kettle系列之动态转换

摘要本文主要讨论使用Kettle来设计一些较为复杂和动态的转换可能使用到的一些技巧,这些技巧可能会让你在使用Kettle的时候更加容易的设计更强大的ETL任务。动态参数的传递Kettle 在处理运行时输入参数可以使用JavaScript 来实现,大部分工作只是按照一个模板来处理的。 动态参数传递主要使用在像数据清理,调式,测试,完成复杂的条件过滤等等,这种方式一般不会在产品已经运行稳定了一段时间之

2016-08-08 11:30:58 2754

转载 开源ETL工具kettle系列之增量更新设计

前言ETL中增量更新是一个比较依赖与工具和设计方法的过程,Kettle中主要提供Insert / Update 步骤,Delete 步骤和Database Lookup 步骤来支持增量更新,增量更新的设计方法也是根据应用场景来选取的,虽然本文讨论的是Kettle的实现方式,但也许对其他工具也有一些帮助。应用场景增量更新按照数据种类的不同大概可以分成: 1. 只增加,不更新, 2. 只更新,不增加

2016-08-08 11:23:35 8773 2

转载 开源ETL工具kettle系列之在应用程序中集成

摘要本文主要讨论如何在你自己的Java应用程序中集成Kettle集成如果你需要在自己的Java应用程序中集成Kettle , 一般来说有两种应用需求,一种是通过纯设计器来设计ETL转换任务,然后保存成某种格式,比如xml或者在数据库中都可以,然后自己调用程序解析这个格式,执行这种转换,是比较抽象的一种执行方式,ETL里面转换了什么东西我们并不关心,只关心它有没有正常执行。另一种是通过完全编程的方式来

2016-08-08 11:10:37 5351 1

转载 开源ETL工具kettle系列之常见问题

摘要本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案问题Join我得到A 数据流(不管是基于文件或数据库),A包含field1 , field2 , field3 字段,然后我还有一个B数据流,B包含field4 , field5 , field6 , 我现在想把它们 ‘加’ 起来, 应该怎么样做. 这是

2016-08-08 10:55:36 1987

原创 OKHttp使用详解及源码解析

前言上一篇博客了解了Retrofit的使用,它是对OKHttp的封装,且Retrofit2的内部实现是OKHttp3,下面就了解一下OKHttp3的使用!使用①首先导入依赖,最新的版本是3.4.1,在gradle中:compile 'com.squareup.okhttp3:okhttp:3.4.1'OKHttp内部依赖Okio库,所以也要添加Okio库,最新版本为1.9.0:compile 'co

2016-07-21 17:09:50 7656

原创 Android网络请求框架Retrofit使用详解

前言技术日新月异,一天不跑,就out了! 早点的Android的网络请求框架android-async-http,Volley,XUtils早已被抛诸脑后,到前段时间的OKHttp,再到最近一段时间大火的Retrofit,封装的越来越好!代码越来越简洁! Retrofit与okhttp共同出自于大名鼎鼎的Square公司,retrofit就是对okhttp又做了一层封装。把网络请求都交给给了Ok

2016-07-19 15:55:25 5196

原创 Android如何正确获得View的宽和高

前言在设置PopupWindow的showAsDropDown()方法时,想让它和相对控件的底部对齐,所以想在y的偏移设置成负的高度,但是在oncreate()中利用view.getWidth()或是view.getHeiht()来获取view的宽和高,他们的值都是0! 因为在调用oncreate()方法时,界面处于不可见状态,内存加载组件还没有绘制出来,你是无法获取他的尺寸。 那如何在绘制组件

2016-07-13 18:23:19 8640

转载 深入理解JVM内幕

前言我不认为为了使用好Java必须去了解Java底层的实现。许多没有深入理解JVM的开发者也开发出了很多非常好的应用和类库。不过,如果你更加理解JVM的话,你就会更加理解Java!内容看了一篇博客,是译文,讲的比较深刻透彻!值得一看! http://blog.csdn.net/zhoudaxia/article/details/26454421

2016-07-04 17:30:21 543

原创 Android Crush之Native Crush分析

前言最近遇到了一个错误,错误信息只有简单的一行,其他的什么都没有:A/libc: Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 2733之后查了一些资料,是因为底层的C/C++报错!那么如何分析类似的这种错误呢!分析转自IT_xiao小巫的博客:http://blog.csdn.net/wwj_748/article/details

2016-07-01 18:04:18 712

原创 Android多渠道打包

前言Android开发发布版本,一般要对应多个应用市场发布对应的版本,在gradle中配置可以一次打包全部渠道的release包,方便快捷!步骤这里以友盟为例! ①首先在manifest中声明一个变量,写在<application/>标签内:<meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}"

2016-06-29 18:16:47 792

sublime text channel_v3.json

sublime text在下载插件的时候,package列表文件被墙,就是这里的channel_v3.json文件!

2019-01-23

OCR识别,简体中文识别包chi_sim.traineddata

OCR图像文字识别,简体中文识别包

2017-07-03

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除