- 博客(42)
- 资源 (6)
- 收藏
- 关注
原创 Windows下部署Java工程war包:
Windows下部署Java工程war包:(保证Windows系统主机到数据库等 涉及到的主机连通性,ping)1.Windows系统上安装JDK及配置环境变量2.拷贝服务器(eg:Wildfly、eap等)到Windows系统上3.修改设置服务器的配置文件standalone.xml,涉及到数据库的链接、访问端口号等4.拷贝工程war包到服务器deployments文件夹
2017-01-15 15:26:45 11197 1
原创 java异常报错:java:[1,1] 非法字符: \65279:
java异常报错:java:[1,1] 非法字符: \65279:解决办法:1.在 IDE中修改提示有非法字符的java文件的编码为:ISO-8859-1 然后 我们就 可以看到java文件的开头有些 乱码,删除它,就是它在捣乱 2.修改完之后,把文件的编码改回 UTF-8 保存,用ant 工具打包编译 成功
2017-01-15 15:25:50 17153
原创 SynchronousQueue、LinkedBlockingQueue、ArrayBlockingQueue性能测试
SynchronousQueue、LinkedBlockingQueue、ArrayBlockingQueue性能测试在ArrayBlockingQueue实现中,take()和put()用的是统一的一个单锁。在LinkedBlockingQueue类的实现中,是对put()和take()分别使用了两个不同的锁,都使用了ReentrantLock实现。SynchronousQueue的特点是,读取...
2017-01-15 15:17:43 20953
原创 解决java文件编码和windows7系统(中文版)默认编码冲突所导致的乱码情况
解决java文件编码和windows7系统(中文版)默认编码冲突所导致的乱码情况 :在windows7系统下,新建一个系统变量(计算机图标上右键——属性——左侧“高级系统设置”——“高级”环境变量——系统变量——新建),变量名为JAVA_TOOL_OPTIONS,变量值为-Dfile.encoding=UTF-8。这样在每次执行java类的工具时,会临时地设置编码格式为UTF-8
2017-01-15 15:11:28 11767
原创 webService 服务端:加入命名空间+端口
webService 服务端:加入命名空间+端口interface接口:@WebService(targetNamespace="http://msgIdMatch.ws.webservice.common.monitor.adc.taiji.com/", name="MsgIDAndVersionMatchServicePortType")public
2017-01-15 15:09:03 20318
原创 cxf生成的webService,注解/注释自动生成的webService
cxf生成的webService,注解/注释自动生成的webService:1.注释掉无参的构造方法 eg: // public PushEBIFromCNEBServiceImpl() {// super(WSDL_LOCATION, SERVICE);// }// // //This constructor requi
2017-01-15 15:04:53 10722
原创 java注解:@Deprecated(不建议使用的,废弃的);@SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的)
java注解:@Deprecated(不建议使用的,废弃的), @SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的)@Deprecated可以修饰类、方法、变量,在java源码中被@Deprecated修饰的类、方法、变量等表示不建议使用的,可能会出现错误的,可能以后会被删除的类、方法等,如果现在使用,则在以后使用了这些类、方法的程序在更新新的JDK、jar包等就会出错
2017-01-15 15:02:52 59555 1
原创 观察者模式的缺点
观察者模式的缺点:运行效率较低,一个被观察者,多个观察者时,开发代码和调试会比较复杂,java中消息的通知是默认顺序执行的,若其中一个观察者卡壳,会影响到此观察者后面的观察者执行,影响整体的执行, 多级触发时的效率更让人担忧。(遇到此问题应该考虑使用异步的方式)观察者模式的邮电实例:package designMode.observable;import j
2017-01-15 15:00:21 11704
转载 回调函数
回调函数:就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
2017-01-15 14:58:23 9184
原创 java synchronized:(实例方法同步、静态方法同步)区别
java synchronized:(实例方法同步、静态方法同步) 实例方法同步:是指同步在拥有该方法的实例对象上, 这样,每个实例其方法同步都同步在不同的对象上,即该方法所属的实例。只有一个线程能够在实例方法同步块中运行。如果有多个实例存在,那么一个线程一次可以在一个实例同步块中执行操作。一个实例一个线程。静态方法同步:是指同步在该方法所在的类对象(并非类生成的实例对象)上。
2017-01-15 14:55:48 12053
原创 时间格式注解:@Temporal(TemporalType.XXXX)时间格式化hibernate jpa注解
时间格式注解:@Temporal(TemporalType.XXXX)时间格式化hibernate jpa注解TemporalType取值包括:DATE/TIME/TIMESTRAMP(分别表示:日期、时间、日期+时间)eg:@Temporal(TemporalType.DATE)@Column(name = "applyDate", nullable = false, lengt
2017-01-15 14:54:31 18217
原创 Java Clone方法原理
Clone方法原理:Object类的clone方法的原理是从内存中(具体地说就是堆内存)以二进制流的方式进行拷贝,重新分配一个内存块,那构造函数没有被执行也是非常正常的了
2017-01-15 14:51:59 9779 1
原创 线程中Sleep()、Wait()区别
线程:Sleep()、Wait():调用某个对象的wait()方法,相当于让当前线程交出此对象的锁monitor,然后进入等待状态,等待后续再次获得此对象的锁(Thread类中的sleep方法使当前线程暂停执行一段时间,从而让其他线程有机会继续执行,但它并不释放对象锁);Condition是在java 1.5中才出现的,它用来替代传统的Object的wait()、notify()实
2017-01-15 14:49:26 9345
原创 关于在spring 容器初始化 bean 和销毁前所做的操作定义方式有三种
关于在spring 容器初始化 bean 和销毁前所做的操作定义方式有三种:1. 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作2. 第二种是:通过 在xml中定义init-method 和 destory-method方法3. 第三种是: 通过bean实现InitializingBean和 Di
2017-01-15 14:48:15 9547
原创 Java 线程组和线程池区别
线程组:线程组存在的意义,首要原因是安全。java默认创建的线程都是属于系统线程组,而同一个线程组的线程是可以相互修改对方的数据的。但如果在不同的线程组中,那么就不能“跨线程组”修改数据,可以从一定程度上保证数据安全.线程池:线程池存在的意义,首要作用是效率。线程的创建和结束都需要耗费一定的系统时间(特别是创建),不停创建和删除线程会浪费大量的时间。所以,在创建出一
2017-01-15 14:45:23 14446 3
原创 URL字符串中空格转化
webService服务/restful服务,在url传参数字符串中涉及到空格,转换空格为‘+’使用:URLEncoder.encode(str, "UTF-8");服务端接收后自动转换回去
2017-01-15 14:42:52 9921
原创 Java代码生成时间戳
Date date = new Date();//样式:yyyy年MM月dd日HH时mm分ss秒SSS毫秒SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒SSS毫秒");String timeStampStr = simpleDateFormat.format(date);
2017-01-15 14:30:27 14547
原创 TreeMap,HashMap的排序问题
TreeMap默认(根据map的key排序)是升序的,如果我们需要改变排序方式,则需要使用比较器:Comparator。Comparator可以对集合对象或者数组进行排序的比较器接口,实现该接口的public compare(T o1,To2)方法即可实现排序,该方法主要是根据第一个参数o1,小于、等于或者大于o2分别返回负整数、0或者正整数。如下Map map = new TreeMap
2017-01-15 14:27:27 9526
原创 Java代码实现获取XML字符串中的属性
String resultStr = Document document = XmlUtil.getDocument(resultStr);Element infoMsg = (Element) document.selectSingleNode("/msg");String ResID = infoMsg.attributeValue("resid");获取属性:in
2017-01-15 14:25:29 13437 1
原创 eclipse远程调试部署在JBoss服务器上的工程
eclipse远程调试部署在JBoss服务器上的工程:(注意windows上和Linux上可能存在区别)1.Linux系统上部署JBoss工程:首先修改JBoss服务器wildfly-8.2.1.Final/bin/standalone.conf文件,找到修改成如下:然后在eclipse上设置远程连接,参考http://jingyan.baidu.com/art
2017-01-15 14:20:27 11039
原创 java.lang.OutOfMemoryError:GC overhead limit exceeded 内存溢出
常见的一般会有下面三种情况: 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread. Tomcat内存溢出解决方案 对于前两种情况,在应用本身没有内存泄露的情况下可以用设置t
2017-01-15 14:16:00 10476
原创 Java中equals方法和==的区别
==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。==比较的是2个对象的地址,而equals比较的是2个对象的内容。显然,当equals为true时,==不一定为true;
2017-01-15 14:12:38 9204
转载 Servlet的线程安全问题
Servlet容器默认采用单实例多线程的方式来处理请求,这样减少产生Servlet实例的开销,提升了对请求的响应时间Servlet 体系结构是建立在Java多线程机制之上的,它的生命周期是由Web容器负责的。当客户端第一次请求某个Servlet时,Servlet容器将会根据 web.xml配置文件实例化这个Servlet类。当有新的客户端请求该Servlet时,一般不会再实例化该Servl
2017-01-15 14:09:00 9420
原创 Java多线程-- SynchronousQueue队列和 TransferQueue队列比较及应用
SynchronousQueue:一种阻塞队列,其中每个 put 必须等待一个 take,反之亦然。同步队列没有任何内部容量,甚至连一个队列的容量都没有。不能在同步队列上进行 peek,因为仅在试图要取得元素时,该元素才存在;除非另一个线程试图移除某个元素,否则也不能(使用任何方法)添加元素;也不能迭代队列,因为其中没有元素可用于迭代。队列的头 是尝试添加到队列中的首个已排队线程元素;如果没有已排
2017-01-15 13:47:25 10791 2
原创 CPU/内存/缓存行/Disruptor
CPU/内存/缓存行/Disruptor:缓存分为多级缓存(L1/L2/L3...多级缓存)+主存mainMemory,内存中存储的是运行程序和所需数据,不同级别的缓存大小分配不一样,而且反应速度不一样,一般反应速度越快的缓存所分配的大小越小;每一级别的缓存又包括很多级别的缓存行,不同计算机分配的缓存行大小不同,eg:32字节、64字节、128字节等;(备注:因为数组是连续地址存储的,
2017-01-15 13:43:23 10026
原创 Oracle数据库--exp导出oracle数据库表及imp导入Oracle数据库表
exp导出oracle数据库表:(以本机管理员身份),参考http://jiqinlin.iteye.com/blog/758469导出表:exp 用户名/密码@localhost(ip地址):端口号/数据库实例名 file=本地地址\想要生成的表明.dmp owner=(用户名,密码)eg:exp c##tjuser/tjuser@localhost:1521/orcl file=C:\
2017-01-15 13:37:28 9953
原创 Oracle数据库:impdp导入数据库及expdp导出数据过程详解
1.创建数据库(可使用默认的数据库,此步骤可省略)2.在数据库中创建表空间,最好与导出的数据库的表空间相同名称,参考http://jingyan.baidu.com/article/5225f26b036c47e6fa0908e4.html创建表空间的SQL命令(PLSQL下操作):create tablespace TJFRAMEWORK datafile 'E:\zlProFiles\
2017-01-15 13:33:07 13743
原创 删除数据库指定的表空间及注意事项
1.删除无任何数据对象的表空间:首先使用PL/SQL界面化工具,或者使用oracle自带的SQL PLUS工具,连接需要删除的表空间的oracle数据局库。确认当前用户是否有删除表空间的权限,如果没有 drop tablespace,请先用更高级的用户(如sys)给予授权或者直接用更高级的用户。用drop tablespace xxx ,删除需要删除的表空间。2.删除有任何数据对象的表空间使用
2017-01-15 13:31:16 11103
原创 查看Oracle数据库所有的用户及表空间等
查看数据库所有的用户及表空间等:最直观的方法就是直接在pl/sql里查看 命令行如下查看所有用户:select * from all_users;查看表空间:查看用户具有怎样的角色:查看某个角色包括哪些系统权限:查看oracle中所有的角色:
2017-01-15 13:30:24 14052
原创 数据库连接池,设置连接池数量、plsql工具查询待连接数据库的排队数量,工程设置最大最小连接数量
数据库连接池,设置连接池数量、plsql工具查询待连接数据库的排队数量,工程设置最大最小连接数量
2017-01-15 13:23:13 14046 1
原创 Oracle数据库连接出现的问题,TNS-12535; ORA-12541:TNS:无监听程序,
Oracle数据库连接出现的问题,TNS-12535; ORA-12541:TNS:无监听程序,
2017-01-15 13:07:36 16361
原创 数据源不定时间段后连接中断(解决方法:连接关闭后设置自启动,重新自动连接
数据源不定时间段后连接中断(解决方法:连接关闭后设置自启动,重新自动连接
2017-01-15 13:00:01 21215
原创 PL/SQL Developer快速连接数据库(不需要再在Oracle数据库安装文件下配置tnsnames.ora文件)
PL/SQL Developer快速连接数据库(不需要再在Oracle数据库安装文件下配置tnsnames.ora文件)
2017-01-15 12:57:52 13967
原创 数据库一张表的数据拷贝到另一张表中SQL语句
数据库一张表的数据拷贝到另一张表中SQL语句:INSERT INTO tab2(id,num) SELECT id, num, FROM tab1 WHERE id>12;
2017-01-15 12:54:16 11947
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人