自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(22)
  • 资源 (3)
  • 收藏
  • 关注

原创 《轻量级Java EE企业应用实战》学习笔记-Ant的使用

Ant会在当前目录下搜索build.xml文件,如果找到则作为生成文件,并执行默认的target#一、Ant的命令ant -f a.xml使用其他生成文件-q或-quiet输出少量的必要信息-verbose或-v输出更多的提示信息-logfile或-l将提示信息输出到指定文件-D<roperty>=<value>指定一些属性来覆盖生成文件中指定的属性#二、定义...

2019-01-04 16:01:15 320

原创 android webview调用微信支付

有个需求是调用微信支付和支付宝支付,原本以为要集成SDK,之后才知道后台返回的是html,只需要用webview显示出来,之前没有接触过这种,结果跳了几天的坑 o(////▽////)q傻傻地直接显示,结果什么都没有显示!!Σ(⊙▽⊙”既然不懂,就查查吧 H5支付是基于公众号基础开发的一种非微信内浏览器支付方式(需要单独申请支付权限),weixin://wap/pay是微信定义的一种支付协议,用

2017-03-25 00:41:55 9580 3

原创 Activity的生命周期和启动模式

正常情况下的生命周期栈顶的Activity需要先onpause后,新的Activity才能启动。所以不能再onPause中做重量级的操作异常情况下的生命周期一、资源相关的系统配置发生改变导致Activity被杀死并重新构建例如acitivty从竖屏旋转成横屏,倒是系统配置发生改变,activity就会被销毁并且重新创建Bundle对象作为参数传递给OnRestoreInstanceState和OnC

2017-02-28 21:29:55 515

转载 java-内存泄漏

内存泄露是指无用对象(不再使用的对象)持续占有内存或无用对象的内存得不到及时释放,从而造成的内存空间的浪费称为内存泄露。内存泄露有时不严重且不易察觉,这样开发者就不知道存在内存泄露,但有时也会很严重,会提示你Out of memory。内存泄漏的定义:对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着。

2017-02-13 15:16:07 419

原创 Android-使用LitePal实现一个便笺功能

之前做了个简单的知乎日报的客户端,在这的基础上再加上了便签的功能,使用LitePal操作数据库。效果 配置和创建数据库首先需要添加依赖compile 'org.litepal.android:core:1.4.1'在这个功能中还添加了compile 'com.hanks.animatecheckbox:library:0.1'compile 'com.android.support:multid

2017-02-07 20:53:27 3915 1

原创 Android-Builder模式

android里很多对象的构建都用到了Builder,比如OkHttp和AlertDialog,看起来特别简洁直观。Request request = new Request.Builder() .url(url) .post(body) .build();网上的定义如下 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示下面举个例子来

2017-02-03 00:12:01 461

原创 Android-MVP+Retrofit+Rxjava实现一个知乎日报客户端

使用MVP+Retrofit+Rxjava实现一个知乎日报客户端,界面基于Material design,还没有全部完成orz,,放假太懒效果图开源项目 name introduction butterknife Annotate fields with @BindView and a view ID for Butter Knife to find and automatically

2017-01-31 16:27:08 5587 8

原创 Android-Material Design的使用

ToolBar改变主题 项目中默认使用的为ActionBar,需要使用ToolBar替代ActionBar 指定主题为NoActionBar的,在values/styles.xml中修改<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme her

2017-01-29 17:11:55 1081

原创 java-Serializable 序列化

java的对象序列化将那些实现了Serializable接口的对象装换成一个字节序列,并能够在以后将这个字节序列完全恢复成原来的对象。这意味着序列化机制能自动弥补不同操作系统之间的差异public interface Serializable {}可以看到该接口仅是一个标记接口,不包括任何方法。使用对象流实现序列化创建一个可序列化的bean,Data类public class Data implem

2016-12-08 15:05:33 678

原创 java-Semaphore

Semaphore是一个计数器,在计数器不为0的时候对线程就放行,一旦达到0,那么所有请求资源的新线程都会被阻塞,包括增加请求到许可的线程,也就是说Semaphore不是可重入的。每一次请求一个许可都会导致计数器减少1,同样每次释放一个许可都会导致计数器增加1,一旦达到了0,新的许可请求线程将被挂起。简单例子public class SemaphoreTest { public static

2016-12-06 21:27:22 728

原创 Android 模拟登陆正方教务系统(一)

刷推送时看到一篇讲retrofit的,想试试其中的post,post什么呢,首先想到的是正方,于是,,就试试吧。(本人小白,之前没有怎么使用过这些框架,若有错误,请大神们指教(/▽╲))一、抓包 我使用的抓包工具是fiddler 下载地址 然后登录正方并抓取数据验证码

2016-12-02 01:37:58 5785 3

原创 Thinking in java学习笔记-并发(二)

线程的状态进入阻塞状态 1、调用sleep()是任务进入休眠状态 2、通过wait()是线程挂起,直到被notify()或notifyAll()唤醒后进入就绪状态。 3、任务在等待输入/输出完成 4、任务试图在某个对象上调用其同步控制方法,但是对象锁不可用,因为另一个任务已经获取了这个锁。2、中断Thread类包含interrupt

2016-11-24 23:40:59 583

原创 java-生产者消费者问题

生产消费问题是线程之间协作的例子synchronized关键字 当在对象上调用其任意synchronized方法的时候,此对象都被加锁,这时该对象上的其他synchronized方法只有等前一个方法调用完毕并释放了锁之后才能被调用 1、同步方法public synchronized int next(){ //...}2、同步块synchronized(同步对象){ //需要同

2016-11-22 19:21:46 420

原创 Thinking in java学习笔记-并发(一)

一、线程和进程进程:进程是运行在它自己的地址空间内的自包容的程序线程:线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。一个程序至少有一个进程,一个进程至少有一个线程.

2016-11-20 18:30:40 682

原创 Thinking in java学习笔记-类型信息

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。在《Thinking in java》中提出了RTTI和反射机制的概念 RTTI假定我们在编译时已经知道了所有的类型,反射允许我们在允许是发现和使用类信息。纠结着看完了一整章也没看懂

2016-11-16 14:06:13 681

原创 java-mvp模式简单实现

Presenter负责逻辑的处理,Model提供数据,View负责显示。在MVP中View并不直接使用Model,它们之间的通信是通过Presenter(MVC中的Controller)来进行的,所有的交互都发生在Presenter内部. 分离显示层和逻辑层,他们之间通过接口进行通信,降低耦合而在MVC中View会直接从Model中读取数据而不是通过Control

2016-11-15 23:01:35 7814 2

原创 观察者模式

观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。 这个主题对象在状态上发生变化时,会通知所有观察者对象,让它们能够自动更新自己。 让主题和观察者之间松耦合

2016-11-14 13:07:40 448

原创 java-多态

多态的作用是消除类型之间的耦合性,它允许将多种类型(从同一个基类导出的)视为同一类型来处理。让代码只操纵基类,这样,如果要添加一个新类,也不影响到原来的代码

2016-11-13 15:39:25 387

原创 理解HashMap

HashMap实现了Map接口,继承AbstractMap。其中Map接口定义了键映射到值的规则,而AbstractMap类提供 Map 接口的骨干实现。HashMap 的实现不是同步的,这意味着它不是线程安全的。JDK8中如果某个桶中的链表记录过大的话(当前是TREEIFY_THRESHOLD = 8),就会把这个链动态变成红黑二叉树,使查询最差复杂度由O(N)变成了O(logN)。

2016-11-06 20:04:54 520

原创 java-散列和散列码

散列将键保存在某处,以便能够很快找到。存储一组元素最快的数据结构是数组,所以使用它来表示键的信息。数组并不保存键本身,而是通过键对象生成一个数字,将其作为数组的下标,这个数字就是散列码。冲突有外部链接处理,数组并不直接保存值,而是保存值得list。然后对list中的值使用equals()方法进行线性的查询。(这部分的查询会比较慢)

2016-11-04 16:41:51 4255

原创 java 集合框架(一)概述

Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。 在面向对象思想里,一种数据结构也被认为是一个容器。Java集合框架支持以下两种类型的容器 1、为了粗存一个元素的集合,简称为集合(collection) 2、是为了存储键/值对,称为图(Map)一、迭代器 迭代器是一个对象,它的工作是遍历并悬着序列中的对象,而客

2016-11-02 23:12:56 348

原创 java-泛型

泛型是使用一种称为类型擦除的方法实现的,编译器使用泛型类型信息来编译代码,但是随后消除它,因此泛型信息在运行时是不可用的,这种方法使泛型代码向后兼容使用原始类型的遗留代码

2016-10-28 16:30:27 693 1

android4.4.w模拟器导出的sqlite3

android4.4.w模拟器导出的sqlite3

2016-08-17

android4.4.2模拟器导出的sqlite3

android4.4.2模拟器导出的sqlite3 也可以用于android4.4.4

2016-08-17

android5.0模拟器中导出的sqlite3

android5.0模拟器中导出的sqlite3

2016-08-17

空空如也

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

TA关注的人

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