自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Dubbo服务发布流程(服务bean的定义、创建、初始化、服务暴露、网络监听)

先上简易结论:针对一个服务发布是在底层打开socket监听端口(默认netty),接受请求时解析请求参数(请求接口,请求方法,请求参数)去获取接口实现类的动态代理,根据反射调用实现类方法,然后(通过网络)返回请求结果给调用方dubbo是无缝接入spring的,也因此借着spring的特性去实现一些服务发布需要做的事情(ioc实例化自定义的bean、容器初始化后进行服务发布)1.服务发布bean...

2018-10-29 17:26:33 1954

原创 JDK动态代理分析

代理:代理是一种模式,提供了对目标对象的间接访问方式,即通过代理访问目标对象。如此便于在目标实现的基础上增加额外的功能操作,前拦截,后拦截等,以满足自身的业务需求,同时代理模式便于扩展目标对象功能的特点也为多人所用,在不改动源文件代码的前提下在代码前后方增加相应的逻辑,例如:日志记录,异常统一捕获打印。 动态代理:JDK提供相应API来实现动态代理功能,其中包括InvocationHandler...

2018-08-28 17:59:06 337

原创 JavaWeb中使用poi进行excel的导入

接在上次文章说的excel的下载,这次说明excel的导入,既然是导入肯定要涉及到文件的上传,下面代码的环境是spingMVC环境,若需使用下面代码,请配置spring环境1.maven中导入依赖包<dependency><!-- excel2003 --> <groupId>org.apache.poi</groupId&am

2018-08-17 18:00:36 2007 1

原创 JavaWeb中使用poi进行excel的自定义模板下载

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-08-16 17:22:31 1593

原创 static HashMap 针对同一个key出现不同值的原因及解决方法

针对同一个key出现不同值的原因之前在工作的时候遇到了一个问题,在后台编写的接口返回给前端数据出现不一致的情况 接口逻辑:第一次请求查询数据库,在最后往static HashMap插入这次请求要返回的数据,开辟新线程等待5分钟,然后HashMap.remove(key),这5分钟内针对这接口的请求都会返回HashMap中的已经存好的记录,因为该接口要返回的数据量比较大,每次都请求数据库是很浪...

2018-04-28 18:01:35 1492

原创 SpringMVC初始化过程

springmvc是主流的MVC框架,首先从使用开始一步一步解析其初始化过程,springmvc的核心是DispatcherServlet,它是前端控制器,负责拦截客户端发过来的请求,然后解析请求进行分发。 DispatcherServlet是基于Servlet的,使用springmvc现在web.xml中配置DispatcherServlet<!-- 配置DisaptcherServlet --

2017-09-12 19:41:45 4169

原创 Android----View事件分发机制(二)

上一章主要说了View分发的简单流程,下面通过源码来看清楚分发机制科普:当一个点击事件发生后,最开始的传递过程是这样的:Activity–Window–顶级View,当顶级View收到事件后,就会按分发机制把事件分发下去当事件传递到顶级View(我们在Activity通过setContentView那个,是个ViewGroup来的),调用dispatchTouchEvent方法(拦截部分

2017-04-13 16:07:04 384

原创 Android----View事件分发机制(一)

首先,当手指接触屏幕时会产生一系列事件(MotionEvent),有下列三种 - ACTION_DOWN:手指刚接触屏幕 - ACTION_MOVE:手指在屏幕拖动 - ACTION_UP:手指离开屏幕 所谓事件分发就是对MotionEvent的分发,从顶层到下层传递给每个View或ViewGroup,分发过程有三个重要方法完成: ####中 - aaa

2017-04-13 16:03:56 512

原创 Android----内存溢出、内存优化、内存泄漏

内存溢出(OOM):内存使用量大于JVM分配内存大小加载对象过大相对资源过多,内存来不及释放发生内存泄漏内存优化:重写Activity(或Fragment 、Service、Application、ContentProvider)的OnTrimMemory()方法,此方法的调用时刻都是系统内存不足的时候,并且根据传进Int参数,判定是内存快不足的哪种时刻,根据情景释放内存 TRIM_ME

2017-04-03 10:30:41 486

原创 java基础----面向对象特性和原则

刚开始看特性和原则看的糊里糊涂的,随着自己慢慢的编程,逐渐明白了其中的道理,以下是简单的理解三大特性封装:要把数据和操作数据的逻辑方法都绑定到一起,隐藏一切可以隐藏的东西,只对外提供最简单的编程接口继承:通过继承子类可以实现父类所有的功能,无需编写父类的代码情况下对功能进行拓展多态:同一方法调用根据对象不同采取不同逻辑执行,可以消除对象之间的耦合,条件有三:继承;重写父类方法;创建对象时父类

2017-04-02 09:51:05 369

原创 java基础----常用设计模式

单例设计模式饿汉式:懒汉式:工厂设计模式简单工厂:由三部分组成 具体工厂类:以具体工厂类为核心,定义返回抽象产品的方法,接受参数进行逻辑判定,判定用户想要哪个产品抽象产品类:产品的基类,降低耦合具体产品类:继承抽象产品,重写属于自己的方法工厂方法:简单工厂的进一步改善,四部分组成 抽象工厂:以抽象工厂为核心,定义返回抽象产品的方法具体工厂:继承抽象工厂,重写方法,返

2017-04-01 09:23:56 389

原创 java基础----算法

算法冒泡排序:从第一个数开始,比较相邻两个数的大小,如果前>后,交换位置,一轮结束后可以确定最后那个数是最大值,第二轮不管第一轮的最大值,再从第一个数开始比较相邻两数,比较到第一轮最大值前面结束,此时确定倒数第二个数在第二最大值,如此循环,每轮过后轮次+1,随着轮次增加每轮比较的次数下降 public void sort(int[] c){ for(int i=0;i<c.length-1

2017-03-31 13:58:27 447

原创 Android基础----2

interface和abstrace区别:都不能实例化interface里面的变量都用public static final修饰,方法都是抽象方法如果一个类(实现/继承)了(接口/抽象类),都要重写里面的全部抽象方法

2017-03-30 09:30:19 426

原创 ListView所用到的观察者模式浅析

前言:在我们使用listview的时候,例如使用网络请求返回一个数据显示在listview上,对listview里的子控件赋值后,我们都会调用adapter.notifyDataSetChanged()方法来刷新listview,界面就显示了那个数据,其中的原理是通过观察者模式来实现的。这里以BaseAdapter为例BaseAdapter源码:public abstract class Base

2017-03-28 10:37:26 397

原创 android的观察者模式源码浅析

前言:最近在研究观察者模式,下面来看下观察者模式由哪几部分组合。(android sdk已经帮我们写好了观察者用到的类)组成抽象观察者(DataSetObserver)抽象被观察者(Observable)具体被观察者(DataSetObservable):继承了Observable各部分源码抽象观察者(DataSetObserver):public abstract class DataS

2017-03-28 09:46:47 439

原创 java基础----网络协议及网络通讯

网络协议:TCP:传输控制协议(传输层),三次握手建立连接,保证连接准确性;四次挥手断开连接,报头最小长度20字节UDP:用户数据包协议(传输层),面向无连接的协议,报头8字节HTTP:超文本传输协议(应用层),基于请求和响应模式、无状态的协议,特点有: 支持C(客户端)/S(服务器)模式灵活:允许传输任意类型的数据对象无连接:每次响应一个请求后就断开连接无状态:对事务处理没有记

2017-03-25 17:13:24 866

原创 Androd基础----1

四大组件存储方法进程

2017-03-25 11:11:55 998

原创 java基础----1

jre和jdk的区别jre全称Java Runtime Environment,顾明义意既是java运行环境,包括java虚拟机(jvm),java核心类库和支持文件,若你只想运行java程序,有jre就够了jdk全称Java Development Kit,java开发工具,它包含了jre。还包括了编译器(javac)、调试器(jdb)还有其他工具,这是给开发人员使用的java数据

2017-03-21 10:34:04 346

原创 Android Service解绑后再次绑定以及绑定服务出现空指针问题

1——今天在做一个应用的前台功能的关闭时出现了这么一个问题,获取了ibinder实例后,调用在Service编写的方法出现了空指针问题。代码如下public boolean onUnbind(Intent intent) { Log.d("me", "解绑");//要看到前台 startForeground(1,notification);

2017-03-02 15:54:14 3438

空空如也

空空如也

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

TA关注的人

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