A code cleanliness code farmers, A programmer concentrate on elegant design, A want to do with the product architect
暂时未有相关通用技术能力~
阿里云技能认证
详细说明package classloader; public class ClassLoaderDisplayDemo { public static void main(String[] args) { Person person = new Person(); person.
前面有一篇日志中简单的介绍了 log4j,同时也介绍了它与commons-logging的关系,但是突然冒出来一个slf4j,并且slf4j有取代commons-logging的趋势,所以,我们可以推知slf4j与commons-logging的作用应该 相差不大的。
背景 由于现在开源框架日益丰富,好多开源框架使用的日志组件不尽相同。存在着在一个项目中,不同的版本,不同的框架共存。导致日志输出异常混乱。虽然也不至于对系统造成致命伤害,但是明显可以看出,架构不够精良,追求极致略有不足。
对输入数据判重,使用Map,将对象作为Key,使用map的containsKey方法来着重是否是重复记录。正常的处理流程:(1)将输入的数据封装成对象(2)判重,将没有重复的数据存储到map(3)对没有重复的数据,进行校验(4)将部分输入的数据,转换成数据库存储时的格式 问题:因为对已经存储在map中的对象中的字段进行了修改,即使后面的输入的对象与前一个重复,判重就会失效。
配置:中设置theme为 报错信息: 09-20 10:31:58.185 1392-1392/? E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: networkimageviewer.
Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
1.正则表达式的创建: 方法一:以字面量形式来创建 格式为/pattern/flags;其中pattern(模式)为任何简单或者复杂的表达式,可以包括字符类,限定符,分组,向前查找以及反向引用。
今天在智能停车场项目中需要实现PullToRefreshListView的单选功能,考虑到分页,刷新等,以前的实现方式是采用自己维护一个集合保存选中位置的选中状态,但这个方式比较繁琐,今天采用了listview的单选模式 listView.
一、概述 在App中,经常会出现侧滑菜单,侧滑滑出View等效果,虽然说Android有很多第三方开源库,但是实际上 咱们可以自己也写一个自定义的侧滑View控件,其实不难,主要涉及到以下几个要点: 1.对Android中Window类中的DecorView有所了解 2.对Scroller类实现平滑移动效果 3.自定义ViewGroup的实现 首先来看看效果图吧: 下面现在就来说说这里咱们实现侧滑View的基本思路吧,这里我采用的是自定义一个继承于RelativeLayout的控件叫做XCSlideView类吧。
【0】写在前面 由于ssh 实现的是免密码登陆,大致步骤是: 0.1) client通过ssh登陆到server; 0.2) server检查家目录下的.ssh文件, 并发送公钥文件 authorized_keys 到client ; 0.
execute immediate的语法如下: execute immediate 'sql'; execute immediate 'sql_select' into var_1, var_2; execute immediate 'sql' using [in|out|in out...
作为应用程序一个较好的用户体验应该是:在退出应用程序前询问用户是否真正退出?目前普遍做法是,一在退出前询问是否真正退出,二是连续按两下退出。 返回键捕获 应用程序退出的两种方式 实现上述两种应用退出方式需要在onkeyDown()来进行捕获返回键 在Activity中,如果需要动态注册广播官方文档建议在onResume()进行注册,在onPause()中取消注册。
之前使用cglib的时候不需要将classLoader作为参数传入,但动态代理却要,带着这个疑惑进入这个方法: Proxy.newProxyInstance(classLoader, interfaces, InvocationHandler) 要在classLoader里去找interfaces,如果也加载进来了才能继续执行,并且用ProxyGenerator动态生成了一个代理类的字节码文件(使用了缓存技术,只需要生成一次),然后用classLoader将这个字节码文件加载进来。
先简单介绍下java的classloader,网上资料很多,就说点关键的。 Java 中的类加载器大致可以分成两类,一类是系统提供的,另外一类则是由 Java 应用开发人员编写的。系统提供的类加载器主要有下面三个: 引导类加载器(bootstrap class loader):它用来加载 Java 的核心库,是用原生代码来实现的,并不继承自 java.lang.ClassLoader。
一个一直运行正常的应用突然无法运行了。在类库被更新之后,返回下面的错误。 Exception in thread "main" java.lang.NoSuchMethodError: com.nhn.user.UserAdmin.addUser(Ljava/lang/String;)V at com.nhn.service.UserService.add(UserService.java:14) at com.nhn.service.UserService.main(UserService.java:19) 应用的代码如下,而且它没有被改动过。
ThreadLocal的目的就是为每一个使用ThreadLocal的线程都提供一个值,让该值和使用它的线程绑定,当然每一个线程都可以独立地改变它绑定的值。如果需要隔离多个线程之间的共享冲突,可以使用ThreadLocal,这将极大地简化你的程序. 关于的ThreadLocal更多内容,请参考《ThreadLocal》。
站在使用者的角度,future是一个经常在多线程环境下使用的Runnable,使用它的好处有两个:1. 线程执行结果带有返回值2. 提供了一个线程超时的功能,超过超时时间抛出异常后返回。 那,怎么实现future这种超时控制呢?来看看代码: FutureTask的实现只是依赖了一个内部类Sync实现的,Sync是AQS (AbstractQueuedSynchronizer)的子类,这个类承担了所有future的功能,AbstractQueuedSynchronizer的作者是大名鼎鼎的并发编程大师Doug Lea,它的作用远远不止实现一个Future这么简单,后面在说。
诊断并解决ORA-04031 错误 当我们在共享池中试图分配大片的连续内存失败的时候,Oracle首先清除池中当前没使用的所有对象,使空闲内存块合并。如果仍然没有足够大单个的大块内存满足请求,就会产生ORA-04031 错误。
一个Swing的例子,按钮控件上中文出现乱码: 试了网上的设置Font,或将汉字使用new String(str.getBytes(),"GBK")对展示的汉字进行编码。都无效。 解决办法:(1)更改项目的编码为GBK,汉字可以正式显示(2)将java.
一、使用HttpURLConnection向服务器发送get请求 1、向服务器发送get请求 @Testpublicvoid sendSms() throws Exception{ String message="货已发到"; message=URLEncoder.
If the command line way of configuring your proxy server doesn't work, you can probably just edit .
To navigate to the implementation(s) of an abstract method, position the caret at its usage or its name in the declaration and press Ctrl+Alt+B.
用过Android系统手机的朋友们相比都知道,AndroidOS的短信和iOS一样,是以会话模式展现的,这种展现方式很容易让使用者查找以前的聊天记录。 关于用代码删除短信,其实删除的也是对话,无论是最近的,还是以前的,统统都会一并删除。
public void sendNotification(Context ctx,String message) { //get the notification manager String ns = Context.
方法一:调用默认的短信程序Intent intent = new Intent(Intent.ACTION_VIEW);intent.setType("vnd.android-dir/mms-sms");intent.
上回我们提到在4.0ICS之后,Google为Android平台的Notification这把“倚天剑”注入了更多新鲜的元素,使其更加实用美观。Notification的样式从此变得丰富起来,以适应于不同情景的需要。
comment中的换行。把换行去掉就可以了
程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。
package date; import java.text.DateFormat; import java.util.Calendar; import java.util.Date; /*2015-9-9*/ public class DateDemo { ...
安装 下载 git OSX 版 下载 git Windows 版 下载 git Linux 版 创建新仓库 创建新文件夹,打开,然后执行 git init 以创建新的 git 仓库。
Fork,本身并不是git工具中的一个命令,也不是对git的扩展,它是在GitHub上的概念,是另一种clone方式——在服务器端的clone。而我们通常意义上的clone,是将远程repo 复制一份到本地。
执行存储过程时,execute和call的区别 EXEC is a sqlplus command that put its argument as an anonymous pl/sql block: 'EXEC xxx' is transformed to 'BEGIN xxx; END;'...
多听多想少说今天一同事跟代码,遇到问题。找我帮忙看下 我一看这种情况,没等同事说两种,就套用以前的经验,blabla的说个不停等我说过,同事结合我说的,说还有些不一样,因为人机命令我以前从头到尾做过一次,对这个流程及相关环节比较清楚,正好上次遇到的症状上这次也有几分相像,然后又 blablabla完全没有顾忌听众的感受,对自己很无语,很明显出力不讨好的节奏好在,同事在验证时,在和同事一起梳理数据流向时,发现还有其它团队提供的第三方模块。
package com.example.sms; import android.app.Activity; import android.app.Notification; import android.
相关:GenyMotion自带VirtualBox 解决办法:首先确认genymotion及virtualBox正确安装,然后右键点击启动程序选属性,在兼容性里选以兼容模式运行,同时勾选以管理员身份运行。
优点:常量做为Key,在编译期就确定了。Enum做为key,在运行时也可以改变 package enumdemo; import java.util.EnumMap; import java.
建议首先阅读下面两篇文章,这样才可以更好的理解Activity的加载模式: Android的进程,线程模型: http://www.cnblogs.com/ghj1976/archive/2011/04/28/2031586.html 其中对“Android的单线程模型”的描述,明白Activity的一些注意事项。
摘要:框架布局是Android开发者组织视图控件最简单和最有效的布局之一。通过本文,你将学到所有关于框架布局的知识,它们主要用来在屏幕上组织特别的或重叠的视图控件。使用得当的话,很多有趣的Android程序用户界面都可以基于框架布局来设计。
简介 在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试。但是,如果目标版本的SDK没有关联对应版本的源代码的话,就会提示你找不到源代码。
在Android Studio上点了update,系统自动升级,自动重启Android Studio后,以前的项目Gradle正常编译: Unable to start the daemon process.
一.Git已经在你的系统中了,你会做一些事情来客户化你的Git环境。 你只需要做这些设置一次;即使你升级了,他们也会绑定到你的环境中。你也可以在任何时刻通过运行命令来重新更改这些设置。 Git有一个工具被称为git config,它允许你获得和设置配置变量;这些变量可以控制Git的外观和操作的各个方面。
简介 文件系统就是分区或磁盘上的所有文件的逻辑集合。 文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。 不同Linux发行版本之间的文件系统差别很少,主要表现在系统管理的特色工具以及软件包管理方式的不同,文件目录结构基本上都是一样的。
1. TCP/IP协议栈 与OSI参考模型不同,TCP/IP协议栈共有4层,其中网络接口层对应OSI中的物理层和数据链路层,应用层对应OSI中的应用层、表示层和会话层。 在网络接口层的主要协议有:ARP、RARP等。
问题现象: 这几天在为客户终端换装杀毒软件时出现这么一个问题:在控制面板的添加或删除程序里面将“McAfee VirusScan Enterprise和 McAfee AntiSpyware Enterprise Module”卸载后,却无法卸载“McAfee agent”,总是提示“处于托管模式时无法删除”。
首先询问对方数据库的表空间名称和大小,然后在你的oracle中建立相应表空间,最后使用命令导入、导出数据。 补充: 1.要新建一个数据库;Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。
引言 生产者和消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一个存储空间,如下图所示,生产者向空间里存放数据,而消费者取用数据,如果不加以协调可能会出现以下情况: 生产者消费者图 存储空间已满,而生产者占用着它,消费者等着生产者让出空间从而去除产品,生产者等着消费者消费产品,从而向空间中添加产品。
引言 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。