
Java
cuiran
爱专研新技术,喜欢挑战。
展开
-
如何在Ubuntu中编译VLC-Android开源项目
环境介绍在开始之前先介绍我编译所需要的一些环境版本Ubuntu 18.04.1Android SDK:Android NDK:android ndk-r8bandroid studio:android-studio-ide-181.5014246-linuxjdk:1.8.0_191…VLC介绍VLC是一个免费开源的跨平台多媒体播放器和框架,可以播放众多的多媒体文件,DVD、CD...原创 2018-12-25 15:12:02 · 2407 阅读 · 1 评论 -
如何正确地写出单例模式
单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。懒汉式,线程不安全当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。public cla转载 2016-08-24 13:40:23 · 6998 阅读 · 2 评论 -
Java中动态代理使用
相比于静态代理,动态代理避免了开发人员编写各个繁锁的静态代理类,只需简单地指定一组接口及目标类对象就能动态的获得代理对象。代理模式使用代理模式必须要让代理类和目标类实现相同的接口,客户端通过代理类来调用目标方法,代理类会将所有的方法调用分派到目标对象上反射执行,还可以在分派过程中添加”前置通知”和后置处理(如在调用目标方法前校验权限,在调用完目标方法后打印日志等)等功能。使用动态代理的五大步骤-1.原创 2016-06-20 23:08:15 · 2732 阅读 · 0 评论 -
JNDI、JTA和JMS介绍
什么是JNDIJNDI全面总结原理: 在DataSource中事先建立多个数据库连接,保存在数据库连接池中。当程序访问数据库时,只用从连接池中取空闲状态的数据库连接即可,访问结束,销毁资源,数据库连接重新回到连接池,这与每次去直接访问数据库相比,会节省大量时间和资源。 JNDI( Java Naming and DirectoryInterface ),是Java平原创 2014-11-09 16:02:31 · 6964 阅读 · 1 评论 -
将一个数组按照固定大小进行拆分成数组
/** * ArraySplit.java * Copyright(C) 2014 * creator:cuiran 2014-8-4 上午10:39:28 */package com.udpdemo.test2;import java.util.ArrayList;import java.util.List;/** * * @author cuiran * @ver原创 2014-08-05 16:38:53 · 25742 阅读 · 1 评论 -
MulticastSocket 使用
/** * ServerMulticastSocketTest.java * 版权所有(C) 2014 * 创建者:cuiran 2014-1-9 下午3:22:01 */package com.udpdemo.multicast;import java.io.IOException;import java.net.DatagramPacket;import java.net.I原创 2014-01-09 16:20:13 · 10483 阅读 · 3 评论 -
The content of elements must consist of well-formed character data or markup
java 中使用dom4j解析含有特殊字符的xml文件出现了如题的错误这个时候需要在特殊字符外面加上 <![CDATA[ /6169220648+20671/1>7+-47390045*84253-->*4-1062//8-7>>>+8030004009]]> 234000610101 00425873 929100040029 2007-04-30原创 2013-10-28 15:01:59 · 8194 阅读 · 1 评论 -
android的左右侧滑菜单实现
最近看了很多app应用都采用的是左右侧滑,比如网易新闻、凡客等这里也试着写一下侧滑首先看一下效果 然后给出xml布局代码<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:原创 2013-09-24 14:04:29 · 13000 阅读 · 2 评论 -
android.os.NetworkOnMainThreadException异常如何解决
android.os.NetworkOnMainThreadException08-08 17:53:30.635 I/ArticleTable(22461): 添加成功 5808-08 17:53:30.648 W/System.err(22461): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode原创 2013-08-09 10:54:13 · 13975 阅读 · 3 评论 -
MongoDB整合Spring 详细讲解(含代码)
写这篇文章也做了下思考,首先是本人技术欠佳。但就是喜欢研究一些东西。因为在此之前有很多的朋友已经写过类似的,很多我也看过,但是讲解的不够深入。对有些朋友提出的问题不能给出答案。在这里,我根据我目前的能力对其进行整理。并最终运行成功。在测试过程中出现过一下问题:1、org/springframework/data/mapping/context/MappingContextAware 2、src-r原创 2012-12-12 16:44:28 · 112859 阅读 · 53 评论 -
根据经纬度分别用java和Oracle存储过程计算两点距离
在给定2点的经纬度,通过java代码和oracle存储过程来计算出点的距离 单位是(米)oracle存储过程:create or replace procedure SP_GET_DISTANCE(cx in number,cy in number,sx in number, sy in number,distance out varchar2) isd number;x numb原创 2012-12-07 09:10:14 · 6909 阅读 · 2 评论 -
redis的安装配置使用(一)
下载地址:http://redis.io/download下载文件:redis-2.4.14.tar.gz官方教程:http://redis.io/topics/quickstart 关于redis.conf文件里面信息内容请访问:http://ericer.blog.163.com/blog/static/17385417620119811162774/ 解压:root@ubuntu:/usr/原创 2012-12-05 09:06:35 · 20105 阅读 · 0 评论 -
IText导出word之页眉页脚页码
本文主要通过Itext jar包对已有数据进行封装并导出rtf文档。rtf也可以用office打开。代码中包含了设置页眉页脚、添加table等详细见源码:内含注释说明/** * WordServer.java * 版权所有(C) 2012 * 创建:cuiran 2012-11-07 13:20:40 */package com.cayden.web.base;imp原创 2012-11-09 08:27:27 · 8613 阅读 · 1 评论 -
贷款计算源码
/** * BankRefund.java * 版权所有(C) 2012 * 创建:cuiran 2012-10-15 14:51:21 */package com.wpndemo.bank;import java.math.BigDecimal;/** * 银行还款计算 * @author cuiran * @version TODO */原创 2012-10-16 09:29:58 · 7157 阅读 · 0 评论 -
获取2个日期之间的日期
/** * TestDay1.java * 版权所有(C) 2012 * 创建:cuiran 2012-09-24 10:18:52 */package com.wpn.test;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;原创 2012-09-24 10:19:20 · 2681 阅读 · 4 评论 -
Android学习笔记(八)之Android 读写xml文件
/** * XmlTool.java * 版权所有(C) 2012 * 创建:cuiran 2012-9-19 下午3:39:40 */package com.wpn.xml;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOExceptio原创 2012-09-21 08:45:23 · 8178 阅读 · 0 评论 -
16进制字符串和字节数组互相转换
package com.wpn.net.util;public class NumberChange { /* * 把16进制字符串转换成字节数组 @param hex @return */ public static byte[] hexStringToByte(String hex) { int len = (hex.length() / 2); byt原创 2012-09-15 13:43:13 · 18464 阅读 · 0 评论 -
java获取工程目录下文件
static{ String root = Constants.class.getResource("/").getFile(); try { root = new File(root).getCanonicalPath(); root += File.separator; } catch (IOException e) { throw new Runti原创 2012-09-15 13:05:33 · 5381 阅读 · 0 评论 -
Android学习笔记(七)之Android socket通信-解决中文乱码
目前想让手机客户端和服务器保持长连接故选择socket进行通信首先是新建一个socket服务器端 /** * Main.java * 版权所有(C) 2012 * 创建:cuiran 2012-09-14 08:56:16 */package com.wpndemo.socket;import java.io.BufferedReader; import原创 2012-09-14 12:44:10 · 8523 阅读 · 1 评论 -
Android学习笔记(六)之post请求
目前经常会使用的手机客户端去请求服务器下面用两种方法第一种:是类似于直接请求访问url代码如下:package com.jouhu.util;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.URL原创 2012-09-13 08:49:23 · 1947 阅读 · 0 评论 -
解决url中文乱码
最近在和第三方做接口时,遇到由对方请求我服务器的地址:http://192.168.0.137:8091/SmsService/readsms.do?src=159xxxxxxx&msg=测试,62225,张三&dst=10657 但是获取参数msg时候,我的服务器获取的中文乱码,由于对方不愿意做改动,我这边就针对此问题,在java后台做了很多次转码都无法转换中文,...原创 2012-09-10 15:14:37 · 3179 阅读 · 0 评论 -
调用第三方获取两点坐标距离
/** * WpnMap.java * 版权所有(C) 2012 * 创建:cuiran 2012-09-04 09:29:45 */package com.wpnmap.map;import java.lang.reflect.Array;import java.util.ArrayList;import java.util.Collections;im原创 2012-09-06 12:36:22 · 1705 阅读 · 0 评论 -
java action jxl 生成并下载excel
/** * ReportExportAction.java * 版权所有(C) 2012 * 创建:cuiran 2012-08-14 10:38:21 */package com.wpn.web.action.report;import java.io.BufferedInputStream;import java.io.BufferedOutputStream原创 2012-08-14 13:19:35 · 5104 阅读 · 0 评论 -
eclipse中ruby的环境搭建
所需环境:Eclipse PlatformVersion: 3.3.0rubyinstaller-1.9.3-p194.exe 下载地址:org.rubypeople.rdt-0.9.1.200711131528NGT.zip 下载地址:先安装rubyinstaller-1.9.3-p194.exe 安装完后,可以在我的电脑-右键 --高级--环境变量 中设置path原创 2012-08-10 09:21:40 · 2662 阅读 · 0 评论 -
每个程序员都应该学习使用Python或Ruby
如果你是个学生,你应该会C,C++和Java。还会一些VB,或C#/.NET。多少你还可能开发过一些Web网页,你知道一些HTML,CSS和JavaScript知识。总体上说,我们很难发现会有学生显露出掌握超出这几种语言范围外的语言的才能。这真让人遗憾,因为还有很多种编程语言,它们能让你成为一个更好的程序员。在这篇文章里,我将会告诉你,为什么你一定要学习Python或Ruby语言。跟C转载 2012-08-09 13:17:46 · 1591 阅读 · 0 评论 -
Spring整合Rmi总结
在Spring整合Rmi中:服务端使用了org.springframework.remoting.rmi.RmiServiceExporterRmiServiceExporter把任何Spring管理的Bean输出成一个RMI服务。通过把Bean包装在一个适配器类中工作。适配器类被绑定到RMI注册表中,并且将请求代理给服务类。客户端使用了org.springframework.remo原创 2012-08-08 11:54:13 · 8695 阅读 · 4 评论 -
java读取*.p12证书的信息
现在很多通讯都是在SSL上进行的。本文主要针对*.p12证书 读取里面信息。/** * ReadP12Cert.java * 版权所有(C) 2012 * 创建:cuiran 2012-07-31 15:50:53 */package com.wpn.iphone.ssl;import java.io.FileInputStream;import java.sec原创 2012-08-01 08:43:44 · 19883 阅读 · 1 评论 -
java给iphone应用实现推送
根据公司项目所需,需要对iphone应用进行消息推送,一开始选的是php,但是php语言知识略懂,开发起来比较麻烦,所有就用比较熟悉的java语言进行消息推送。需要依赖的jar包: 具体代码如下:/** * MainSend.java * 版权所有(C) 2012 * 创建:cuiran 2012-07-24 11:31:35 */package com.wpn.iphone原创 2012-07-30 11:15:44 · 12618 阅读 · 15 评论 -
java测试并发类
/** * ConTest.java * 版权所有(C) 2012 * 创建:cuiran 2012-07-12 10:12:14 */package com.wpndemo.test;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.i原创 2012-07-12 15:43:46 · 9439 阅读 · 0 评论 -
用树展示上下级关系-jquery+ztree+json的运用之获取选中的信息
继之前的一篇 用树展示上下级关系-jquery+ztree+json的运用 这一篇主要是获取选中的内容。选中内容后会在文本框进行显示。具体实现代码<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.原创 2012-07-11 12:42:39 · 9216 阅读 · 0 评论 -
Android学习笔记(五) 之android tabwidget 调整高度文字居中
今天主要对android tabwidget进行了研究,但是一开始调整高度和文字居中始终不满意。如果不加图片显示效果如图但是这样给人感觉很不好感觉太不融洽了。然后就对TabWidget处理处理如下: TabWidget tabWidget = tabHost.getTabWidget(); for (int i = 0; i < ta原创 2012-07-05 16:17:39 · 9406 阅读 · 8 评论 -
Android学习笔记(四) 之模拟发短信
首先创建基于Android2.2 模拟器的Android工程先完善string.xml 文件 Hello World, SmsActivity! 短信发送器 请输入手机号 请输入短信内容 发送短信 发送成功然后完善main.xml 界面UI文件<LinearLayout xmlns:android="http://schemas.原创 2012-06-26 14:11:46 · 2425 阅读 · 0 评论 -
Android学习笔记(三) 之模拟打电话
首先如图:新建一个Android工程,基于Anrdoid2.2模拟器创建然后完善string.xml文件 Hello World, SharpPhoneActivity! SharpPhone 请输入手机号 拨打此号然后是完善界面 修改main.xml<LinearLayout xmlns:android="http://schemas原创 2012-06-26 13:54:14 · 1663 阅读 · 0 评论 -
试看properties文件如何被摧残
首先在工程中创建一个properties文件内容如下:name=testxx,password=31331然后用Java对其进行摧残/** * LoginConfig.java * 版权所有(C) 2012 * 创建:cuiran 2012-06-20 10:16:29 */package com.wpn.util;import java.io.InputSt原创 2012-06-20 11:06:24 · 1763 阅读 · 0 评论 -
Description Resource Path Location Type Error generating final archive: Debug
android要求所有的程序必须有签名,否则就不会安装该程序。在我们开发过程中,adt使用debug keystore,在 preference->android->buid中设置。debug的keystore默认有效期为一年,如果你是从一年前开始开发 android程序,那么很可能出现debug keystore过期,导致你无法生成 apk文件。 解决办法: 进入 C:\Docu原创 2012-06-14 12:48:26 · 35185 阅读 · 10 评论 -
用树展示上下级关系-jquery+ztree+json的运用
本文是结合前面对fastjson的处理后,在此基础上来用树的形式展示后台数据如图所示:采用了开源的ztree技术。具体参考:http://www.oschina.net/p/ztree因为ztree的格式支持Json,所以我们就新建了一个Node类【TreeNode.java】/** * TreeNode.java * 版权所有(C) 2012 * 创建:cuiran 2012-06原创 2012-06-13 13:20:56 · 34660 阅读 · 18 评论 -
fastjson开发学习(二)---对返回的json进行解析
上一篇提到了后台返回的json格式,此文主要说下如何解析返回的对象:如果json返回的格式为:{"id":0,"name":"delvelop group ","users":[{"gender":"female","id":2,"mobile":"13645445544","name":"july"},{"gender":"male","id":3,"mobile":"15915原创 2012-06-11 17:03:55 · 5376 阅读 · 4 评论 -
fastjson开发学习(一)---把对象封装成json。
首先需要下载fastjson的jar包,官方也提供了下载地址和源码。fastjson: http://www.oschina.net/p/fastjsonfastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。主要特点:快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)强大(支持普通JDK类包括任意Java原创 2012-06-11 08:52:30 · 9212 阅读 · 0 评论 -
Cause: net.sf.cglib.beans.BulkBeanException 之解决方法
在使用Ibatis时候经常会出现如下错误:2012-05-30 18:50:56:INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sq原创 2012-06-04 12:25:35 · 11871 阅读 · 4 评论 -
试问用DES加密解密是否安全
数据加密现在有很多方式,现在在思考系统中是采用不可逆加密还是采用可逆加密?是采用MD5加密还是采用DES加密?下面给出一个例子:采用md5加密: 加密字符串是:admin 密文是:21232F297A57A5A743894A0E4A801FC3 但是复制密文在百度中随便搜索MD5解密,然后输入进行就显示解密后内容为:admin采用DES加密:因为DES解密是可以根据传入的Key值,然后产生一个原创 2012-05-21 13:00:35 · 6829 阅读 · 3 评论