自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (5)
  • 收藏
  • 关注

原创 树形数据结构

// TreeDemo.cpp : 定义控制台应用程序的入口点。//using namespace std;#include "stdafx.h"#define TYPE char//树的节点struct TreeNode{ TYPE element;//该节点的元素 TreeNode *firstChild;//指向该节点的第一个孩子 TreeNode

2017-04-30 21:03:13 540

原创 hash表与系统顺序寻址

hash表即散列表,它是基于高速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构能够理解为一个线性表,可是当中的元素不是紧密排列的,而是可能存在空隙。散列表(Hash table,也叫哈希表),是依据关键码值(Key value)而直接进行訪问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来訪问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的

2017-04-30 17:10:51 474

转载 JVM相关问题

问:堆和栈有什么区别答:堆是存放对象的,但是对象内的临时变量是存在栈内存中,如例子中的methodVar是在运行期存放到栈中的。栈是跟随线程的,有线程就有栈,堆是跟随JVM的,有JVM就有堆内存。 问:堆内存中到底存在着什么东西?答:对象,包括对象变量以及对象方法。 问:类变量和实例变量有什么区别?答:静态变量是类变量,非静态变量是实例变量,直白的说,有static

2017-04-27 14:27:15 193

转载 慢慢琢磨JVM

1 JVM简介JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了StackOverf

2017-04-27 14:25:47 276

转载 java线程安全总结

最近想将java基础的一些东西都整理整理,写下来,这是对知识的总结,也是一种乐趣。已经拟好了提纲,大概分为这几个主题: java线程安全,java垃圾收集,java并发包详细介绍,java profile和jvm性能调优 。慢慢写吧。本人jameswxx原创文章,转载请注明出处,我费了很多心血,多谢了。关于java线程安全,网上有很多资料,我只想从自己的角度总结对这方面的考虑,有时候写东西是很痛苦

2017-04-27 14:13:07 196

转载 JVM调优总结(十一)JVM 几个重要的参数

最近对JVM的参数重新看了下, 把应用的JVM参数调整了下。  几个重要的参数-server -Xmx3g -Xms3g -XX:MaxPermSize=128m -XX:NewRatio=1  eden/old 的比例-XX:SurvivorRatio=8  s/e的比例 -XX:+UseParallelGC -XX:ParallelGCThreads=8  -XX:

2017-04-27 13:52:30 1051

转载 JVM调优总结(九)-新一代的垃圾回收算法

垃圾回收的瓶颈   传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限。但是他无法解决的一个问题,就是FullGC所带来的应用暂停。在一些对实时性要求很高的应用场景下,GC暂停所带来的请求堆积和请求失败是无法接受的。这类应用可能要求请求的返回时间在几百甚至几十毫秒以内,如果分代垃圾回收方式要达到这个指标,只能把最大堆的设置限制在一个相对

2017-04-27 11:29:18 305

转载 JVM调优总结(八)-典型配置举例2

常见配置汇总 堆设置  -Xms:初始堆大小  -Xmx:最大堆大小  -XX:NewSize=n:设置年轻代大小  -XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4  -XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有

2017-04-27 11:27:00 226

转载 JVM调优总结(六)-分代垃圾回收详述2

分代垃圾回收流程示意  选择合适的垃圾收集算法串行收集器 用单线程处理所有垃圾回收工作,因为无需多线程交互,所以效率比较高。但是,也无法使用多处理器的优势,所以此收集器适合单处理器机器。当然,此收集器也可以用在小数据量(100M左右)情况下的多处理器机器上。可以使用-XX:+UseSerialGC打开。   并行收集器

2017-04-27 11:25:48 222

转载 JVM调优总结(七)-典型配置举例1

以下配置主要针对分代垃圾回收算法而言。 堆大小设置年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。在WindowsServer 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为147

2017-04-27 11:15:54 198

转载 JVM调优总结(五)-分代垃圾回收详述1

为什么要分代   分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。    在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长。但是还有一些对象,主要是程序运行过程

2017-04-27 11:13:58 163

转载 JVM调优总结(四)-垃圾回收面临的问题

如何区分垃圾    上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从哪儿开始查找哪些对象是正在被当前系统使用的。上面分析的堆和栈的区别,其中栈是真正进行

2017-04-27 11:11:02 206

转载 JVM调优总结(三)-基本垃圾回收算法

可以从不同的的角度去划分垃圾回收算法:按照基本回收策略分引用计数(ReferenceCounting):比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。 标记-清除(Mark-Sweep):  此算法执行分两阶段。第一阶段从引用根节点开始标

2017-04-27 11:08:18 331 2

转载 JVM调优总结(二)

Java对象的大小   基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。   在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任何属性的对象的大小。看下面语句:Objectob = new Object();   这样在程序中完成了一个Java对象的生命,但是它所占的空间为:4byte+8byte

2017-04-27 11:02:33 232 2

转载 JVM调优总结(一)

数据类型   Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。基本类型包括:byte,short,int,long,char,float,double,Boolean,returnAddress引用

2017-04-27 10:59:40 232 2

原创 popwindow setFocusable(false) 不消失与弹出软键盘的冰火不容的矛盾

这是android的bug吗???有的手机设置setOutsideTouchAble(false),就可以让其在点击pop区域以外不消失,但是有的手机需要设置setFocusable(false)才可以做到。但是如果popwindow要获取焦点,弹出软键盘,那么就无法做到了,就是冰与火的矛盾!!!有没有办法解决:在弹出pop之后设置焦点,但是不行,因为在pop 展示的时候就会把焦点值锁死,...

2017-04-25 18:40:37 2216 1

原创 activity中指定一页面动态设置软键盘弹出属性

要在设置的页面拿到对应的activityactivity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); activity中获取window然后拿到setSoftInputMode接口,fragment只能获取依附的activity然后拿到window对象,然后调用软键盘设

2017-04-25 14:42:22 1312

原创 popwindow 焦点问题,物理返回键截获,软键盘监听问题

首先是setFocusable这个方法,获取焦点;如果不获取焦点,那么popwindow中的控件都没有办法获取焦点和事件响应问题。如果获取焦点,那么popwindow就会拦截屏幕上的点击触摸事件以及物理键等。那么只有当popwindow消失,那么popwindow下面的页面才会响应事件。当然也可以做到popwindow获取事件响应也可以让popwindow以外的区域也可以获取,那就是设置s

2017-04-24 17:33:27 1777 1

原创 使用popwindow制作弹出框与获得焦点弹出软键盘

如果是声明一各类public class VideoFilterDialog extends PopupWindow那么在构造方法中添加:conentView = inflater.inflate(R.layout.video_popup_filter, null); this.setWidth(ViewGroup.LayoutParams.MATCH_PARENT);

2017-04-22 16:33:28 779

原创 volatile与synchronized 同步原理基础讲解

基本知识:可见性:  可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。  可见性,是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果。另一个线程马上就能看到。比如:用vo

2017-04-20 11:14:11 1398

原创 android Q版本外部存储问题以及获取空间大小问题

大部分手机没有插入sd卡,但是使用资源管理工具打开的时候,在存储路径上可以看到sd存储,有时候感觉很奇怪。原因是现在大部分手机将手机的存储空间默认的划分为ROM和sd卡存储。这个sd卡的存储是手机自带的。对于手机默认的sd卡存储,我们获取其存储空间或者读写权限,一定需要添加android:name="android.permission.WRITE_EXTERNAL_STORAGE">

2017-04-19 18:57:06 1893

原创 udp与tcp协议介绍

UDP主要特点:传输的是用户数据报协议。1.UDP是无连接的,即发送数据之前不需要建立连接。2.UDP 使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。3.UDP是面向报文的。UDP没有拥塞控制,很适合多媒体通信的要求。4.UDP支持一对一、一对多、多对一和多对多的交互通信。5.UDP的首部开销小,只有 8个字节。发送方 UDP对应用程序交下来的报文,在添加首部后就

2017-04-19 14:58:34 326

原创 一个简单servlet程序

首先在Tomcat安装目录下的webapps文件夹下创建一个SimpleServlet文件夹。依次创建目录:/webapps/SimpleServlet/WEB-INF/classes接下来我们在/SimpleServlet目录下创建一个jsp文件来调用Servlet:index.jspindex.jsp: Servlet

2017-04-17 22:39:02 527

转载 Tomcat servlet工作原理

Java web 的基础就是servlet,其也是Java web的根。Tomcat 的容器等级中,Context 容器是直接管理 Servlet 在容器中的包装类 Wrapper,所以 Context 容器如何运行将直接影响 Servlet 的工作方式。从上图可以看出 Tomcat 的容器分为四个等级,真正管理 Servlet 的容器是 Context 容器,一个 C

2017-04-17 22:16:22 522

原创 android 不同型号的终端的UI适配--一种解决方法

书写一个管理类,在每一个activity加载的时候初始化这个管理类,然后在控件创建绑定的时候去调用方法适配每一个控件view。import android.app.Activity;import android.app.Service;import android.content.pm.ActivityInfo;import android.util.DisplayMetrics;

2017-04-17 17:32:45 1587

原创 SwipeRefreshlayout+RecyclerView+binding实现上拉和下拉刷新

fragment 直接继承 import android.support.v4.app.Fragment;将FragmentManager = getFragmentManager();修改为:FragmentManager fragmentManager = getSupportFragmentManager();那么FragmentTransaction = fragmentMa

2017-04-16 16:08:34 1419

原创 ScrollView中嵌入Listview,当item高度不一样的时候,item展示不全问题

首先在scrollview中嵌入listview,我们需要动态设置listview的高度,否则只会展示一行。public void fixListViewHeight(ListView listView) { // 如果没有设置数据适配器,则ListView没有子项,返回。 ListAdapter listAdapter = listView.getAdapter();

2017-04-14 16:04:09 2919 5

原创 自我智造上的进阶

智造进阶:学术、技术、人文情怀、社会认知(政治与阶级)的进阶。纵观从高中到大学,自己的反思、认知不足的能力和自我提高的能力还是有那么一点真功夫。不过自己在22周岁才真正的接触计算机,接触计算机科学,接触互联网;自己确实有点力不从心,这也许是因为自己接触的太晚了,启蒙的太晚了。要知道其他同龄的人要比自己接触早很多,所以自己要体会到一切学习,接触地越早越好。对于自己的计算机编程,一旦不像学习研...

2017-04-13 22:42:39 530 1

原创 android平台使用java动态生成公私钥,并导出证书文件

问题背景:我这边android客户端需要在每一次启动的时候加载开机广告,具体流程,请求广告服务器拿回来图片的url,然后去下载图片,再然后就是popwindow去展示。代码如下:package com.iptvclient.android.baseclient.startupad;import android.content.Context;import android.g

2017-04-13 13:02:08 3072

原创 一个文件下载的工具类

主类:/** * * Copyright: Copyright (c) 2015 * Company: * Description: 这里写这个文件是干什么用的 * * @Title ImgDownloadUtil.java * @Package c * @version 1.0 * @author * @date 2015年9月9日 */package c

2017-04-13 12:36:34 341

原创 安装 android studio创建工程运行报错 -- 常见的三个问题

1. can not find the android sdk原因:你安装android studio 的时候,安装sdk的路径,你选择了别的路径,没有使用默认的路径,那么新创建工程的时候,默认使用sdk提示安装的默认路径,所以找不到。你只需要在工程启动页面下面有一个configure,在里面点击setting 设置sdk自己安装选择的就可以。或者在工程页面 点击setting,设置sdk

2017-04-12 11:41:43 1307

原创 ScrollView:java.lang.IllegalStateException: ScrollView can host only one direct child

java.lang.IllegalStateException: ScrollView can host only one direct child04-11 15:34:24.188 E/AndroidRuntime( 3679): at android.widget.ScrollView.addView(ScrollView.java:418)04-11 15:34:24.18

2017-04-11 15:47:10 780

原创 android 异步回调中操作UI线程,UI同步、卡死阻塞等性能问题

android开发中,回调无处不在,整个android开发的框架就是以回调机制建立起来的。如:activity,service,broadcast,fragment,view事件监听,baseadapter适配器等等,生命周期或者具体每一步的操作都是以回调的形式抛给开发者实现。先看UI同步问题:编码过程中,“Android异步回调UI同步性问题”经常存在,有时候稍不注意会产生一些看

2017-04-10 18:48:55 1901

转载 javascript 内存回收机制

一、垃圾回收机制—GCJavascript具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。原理:垃圾收集器会定期(周期性)找出那些不在继续使用的变量,然后释放其内存。JavaScript垃圾回收的机制很简单:找出不再使用的变量,然后释放掉其占用的内存,但是这个过程不是实时的,因为其开销比较大,所以垃

2017-04-07 21:14:57 364

原创 Java 中类的静态成员与类的实例对象回收

对于一些Java程序员会误认为类中有静态成员声明,那么创建的对象就不能收回。在一个类声明静态成员,那么在类加载的时候就会在静态区内创建和存储起来,静态成员只属于类,不属于某个实例对象;静态成员是脱离实例对象的。那么在回收的时候,对象也一定会被回收的,除非对象成员变量有引用这个静态成员。

2017-04-06 23:07:01 2072

原创 javascript中判断对象是否为空几种场景

1. 代码1:var a = {};if(!a){ console.log(1);}else if(a == null) { console.log(2);} else { console.log(3);}结果为:3  // var a = {} 不是空对象2. 代码2:var b = {};if(b == {}){ console.log(4);}if

2017-04-06 17:04:39 385

原创 仿jquery 编写自己的js库

var obj = new Object();var o = {name:"jack",age:12};function F (obj){   var run = function()   {     console.log(obj.name);   }}//var f(obj) = new F(obj);console.log(type

2017-04-05 23:19:22 367

原创 jvm 种类

Wikipedia那个Comparison of Java virtual machines页面给JVM实现分得还挺细。Java SE / Java EEJava EE是以Java SE为基础的。所以并没有“JVM for Java EE”这么一说,只有“JVM for Java SE”,可以用于Java SE与Java EE。在这个类别下,主流选择有:(按流行程度递减

2017-04-05 19:01:01 3906 1

原创 android 限制edittext 最大输入字符数

最大字符数:private final int INT_MAX_NUM = 256;private class EditChangeLisener implements TextWatcher{ @Override public void beforeTextChanged(CharSequence s,

2017-04-01 13:22:06 517

app-icon.rar

方支付宝icon, 提供了代码给大家,但是大家没有icon。所以就把icon资源提供给大家,大家可以仿照开发,效果一摸一样,大家使用有什么问题,可以给我反馈,谢谢!

2020-02-28

apk 反编译工具

极为好用的apk 反编译工具,实测,可以使用,覆盖绝大多数 加密的apk .是你研读别人apk ,学习别apk 实现的机制的好工具。

2017-09-02

struts2 jar包

javaweb orm框架

2017-05-23

mybatis3.2.2

javaweb技术orm框架

2017-05-23

hibernate4.2

hibernate4.2

2017-05-13

空空如也

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

TA关注的人

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