16boke - 一路博客

标签:Java

共 52 篇文章

详解java版webservice客户端打包成jar

使用cxf框架来开发的webservice客户端的普通jar程序如何进行打包呢?以及如何优化打包后的客户端运行效率呢?一、使用eclipse进行打包点项目右键,选择“Export”,选择“Runnable JAR file”,选择项目运行的main类,就是含有main方法的执行类,注意:一定要选择“Copy required libraries into a sub-folader next to the generated JAR”这一项,意思是将项目所需要的第三方jar包,以及使用POM.xml引入的包都拷贝到一个子文件夹中,其中文件夹名就是生成的jar名。最终会生成一个jar包

阅读全文

多线程环境下SimpleDateFormat的异常问题

SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调试的问题,因为 DateFormat 和 SimpleDateFormat 类不都是线程安全的,在多线程环境下调用 format() 和 parse() 方法应该使用同步代码来避免问题。看一下SimpleDateFormat类的定义: * Date formats are not synchronized.  * It is recomm

阅读全文

Java线程池及CountDownLatch的使用

Java多线程除了可以直接使用Thread和Runnable来实现外,jdk5以后提供了一种更方便的使用方式:线程池(Executors),本章暂不介绍什么是线程池,以及线程池的分类和使用。主要介绍线程池在实际工作的统计使用,并且介绍java并发包中同步锁的实现:CountDownLatch。1、什么是CountDownLatch直译过来就是倒计数(CountDown)门闩(Latch)。倒计数不用说,门闩的意思顾名思义就是阻止前进。在这里就是指 CountDownLatch.await() 方法在倒计数为0之前会阻塞当前线程。CountDownLatch 的作用和 Thread.j

阅读全文

通过java程序实现scp上传和下载文件

我们对ssh服务器进行文件上传和下载操作以及通过客户端直接发送命令来实现对服务器的操作该怎么实现呢?目前主流的还是直接在客户端使用shell脚本来实现,关于linux中ssh使用rsa免密码登录和下载文件的方法可以查看本站其他文章。今天我们提供另一种通过Java程序来访问ssh服务,并操作文件、传输文件、发执行命令等。一般操作ssh服务器上的文件需要先进行登录,目前有两种登录方式:一是直接输入服务器的用户名和密码来登录,另一种是提前配置好rsa认证的私钥和公钥,下面我们这段Java程序也提供了这两种方式。package com; import java.io

阅读全文

java版ip地址段的查找

在工作中经常会遇到将ip地址段进行按地域或者时区进行归类,再给定一个ip地址判断此ip属于哪个城市或者哪个时区,这时就需要对ip地址段进行指定值的查找,现在有这样一个ipcode.txt文本文件,输入一个ip地址得到对应的code。1、ipcode.txt文件内容用逗号分隔,第一位为起始ip,第二位为结束ip,第三位为编码,也可以为时区、地域等。注意:ip地址段提前已经排序过的1.1.1.1,1.2.1.1,a 1.2.1.2,1.5.1.1,b 1.5.1.2,3.1.1.1,c 3.1.1.2,5.1.1.1,d 5.1.1.2,11.1.1.1,e 11.1.1.2,

阅读全文

java版ip地址与整数的互相转换

在工作中可能会遇到将ip地址转为long型的整数,或者将十进制整数转换为ip地址的情况,下面介绍一种转换的方法。一、将ip地址转成long数值将IP地址转化成整数的方法如下:1、通过String的split方法按.分隔得到4个长度的数组2、通过左移位操作(<<)给每一段的数字加权,第一段的权为2的24次方,第二段的权为2的16次方,第三段的权为2的8次方,最后一段的权为1二、将数值转换为ip地址将十进制整数形式转换成127.0.0.1形式的ip地址将整数形式的IP地址转化成字符串的方法如下:1、将整数值进行右移位操作(>>>),右移24位,右移时高位补0

阅读全文

用java实现的简单的二分查找算法

一、什么是二分查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。二、实例查找一给定的值是否在指定的数组中,如果存在输出在数组中的下标,如果不存在则输出-1

阅读全文

Java轻量级ORM工具--DbUtils使用

一、概述DbUtil是一个非常经量级的ORM工具,不属于一个ORM框架,只提供数据库操作的简单实现,包含增、删、改、查、批量以及事务等操作。二、功能介绍采用配置文件properties配置数据库信息;采用java.util.Properties来加载配置文件;使用dbcp连接池技术;三、相关数据表DROP TABLE IF EXISTS `t_user`; CREATE TABLE `t_user` (   `id` int(11) NOT NULL 

阅读全文

Java轻量级ORM工具--DbUtils介绍

一、Apache Commons DbUtils简介;Apache的DbUtils工具是一个轻量级的持久层解决方案,天生为性能而生,它简单的对JDBC进行了必要的操作封装,让开发人员能够以一种高级API的方式使用JDBC技术完成原本复杂的CRUD操作。换句话说,DbUtils天生就不是一个复杂的技术,它只是一个简单的JDBC上层封装,对开发人员而言,大概只需半小时就能够完全掌握DbUtils技术的使用,是的,它就是这么简单与方便,它是互联网项目的宠儿,选择DbUtils技术作为持久层的解决方案,或许能够让你从原本复杂的Hibernate操作中解脱出来,或者是你觉得Ibatis不够好用

阅读全文

JMS应用服务器工具

8.1 概述本章描述用于并发处理订阅消息的JMS工具。也定义了JMS提供商如何支持JTS可感知的会话。这些工具主要由JMS提供商使用。如果JMS客户端使用JTS可感知工具来进行客户端编程,则它可能是不可移植的,因为不要求JMS提供商支持这些接口。在本章中描述的工具是JMS的一个特殊类别。它们是可选的,可能只有部分JMS提供商对它们提供支持。8.2 并发处理订阅的消息JMS提供了一个特殊的工具用于创建MessageConsumer,它可以并发的消费消息。这个工具将这项工作分成三个角色:• JMS提供商——用于转发消息。• 应用服务器——用于创建消费者和管理由并发MessageListe

阅读全文