自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mapstruct -- 一款好用、优雅的JavaBean映射工具

一、了解它1.它是什么?MapStruct 是一个代码生成器,它基于约定优于配置的方法,极大地简化了 Java bean 类型之间的映射实现。生成的映射代码使用普通的方法调用,因此速度快、类型安全且易于理解。2.为什么要使用它?多层应用程序通常需要在不同的对象模型(例如实体和 DTO)之间进行映射。编写这些映射代码是一项乏味且容易出错的任务。MapStruct 通过尽可能自动化来简化这项工作。以往的开发中,我们可能会用到类似BeanUtil的一些映射框架,他们一般是通过Java的反射..

2022-01-27 14:56:05 1827

原创 RabbitMQ可用性、可靠性、顺序消费、不丢消息、集群的一些整理

参考:RabbitMQ——镜像队列Master故障后的处理_hncscwc的博客-CSDN博客RabbitMQ之镜像队列_朱小厮的博客-CSDN博客_rabbitmq镜像队列RabbitMQ原理、集群、基本操作及常见故障处理_民工哥的博客-CSDN博客...

2022-01-18 17:25:29 1370

转载 java8新特性--lambda表达式

java8的安装工欲善其器必先利其器,首先安装JDK8。过程省略,大家应该都可以自己搞定。但是有一点这里强调一下(Windows系统):目前我们工作的版本一般是java 6或者java 7,所以很多人安装java8基本都是学习为主。这样就在自己的机器上会存在多版本的JDK。而且大家一般是希望在命令行中执行java命令是基于老版本的jdk。但是在安装完jdk8并且没有设置path的情况下,你

2016-12-20 10:52:32 352

转载 JAVA8新特性--stream

上篇文章Java8初体验(一)lambda表达式语法比较详细的介绍了lambda表达式的方方面面,细心的读者会发现那篇文章的例子中有很多Stream的例子。这些Stream的例子可能让你产生疑惑,本文将会详细讲解Stream的使用方法(不会涉及Stream的原理,因为这个系列的文章还是一个快速学习如何使用的)。1. Stream初体验我们先来看看Java里面是怎么定义Stream的

2016-12-20 10:50:33 295

原创 innerText、innerHtml、textContent取值赋值之间的区别

例码: 123一、innerHtml兼容性:支持基本所有的浏览器取值:结果是123未完待续.....

2016-11-29 11:27:28 2341

原创 js中的sleep

/** * 函数功能:中断函数,因为不满足条件产生中断,使得CPU去处理其他事务,然后轮询队列隔时询问,满足条件后继续执行 * 思路 :模仿自Android的Handler机制,利用js代码的闭包特性,把消息池改变为满足条件,把通知Handler处理改为回调 * @param callback 满足条件之后采取执行的 * @param condition 轮询的对象

2016-11-21 15:23:11 643

原创 LinkedList和ArrayList的区别

关于这篇文章存在的意义在于,ArrayList既然存取快,又是一个可变长的数组,那么为什么还要有LinkedList?ArrayList和LinkedList来自于同一个干爹List,网上的解释大都是ArrayList是一个数组,是一个可变大小的数组,嗯?有一定计算机基础的同学会对他的物理存储和逻辑结构产生疑问,它真的还是一个数组吗?它有没有违反数组的定义——连续性?它在物理存储还是一个连续的

2016-09-28 19:19:37 378

原创 js+div+css展示页面

抛弃了iframe的小数据框显示方案,为什么要抛弃iframe呢?是因为搜索引擎不喜欢,为了SEO优化而做的。CSS+DIV+JS实现数据的动态显示,数据动态显示,Web前端,动态加载数。

2016-09-28 11:50:32 957

转载 Eclipse中Egit冲突解决

Eclipse中Egit冲突解决Git 作为进来最流行的分布式版本控制软件来说应用的十分广泛。EGit就是一款Eclipse上的Git插件。在使用Egit提交项目时,有时会产生冲突,需要对代码进行merge。这里对内容冲突的解决进行介绍。内容冲突是指两个用户修改了同一个文件的同一块区域,git会报告内容冲突。1. 产生内容冲突我们原始文件内容如下所示:

2016-09-28 11:22:17 436

原创 ListView的使用及优化

ListView的使用、ListView优化、ListView的使用及优化

2016-09-11 15:35:37 488 3

原创 Android中的系统服务

首先,系统服务是系统

2016-08-29 09:40:30 479

转载 内存溢出(Memory Overflow)和内存泄露(Memory Leak)的区别

内存泄漏指你用malloc或new申请了一块内存,但是没有通过free或delete将内存释放,导致这块内存一直处于占用状态内存溢出指你申请了10个字节的空间,但是你在这个空间写入11或以上字节的数据,就是溢出要点内存泄露是指程序中间动态分配了内存,但在程序结束时没有释放这部分内存,从而造成那部分内存不可用的情况,重启计算机可以解决,但也有可能再次发生内存泄露,内存泄露和硬件

2016-08-28 19:09:11 5125

原创 桶排序

我让桶排序的作者给化了,这也算是一种算法?这种算法也叫算法?首先,数据得一样长。其次,特别耗费空间。再者,应该算是哈希思想的升华了。真正的桶排序应该是利用短板排序,而不是只有同长数据。原理:把数据取余,例如1000~9999对1000取余,然后对应的把1000放到 a[0],1001放到a[1]。以此类推。这也叫算法?好吧,算是一种算法,但是太鸡肋。

2016-08-24 19:36:22 391

原创 Android调用相册

思路:1、我们要调取相册2、让用户选择照片3、得知用户选择的是哪张照片4、拿到照片5、加载到内存使用步骤:1、通过意图调用相册2、用户选择照片,这个有系统自动完成,对于我们透明3、拿到返回的结果,取出图片的路径(非实际路径)4、拿虚拟路径查询实际路径5、根据实际路径查找到图片6、加载到内存-----------------代码------

2016-08-24 19:01:06 768

原创 Android中的图片压缩

有的时候我们需要一张很小的图片,但是原有的图片非常大,比如说头像等,这时候我们需要对图像进行压缩处理。把原先高分辨率的图片压缩到指定的大小。       这里我们用到了两个类:BitmapFactory、BitmapFactory.Options。

2016-08-24 15:18:02 451

原创 Android调用相机

安卓把相机做成了公共的控件,我们可以通过意图来使用它。使用起来也是非常简单。两个步骤:        1.申请权限        2.创建意图        3.设置图片的属性        4.启动相机Activity,附带请求码        5.判断请求码,是否是调用相机,完成后续操作一:申请权限如果,出现异常,例如报链接硬件错误,可加上以下代码

2016-08-23 23:01:34 472

原创 Android中另一种对话框--PopUpWindow

PopUpWindow的详细介绍使用,PopUpWindow和AlertDialog的区别

2016-08-23 16:38:56 509

原创 回调机制的理解

首先,来介绍一下回调机制的概念,回调机制是一种JAVA编程的高级机制,它是把指定的逻辑代码传递到要回调的地方。看完是不是依然云里雾里?没事,我们来慢慢解析它。首先,要理解回调的机制就要对以下概念有一定的了解:1.对象的概念2.匿名类3.父类接收子类对象的时候,调用的方法是子类的还是父类的?        关于对象,不用我多说,学过面向对象编程思想的人一定都听过这样的一句话:万事万物

2016-08-22 11:16:55 773

原创 Android中实现软件检测更新和自动安装

思想:(其实,我认为第一步就是开广告!用户看广告的过程正好检测更新)1.在启动软件的第一刻,也就是没加载窗体之前就执行该操作。2.检测版本要读取到应用本身的版本号3.拿到版本号后,要对比服务器上的最新版本号4.如果没有更新,就显示首页5.如果出现更新,就要要询问用户是否更新6.如果用户选择更新,就从网络中下载文件,并展示对应的UI(进度条) ,否则用户会以为程序挂掉了。

2016-08-18 20:39:23 2154

原创 Android中Application

他就是AndroidManifest.XML文件中的Application节点,它的子节点有Activity、service等等。我们要重写一个这个类的子类,用来掌管整个类。小白同学肯定不明白了,这个类怎么用?这还得从Android的机制讲起,Android支持自定义控件写到XML文件中。1.普通的XML文件,可以在XML文件中进行声明2.例如Application这种的,需要在节点中

2016-08-18 20:29:49 354

原创 Android中的五种数据存储方式

这五种方式分别是:1、SharedPreferences(偏好设置),读取XML文件2、文件存储(1)assets(程序内部的资源,只能读)(2)data/data/主包名/files目录下的,能读能写。(3)读SD卡中的文件,需要申请权限3、SQLite---->http://blog.csdn.net/u013519020/article/details/5222901

2016-08-17 19:16:16 7845

原创 SQLite和SQLiteOpenHelper

SQLite一、介绍SQLite是一个关系型轻量级数据库,它对移动端相对极端的资源进行了专门的优化处理,它遵守大概70%的SQL语法,这使得它和MySQL大多语法相近,它的优点显而易见,轻量、较快速、安全、独立、隔离。SQLite百科介绍数据库文件存放位置:data/data/主包名(AndroidManifest.XML中声明的主包名)/database/xx

2016-08-17 16:52:09 2075

原创 Android中的Service

Service的概述和使用,Service和Thread的区别,Service使用过程中的注意事项

2016-08-16 22:29:58 331

原创 广播(BroadcastReceiver)---安卓中的"四大天王"之一

BroadcastReceiver概述、生命周期、使用、注意事项:1、广播接收器是一个专注于接收广播通知信息,并做出对应处理的组件。很多广播是源自于系统代码的──比如,通知时区改变、电池电量低、拍摄了一张照片或者用户改变了语言选项。应用程序也可以进行广播──比如说,通知其它应用程序一些数据下载完成并处于可用状态。2、应用程序可以拥有任意数量的广播接收器以对所有它感兴趣的通知信息予以响应。所有的接收器均继承自BroadcastReceiver基

2016-08-15 23:08:23 503

原创 再探网络连接--HttpURLConnection

首先,HttpURLConnection应该算是HttpClient的替换者,度娘说HttpClient是对于HttpURLConnection的封装,这里由于不能拜读源码,所以没有办法验证,但是HttpClient确实有那么一点封装的意思。---------HttpClient链接地址-----------介绍:HttpURLConnection是一个和服务器servlet交互的

2016-08-15 19:49:16 2239

原创 初识ViewPager

ViewPager的介绍和使用。定义,效果,实现,运行的顺序。这里的 instantiateItem() 是预加载,一般会事先加载3个,上一个和下一个View,运行的时候会先加载完这三个View,然后才是显示界面。 说明:如果有四个界面分别是1 2 3 4 当前页 加载页 销毁页 下一步操作 1 1 2 --- 右滑 2 3 --- 右滑 3 4 1 右滑 4

2016-08-14 20:37:20 313

原创 重启技术博客的编写

从大一加入ACM集训队时,集训队的刘老师就总是让写技术博客。当时没有考虑到重要性,对于写技术博客总是有一篇没一篇,总是认为把最重要的写一写就好了。可是当我回头回顾的时候,发现那些我认为很简单的知识我都遗忘掉了,那些存储在我的U盘和电脑中的TXT和Word都因为中毒重装系统等种种原因而消失。我要花费同等甚至等多的精力去学习那些被我遗忘掉的知识。有一段时间,我开始写纸质的笔记,写了好几个本子,写完

2016-08-14 19:37:17 294

原创 单击图片刷新验证码

用js代码控制的src不断指向新的地址,并为其添加单击事件,return false可以阻止页面刷新。js代码: function refresh() { var img=document.getElementById("codeimg"); img.src="/Cloud/servlet/codeImg?id="+Math.random(); return

2016-05-11 13:18:38 2093 1

原创 关于连接池的思想

由于某些链接或对象,系统中的各个用户可以共享使用,并不需要销毁操作。因此可以将这些链接或对象保留到一个池中,这样可以节省系统资源的开销。1、要有一个链表用来储存2、在类的静态加载中声明构造3、每一次使用,是对池中对象的释放4、每一次用完,是对池中对象的追加5、我认为,用双向链表和单向链表都可以(栈和队列)-------------------

2016-04-09 21:08:22 539

原创 java中的“钩子”--addShutdownHook

在jvm退出时,会先运行所有通过addShutdownHook函数注册的钩子,  这时只要在钩子里重写run,便可在虚拟机关闭前运行所写run方法。RunTime.getRunTime.addShutdownHook(new Thread(){@Overridepublic void run(){System.out.println("您正在关闭该进程");

2015-12-25 19:28:59 358

原创 java中的睡眠--线程的Sleep中断

在c和c++中都是引入Windows.h,直接运行Sleep(1000)便可使得程序睡眠1000毫秒而在java中,虚拟机的执行是分为多个线程的,所以直接Sleep、函数.Sleep、System.Sleep都是不存在的,这种理解是不对的java分为多个线程,当线程被构建时,便有了内存资源和CPU的使用权,一旦开始运行,那么单个线程的Sleep不能用上述的等等方法,而是由每个线程单独掌

2015-12-25 18:45:26 2940

原创 SQL语句判断数据库、表、字段是否存在

一、数据库(1)查询系统中-->存放所有数据库信息的信息表(sysdatabases)语句: select * from master.dbo.sysdatabases  where name='databasename'①返回rs(有关于这个数据库的所有信息,返回值是数据库结果集)    java程序中运行一下 rs.next()便可。②数据库可以子查询一下    if(

2015-12-24 17:09:29 19684

原创 二分图匹配(匈牙利算法)

1。一个二分图中的最大匹配数等于这个图中的最小点覆盖数König定理是一个二分图中很重要的定理,它的意思是,一个二分图中的最大匹配数等于这个图中的最小点覆盖数。如果你还不知道什么是最小点覆盖,我也在这里说一下:假如选了一个点就相当于覆盖了以它为端点的所有边,你需要选择最少的点来覆盖所有的边。 2。最小路径覆盖=最小路径覆盖=|G|-最大匹配数 在一个N*N的有向图中

2014-08-16 10:55:02 333

原创 对于字符输入的处理

今天做的扫描线的一道题,怎么改都不对,我刚开始以为是s

2014-08-12 10:42:37 360

转载 扩展欧几里得

欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,b)=gcd(b,a%b)。第一种证明:      a可以表示成a = kb + r,则r = a mod b  假设d是a,b的一个公约数,则有  d|a, d|b,而r = a - kb,因此d|r  

2014-08-07 20:40:18 370

转载 STL---map

Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有

2014-08-04 17:01:19 316

原创 POJ【2001】Shortest Prefixes----字典树

DescriptionA prefix of a string is a substring starting at the beginning of the given string. The prefixes of "carbon" are: "c", "ca", "car", "carb", "carbo", and "carbon". Note that the empty s

2014-07-31 20:45:01 340

原创 一维01背包和完全背包对比代码

01:#include#includeint dp[1005];int v[1005],w[1005];int max(int a,int b){    return a>b?a:b;}int main(){    int n,m,t,i,j,k,V;    scanf("%d",&t);    while(t--)    {     

2014-07-30 21:33:57 516

原创 HDU【2159】FATE--完全背包

Description最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还说了他最多只杀s只怪。请问他

2014-07-30 16:14:42 327

原创 HDU[1253]--bfs

Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会.魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C的矩阵,刚开始Ignatius被关在(0,0,0)的位置,离开城堡的门在(A-1,B-1,C-1)的位置,现在知道魔王将在T分钟后回到城堡,Ignatius每分钟能从一个坐标走到相邻的六个坐标中的其中一个.现在给你城堡的地图,请你计算

2014-07-30 08:20:58 423

扫描线详解

内含三个版本讲解,有word,和pdf,

2014-08-11

线段树代码

线段树,低级入门,易懂

2014-08-09

校园网cmcc代理免费上网

在学校使用(校园网\cmcc)的同学可以用这个软件设置代理服务器,然后就可以使用校园网的免费资源进行上网啦

2014-08-05

数据结构扫描版

来自于清华大学出版社的数据结构扫描版,是各个大学的主流数据结构教材,此是扫描版本

2014-08-05

数据结构 C++ STL库及用法详解

数据结构中的STL库,各种模板详解用途及用法,c++

2014-08-05

空空如也

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

TA关注的人

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