自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 webkitdirectory 实现文件夹上传(包含文件夹大小和文件个数的校验)

由于工作中业务需要在界面提供用户上传文件夹的功能,平时上传文件做的还多一些,包括对上传文件也有许多插件提供了良好的支持,比如fileinput.js,还有webupload.js。。。,但对上传文件夹的支持就没有,h5里提供了webkitdirectory  来实现上传文件夹的功能,但它仅支持Chrome。话不多说,上代码HTML代码:

2017-12-09 21:39:14 24102 7

原创 js通过Url下载文件

我们通过iframe到后台请求一个下载,后台通过流返回到浏览器,弹出保存窗口。js代码:function (){ var voiceUrl =baseURL+ "download"; var iframe = document.createElement("iframe"); document.body.appendChild(iframe); ifra

2017-10-11 09:49:39 9043 2

原创 jPlayer播放后台返回的语音流

工作中需要在界面播放语音,网上找了许多js插件感觉都不是太好用,直到看到这个jPlayer,很强大也方便上手,内置了许多皮肤,就决定用它了。本文将实现从java后台返回流到前端,jPlayer播放。java后台代码:@RequestMapping("getVoice") public void voice(HttpServletRequest request , HttpServ

2017-09-05 20:34:18 1752 3

原创 Java创建WebService客户端

1.新建个java项目,用来放客户端的代码2.新建webservice cilent项目,选择1建的项目,然后填入服务端url3.然后新建测试类,测试

2017-06-26 10:03:22 326

原创 Java创建WebService服务端

1.新建webservice项目2.点击finish后会生成一个webservice项目,然后新建一个java类3.在该类中写供客户端调用的方法及服务的地址4.接着在该类上右键,运行,看到没异常抛出且那个log打印出来代表服务正常启动5.接着在地址栏输入该地址,确认是否发布成功

2017-06-24 14:52:08 1619

转载 WebService是什么?

一、序言  大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊、书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分。但是不得不承认的是WebService真的是一门新兴和有前途的技术,那么WebService到底是什么?何时应该用?   当前的应用程序开发逐步的呈现了两种迥然不同的倾向:一种是基于浏览器的瘦客户端应用程序

2017-06-23 17:33:38 471

原创 Ocacle修改表

1.修改表名在建表后如果希望修改表名,可以用RENAME实现       语法:RENAME oldname TO newname;       例子:--修改emp为myempRENAME emp TOmyemp;2.增加列给表增加列可以使用ALTER TABLE的ADD子句实现语法 :ALTER TABLE table_name ADD  (column

2017-06-14 20:10:41 417

原创 Tomcat卡死的情况

今天发到现场一个版本,工程人员反馈说Tomcat起不来,并把日志截给我看了,我发现日志中也没报啥错啊,就是执行到一段代码的时候再不往下走了,那块是一个Mina,发现服务正常起来了,也和其他模块正常通信了,但tomcat就是起不来,最终工程人员反映有服务器df -h都用不了,排查后发现是NFS的服务端挂掉了,客户端去访问挂载目录导致的,把服务重启后,tomcat竟然也能正常启动了,然后我才反应过来,

2017-04-25 21:02:54 4702 2

原创 从文章中统计不同单词出现的次数

public class ReadEnglishText { public static void main(String[] args) throws Exception { FileInputStream fis=new FileInputStream("src.txt"); InputStreamReader isb=new InputStreamReader(fis,"utf-8

2017-03-12 22:32:48 1539

原创 Java中堆和栈的区别

首先,堆和栈都是java用来在内存中存放数据的地方,区别在于:1.

2017-02-27 23:16:59 365

原创 Git的基本使用

配置身份:git config --global user.name "whx"git config --global user.email "whx@gmail.com"进入项目的根目录,创建代码仓库:git init仓库创建完成后,会在项目根目录生成个隐藏的.git文件夹,这个文件夹是用来记录本地所有的Git操作的。可以通过ls -al查看。(要删除本地仓库删除

2016-12-16 11:59:18 394 2

原创 AIDL接口自定义数据类型及Pracelable接口

在AIDL接口中除了可以使用java自带的数据类型外,还可以使用自定义的数据类型。如果需要使用自定义数据类型或List,Map中需要封装自定义数据类型需要以下几个步骤:1.自定义的数据类型实现Pracelable接口。2.编写自定义数据类型的.aidl文件3.无论自定义数据类型与aidl接口源文件是否在一个包中,在接口源文件中使用自定义数据类型时都需要显示的import语句导入。4

2016-12-12 10:10:12 1741 1

原创 使用AIDL实现跨进程Service的绑定

基于在绑定Service时,与Service实现绑定的组件可以归属于不同的应用程序,因此可以实现跨进程的绑定,进而实现通信功能。在跨进程的绑定中,需要使用AIDL来定义接口,本博客将详细的介绍这种跨进程绑定、通信的方式,由于使用AIDL定义接口时,默认可用的数据类型非常有限。本博客还会介绍如何在AIDL中使用自定义的数据类型,及Parcelable接口的使用方式。

2016-12-09 12:03:34 815

原创 java.io.IOException: setDataSource fail解决办法

今天做一个播放模拟器中音乐的小程序,出现如上错误。解决方式为在AndroidManifest.xml中添加如下代码: <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />添加该权限说明该程序可以读取设备外部存储空间(内置SDcard和外置SDCard)的文件

2016-12-07 21:30:09 5162 1

原创 Intent详解

在Android中,Intent主要用于激活系统组件,以及在组件之间传递数据。Intent与系统组件有着密切关系,但不是系统组件。由开发人员创建和维护。Intent可以实现调用Android系统内置的功能如拨打电话。Intent可以理解为组件之间的“连接器”。可以用于激活Activity,Service,Broadcastreceiver但不用于激活Content Provider.Intent的属

2016-11-29 22:35:18 392 2

原创 AdapterView详解

AdapterView是ViewGroup的子类,可包含多个列表项,用于显示一组数据。其addView方法被禁用,数据提供通过适配器对象去完成。下图是AdapterView的继承树: 需要说明的是AbsListView和AbsSpinner这两个直接子类的区别是AbsListView显示的列表项被单击时,被单击的列表项不会有啥变化,而AbsSpinner被选中项会特殊显示。ListV

2016-11-26 10:10:57 619

原创 Adapter详解

Adapter是适配器。它的作用是封装好item然后将数据提供给ListView去显示。 Adapter原理分析: ListView显示的时候,首先会去调用适配器,适配器去数据源读取数据并根据item布局组织成一个item view对象返回在ListView中显示。ArrayAdapterArrayAdapter是最简单的适配器,用于为ListView提供承载简单数据的item界面。它的数据

2016-11-24 18:28:51 568

原创 Android控件之AutoCompleteTextView

AutoCompleteTextView是一个自动补全的文本框,下面跟着一个包含过滤信息的列表项,单击该列表项时,文本框显示选中项。继承自EditText.内部包含一个AdapterView对象,可以通过该控件的setAdapter方法为AdapterView提供过滤数据。setAdapter方法中接受的数据必须实现Filterable接口。 主要方法: setThreshold(int num

2016-11-24 17:57:55 321

原创 shell编程之正则表达式

1 正则表达式的概念正则表达式是用于描述字符排列和匹配模式的一种语法规则,它主要用于字符串的模式分割、匹配、查找及替换操作。2 正则表达式与通配符-正则表达式用来在文件中匹配符合条件的字符串,是包含匹配(即只要有就能匹配到,比如查a,那么a,ab,abc都能查出来)。grep,awk,sed等命令支持正则表达式。-通配符用来匹配符合条件的文件名,是完全匹配(必须一样才能匹配到,比

2016-11-11 11:29:49 330

原创 shell基础

1 shell的概念shell是一个命令行解释器,为用户提供了一个向linux内核发命令的程序。它还是一个编程语言。

2016-10-31 21:25:22 222

原创 Linux常用命令

1 cd命令cd命令是linux中最常用的一个命令,用于切换工作目录,后边跟要切换的目录(绝对路径相对路径均可)cd /root 切换到根目录下的root目录(/代表根目录)cd ../ 切换到当前目录的上一级目录(..代表上一级目录)cd - 切换到上一次操作的目录cd ./test 切换到当前目录下的test目录(.代表当前目录,可以直接cd test)2 ls命令ls命令是用来显示文件与

2016-10-11 21:29:06 328

原创 毕业三个月感悟

和许多人一样,毕业了选择来帝都工作。怀着忐忑不安的心情进入我的第一家公司。由于来的时候公司新项目刚上线所以近三个月的主要工作就是对一些模块的维护,改改bug啥的。平时感觉不是很忙,公司虽小但很正规。没感觉到干it的疯狂加班的情况。感觉来公司最幸运就是遇到了带我的师傅,他是个热衷于技术的人,各种技术都有涉猎我们项目经理遇到许多问题都会找他讨论,听听他的意见。他给我提出了许多建议和要求,使我更加规范

2016-09-24 11:57:24 332 2

原创 java爬虫实现数据抓取

这篇博客我们将用java来实现基本的爬虫数据抓取操作,基本思路就是通过java访问url,然后拿到返回的html文档,并用jsoup解析。 首先我们来看下需要抓取的页面,以我自己的csdn博客列表页面为例。我们将每篇博客的链接地址,文章标题以及摘要抓取出来。下面是代码实现:public class WhxCsdnCrawler { public static void main(Stri

2016-09-12 21:09:58 6371

转载 Oracle死锁查询及处理

一、数据库死锁的现象程序在执行的过程中,点击确定或保存按钮,程序没有响应,也没有出现报错。二、死锁的原理当对于数据库某个表的某一列做更新或删除等操作,执行完毕后该条语句不提 交,另一条对于这一列数据做更新操作的语句在执行的时候就会处于等待状态, 此时的现象是这条语句一直在执行,但一直没有执行成功,也没有报错。三、死锁的定位方法通过检查数据库表,能够检查出是哪一条语句被死锁,产生死锁的机器是哪一台

2016-09-07 16:41:11 482

原创 java多线程总结

1 线程与进程什么是进程? 进程指的是操作系统中运行的一个任务。是一块包含了某些资源的内存区域,操作系统利用进程把它的工作划分为一些功能单元。 什么是线程? 进程中包含的一个或多个执行单元称为线程。一个线程是进程的顺序执行流。 线程和进程的区别与联系? 一个进程至少有一个线程,线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中有独立的内存单元,而多个线程共享内存

2016-08-29 20:15:35 324

转载 hibernate 延迟加载

Hibernae 的延迟加载是一个非常常用的技术,实体的集合属性默认会被延迟加载,实体所关联的实体默认也会被延迟加载。Hibernate 通过这种延迟加载来降低系统的内存开销,从而保证 Hibernate 的运行性能。 下面先来剖析 Hibernate 延迟加载的“秘密”。集合属性的延迟加载当 Hibernate 从数据库中初始化某个持久化实体时,该实体的集合属性是否随持久化类一起初始化呢?如果集

2016-08-27 16:39:16 488

原创 存储过程

1 概述存储过程是数据库中的一个重要对象,是一组为了完成特定功能的sql语句集(子程序)。经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以存储过程运行要比单个的SQL语句块要快。2 存储过程的创建和调用2.1 存储过程的创建create [or replace] procedure 存储

2016-08-14 23:55:15 289

原创 PL/SQL基础

1 PL/SQL概述pl/sql是oracle对sql语言的过程化扩展。(在sql中增加了过程处理语句如分支,循环等)使sql语言具有过程处理能力。1.1 PL/SQL的提出pl/sql是面向过程的语言,结合了sql语言的数据操纵能力如增删改查和过程语言的数据处理能力。而不同数据库对sql有不同的扩展。oracle: pl/sqldb2: sql/plsql server:

2016-08-08 23:04:48 479

原创 java基础之I/O流

流是我们程序与磁盘或内存交互的重要方式,我们可以通过流来进行读或写。首先我们可以根据读写的单位来对流进行分类,一是以字节为单位进行读写的字节流,二是以字符为单位进行读写的字符流。

2016-07-21 22:39:23 375

原创 面向对象的三大特征

面向对象的三大特征说到面向对象的三大特征,大家肯定第一时间都会想到:封装,继承,多态。想到去年的一次群面,面试官让大家谈谈对面向对象的理解。许多人都把这三大特征的概念说了一遍。面试官说,结合你自己做过的项目谈。我是这样回答的:封装首先封装是面向对象的第一大特征,它的概念是将对象的基本属性和实现细节隐藏起来,仅对外提供公共的访问方式。在做俄罗斯方块这个项目时,因为单个方块是我们操作的最小单位,所以我们

2016-07-03 21:24:09 613 1

空空如也

空空如也

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

TA关注的人

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