首页 文章 精选 留言 我的

精选列表

搜索[代码生成],共10000篇文章
优秀的个人博客,低调大师

一行代码实现高斯模糊

前言:有一个音乐播放器的项目,背景需要根据歌曲的封面进行模糊展示,搜罗了很久,找到一个不错的解决方案,不需要我们进行NDK的开发,android帮我们在framework实现好了借鉴 /** * 模糊图片 * @param bitmap 原图片 * @param radius 模糊度 0~25 * @param context * @return 模糊后的图片 */ public static Bitmap blurBitmap(Bitmap bitmap, float radius, Context context) { //Create renderscript RenderScript rs = RenderScript.create(context); //Create allocation from Bitmap Allocation allocation = Allocation.createFromBitmap(rs, bitmap); Type t = allocation.getType(); //Create allocation with the same type Allocation blurredAllocation = Allocation.createTyped(rs, t); //Create script ScriptIntrinsicBlur blurScript = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs)); //Set blur radius (maximum 25.0) blurScript.setRadius(radius); //Set input for script blurScript.setInput(allocation); //Call script for output allocation blurScript.forEach(blurredAllocation); //Copy script result into bitmap blurredAllocation.copyTo(bitmap); //Destroy everything to free memory allocation.destroy(); blurredAllocation.destroy(); blurScript.destroy(); t.destroy(); rs.destroy(); return bitmap; } 感谢android,感谢开源

优秀的个人博客,低调大师

PHP控制网页过期时间的代码

有时我们需要控制主页之类的网页过期时间。 但我们比如使用的是Chinacache的CDN,那要怎么样设计才能让他缓存我的内容. 当然,前提要先打开CDN中一个功能reload_into_ims on。这样用户发送过来no-cache也不怕了,因为这样会给给no-cache转成If-Modified-Since。所以我们写程序主要是对If-Modified-Since控制就好了。记的,缓存系统架构中计中最好是后端来控制,所以最好的方法是程序来管理过期。 呵,我只会php,就用php写一个,别的程序也是一样。 见我下面的程序,呵呵,5分钟过期。 <?php $headers = apache_request_headers(); $client_time = (isset($headers['If-Modified-Since']) ? strtotime($headers['If-Modified-Since']) : 0); $now=gmmktime(); $now_list=gmmktime()-60*5; if ($client_time<$now and $client_time >$now_list){ header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $client_time).' GMT', true, 304); exit(0); }else{ header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $now).' GMT', true, 200); } ?> 本文转自朱志兵51CTO博客,原文链接:http://blog.51cto.com/richardzhu/196733,如需转载请自行联系原作者

优秀的个人博客,低调大师

AsyncTask实例代码演示Android异步任务

原文地址 http://bbs.isgphone.com/viewthread.php?tid=5455 请支持原创 上次我们讲到了Android提供了一个较线程更简单的处理多任务的方法AsyncTask异步任务类,相对于线程来说AsyncTask对于简单的任务处理更安全,其内部的实现方法使用了Android的Handler机制,对于常见的文件下载可以使用AsyncTask类来处理,在Browser浏览器中就是用了该类下载Web服务器URL的Favicon图标。 首先Android123以简单的下载例子演示该类的大致结构,如下 privateclassDownloadFilesTaskextendsAsyncTask{ protectedLongdoInBackground(URL...urls){ intcount=urls.length; longtotalSize=0; for(inti=0;i<count;i++){ totalSize+=Downloader.downloadFile(urls[i]); publishProgress((int)((i/(float)count)100)); } returntotalSize; } protectedvoidonProgressUpdate(Integer...progress){ setProgressPercent(progress[0]); } protectedvoidonPostExecute(Longresult){ showDialog("Downloaded"+result+"bytes"); } } 最终我们执行 DownloadFilesTask().execute(url1, url2, url3); 即可。 在Android浏览器中下载Favicon图标的实现如下: classDownloadTouchIconextendsAsyncTask{ privatefinalContentResolvermContentResolver; privatefinalCursormCursor; privatefinalStringmOriginalUrl; privatefinalStringmUrl; privatefinalStringmUserAgent; /*package*/BrowserActivitymActivity; publicDownloadTouchIcon(BrowserActivityactivity,ContentResolvercr, Cursorc,WebViewview){//构造方法 mActivity=activity; mContentResolver=cr; mCursor=c; mOriginalUrl=view.getOriginalUrl(); mUrl=view.getUrl(); mUserAgent=view.getSettings().getUserAgentString(); } publicDownloadTouchIcon(ContentResolvercr,Cursorc,Stringurl){//实现本类的构造 mActivity=null; mContentResolver=cr; mCursor=c; mOriginalUrl=null; mUrl=url; mUserAgent=null; } @Override publicBitmapdoInBackground(String...values){//返回Bitmap类型 Stringurl=values[0]; AndroidHttpClientclient=AndroidHttpClient.newInstance(mUserAgent); HttpGetrequest=newHttpGet(url); HttpClientParams.setRedirecting(client.getParams(),true);//处理302等重定向问题 try{ HttpResponseresponse=client.execute(request); if(response.getStatusLine().getStatusCode()==200){//如果OK HttpEntityentity=response.getEntity(); if(entity!=null){ InputStreamcontent=entity.getContent();//将图标保存到InputStream中,因为是二进制内容 if(content!=null){ Bitmapicon=BitmapFactory.decodeStream(//从流中取出Bitmap,这里使用了BitmapFactory类的静态方法decodeStream content,null,null); returnicon; } } } }catch(IllegalArgumentExceptionex){ request.abort(); }catch(IOExceptionex){ request.abort(); }finally{ client.close(); } returnnull; } @Override protectedvoidonCancelled(){ if(mCursor!=null){ mCursor.close(); } } @Override publicvoidonPostExecute(Bitmapicon){ if(mActivity!=null){ mActivity.mTouchIconLoader=null; } if(icon==null||mCursor==null||isCancelled()){ return; } 最终图标要保存到浏览器的内部数据库中,系统程序均保存为SQLite格式,Browser也不例外,因为图片是二进制的所以使用字节数组存储数据库的BLOB类型 finalByteArrayOutputStreamos=newByteArrayOutputStream(); icon.compress(Bitmap.CompressFormat.PNG,100,os);//将Bitmap压缩成PNG编码,质量为100%存储 ContentValuesvalues=newContentValues();//构造SQLite的Content对象,这里也可以使用rawsql代替 values.put(Browser.BookmarkColumns.TOUCH_ICON,os.toByteArray());//写入数据库的Browser.BookmarkColumns.TOUCH_ICON字段 if(mCursor.moveToFirst()){ do{ mContentResolver.update(ContentUris.withAppendedId(Browser.BOOKMARKS_URI,mCursor.getInt(0)),values,null,null); }while(mCursor.moveToNext()); } mCursor.close(); } } 本次Android开发网通过两个AsyncTask类演示了多种类型的任务构造,这里大家注意返回类型,本节演示了Android平台上Content Provider、AsyncTask、Bitmap、HTTP以及Stream的相关操作,大家如何想很快提高开发水平其实只要理解Google如何去实现Android系统常规构架就可以轻松入门谷歌移动平台。 本文转自 kome2000 51CTO博客,原文链接:http://blog.51cto.com/kome2000/578720

优秀的个人博客,低调大师

Android 图片透明度处理代码

/** * 图片透明度处理 * * @param sourceImg * 原始图片 * @param number * 透明度 * @return */ public static Bitmap setAlpha(Bitmap sourceImg, int number) { int[] argb = new int[sourceImg.getWidth() * sourceImg.getHeight()]; sourceImg.getPixels(argb, 0, sourceImg.getWidth(), 0, 0,sourceImg.getWidth(), sourceImg.getHeight());// 获得图片的ARGB值 number = number * 255 / 100; for (int i = 0; i < argb.length; i++) { argb = (number << 24) | (argb& 0x00FFFFFF);// 修改最高2位的值 } sourceImg = Bitmap.createBitmap(argb, sourceImg.getWidth(), sourceImg.getHeight(), Config.ARGB_8888); return sourceImg; } 本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/819255,如需转载请自行联系原作者

优秀的个人博客,低调大师

hadoop 文件操作和代码运行测试

1. 查看HDFS文件或目录 [xiaoyu@hadoop02 ~]$ cd hadoop-1.1.2 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -ls [xiaoyu@hadoop02 hadoop-1.1.2]$ echo $? 0 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -lsr [xiaoyu@hadoop02 hadoop-1.1.2]$ echo $? 0 [xiaoyu@hadoop02 hadoop-1.1.2]$ 2. 新建HDFS目录或文件 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -mkdir TEST [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -lsr drwxr-xr-x - xiaoyu supergroup 0 2013-09-10 14:08 /user/xiaoyu/TEST 3. 上传文件到HDFS目录中 本地建立一个文件,内容如下: [xiaoyu@hadoop02 hadoop-1.1.2]$ touch test.txt [xiaoyu@hadoop02 hadoop-1.1.2]$ vim test.txt [xiaoyu@hadoop02 hadoop-1.1.2]$ cat test.txt Hello, Hadoop ! 你好, Hadoop ! 上传到HDFS的TEST目录中,可以使用-copyFromLocal参数,也可以使用-moveFromLocal,分别是从本地拷贝到和从本地剪切到HDFS目录。 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -moveFromLocal test.txt TEST [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -ls Found 1 items drwxr-xr-x - xiaoyu supergroup 0 2013-09-10 14:14 /user/xiaoyu/TEST [xiaoyu@hadoop02 hadoop-1.1.2]$ 4. 查看HDFS文件内容 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -cat TEST/test.txt Hello, Hadoop ! 你好, Hadoop ! [xiaoyu@hadoop02 hadoop-1.1.2]$ 5. 运行jar范例,统计文本单词词频 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop jar hadoop-examples-1.1.2.jar wordcount TEST out 13/09/10 14:20:50 INFO input.FileInputFormat: Total input paths to process : 1 13/09/10 14:20:50 INFO util.NativeCodeLoader: Loaded the native-hadoop library 13/09/10 14:20:50 WARN snappy.LoadSnappy: Snappy native library not loaded 13/09/10 14:20:51 INFO mapred.JobClient: Running job: job_201309082325_0001 13/09/10 14:20:52 INFO mapred.JobClient: map 0% reduce 0% 13/09/10 14:21:03 INFO mapred.JobClient: map 100% reduce 0% 13/09/10 14:21:11 INFO mapred.JobClient: map 100% reduce 33% 13/09/10 14:21:13 INFO mapred.JobClient: map 100% reduce 100% 13/09/10 14:21:14 INFO mapred.JobClient: Job complete: job_201309082325_0001 13/09/10 14:21:14 INFO mapred.JobClient: Counters: 29 13/09/10 14:21:14 INFO mapred.JobClient: Job Counters 13/09/10 14:21:14 INFO mapred.JobClient: Launched reduce tasks=1 13/09/10 14:21:14 INFO mapred.JobClient: SLOTS_MILLIS_MAPS=10619 13/09/10 14:21:14 INFO mapred.JobClient: Total time spent by all reduces waiting after reserving slots (ms)=0 13/09/10 14:21:14 INFO mapred.JobClient: Total time spent by all maps waiting after reserving slots (ms)=0 13/09/10 14:21:14 INFO mapred.JobClient: Launched map tasks=1 13/09/10 14:21:14 INFO mapred.JobClient: Data-local map tasks=1 13/09/10 14:21:14 INFO mapred.JobClient: SLOTS_MILLIS_REDUCES=9864 13/09/10 14:21:14 INFO mapred.JobClient: File Output Format Counters 13/09/10 14:21:14 INFO mapred.JobClient: Bytes Written=38 13/09/10 14:21:14 INFO mapred.JobClient: FileSystemCounters 13/09/10 14:21:14 INFO mapred.JobClient: FILE_BYTES_READ=64 13/09/10 14:21:14 INFO mapred.JobClient: HDFS_BYTES_READ=146 13/09/10 14:21:14 INFO mapred.JobClient: FILE_BYTES_WRITTEN=109756 13/09/10 14:21:14 INFO mapred.JobClient: HDFS_BYTES_WRITTEN=38 13/09/10 14:21:14 INFO mapred.JobClient: File Input Format Counters 13/09/10 14:21:14 INFO mapred.JobClient: Bytes Read=35 13/09/10 14:21:14 INFO mapred.JobClient: Map-Reduce Framework 13/09/10 14:21:14 INFO mapred.JobClient: Map output materialized bytes=64 13/09/10 14:21:14 INFO mapred.JobClient: Map input records=2 13/09/10 14:21:14 INFO mapred.JobClient: Reduce shuffle bytes=64 13/09/10 14:21:14 INFO mapred.JobClient: Spilled Records=10 13/09/10 14:21:14 INFO mapred.JobClient: Map output bytes=59 13/09/10 14:21:14 INFO mapred.JobClient: Total committed heap usage (bytes)=189464576 13/09/10 14:21:14 INFO mapred.JobClient: CPU time spent (ms)=4420 13/09/10 14:21:14 INFO mapred.JobClient: Combine input records=6 13/09/10 14:21:14 INFO mapred.JobClient: SPLIT_RAW_BYTES=111 13/09/10 14:21:14 INFO mapred.JobClient: Reduce input records=5 13/09/10 14:21:14 INFO mapred.JobClient: Reduce input groups=5 13/09/10 14:21:14 INFO mapred.JobClient: Combine output records=5 13/09/10 14:21:14 INFO mapred.JobClient: Physical memory (bytes) snapshot=281489408 13/09/10 14:21:14 INFO mapred.JobClient: Reduce output records=5 13/09/10 14:21:14 INFO mapred.JobClient: Virtual memory (bytes) snapshot=1542262784 13/09/10 14:21:14 INFO mapred.JobClient: Map output records=6 6. 检查步骤5运行结果 [xiaoyu@hadoop02 hadoop-1.1.2]$ ./bin/hadoop fs -ls out Found 3 items -rw-r--r-- 1 xiaoyu supergroup 0 2013-09-10 14:20 /user/xiaoyu/out/_SUCCESS drwxr-xr-x - xiaoyu supergroup 0 2013-09-10 14:19 /user/xiaoyu/out/_logs -rw-r--r-- 1 xiaoyu supergroup 38 2013-09-10 14:20 /user/xiaoyu/out/part-r-00000 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -cat out/part-r-00000 ! 1 Hadoop 2 Hello, 1 你好, 1 ! 1 [xiaoyu@hadoop02 hadoop-1.1.2]$ 7. 删除HDFS测试文件和目录 [xiaoyu@hadoop02 hadoop-1.1.2] $ ./bin/hadoop fs -rmr TEST out Deleted hdfs://hadoop01:9000/user/xiaoyu/TEST Deleted hdfs://hadoop01:9000/user/xiaoyu/out [xiaoyu@hadoop02 hadoop-1.1.2]$ 至此,测试结束。 可以登录官网API文档查看http://hadoop.apache.org/docs/r1.1.2/api/org/apache/hadoop/examples/package-summary.html 更多的hadoop示例程序 本文转自xiaoyuwang 51CTO博客,原文链接:http://blog.51cto.com/wangxiaoyu/1293707,如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册