
Java
文章平均质量分 84
powerfulzyh
有志者事竟成,真诚,宽容
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JDK 24 Class File API 介绍
JDK 24 引入的提供了一套类型安全的 API 用于操作 Java 类文件。这套 API 允许我们以编程方式读取、修改和创建 Java 类文件,而不需要直接处理底层的字节码。注:Class File API的前世今生,参见小子前作《JDK 24正式支持Class-File API。原创 2025-03-29 16:53:42 · 1104 阅读 · 0 评论 -
JDK 24正式支持Class-File API
提供一个用于解析、生成和转换 Java class 文件的标准 API。翻译 2025-03-29 11:55:15 · 60 阅读 · 0 评论 -
Cursor(VsCode)运行Java24代码报LinkageError和UnsupportedClassVersionError解决
openjdk 网站声称,由于 JDK 23 中的预览功能根据反馈进行了更改或删除,因此 JDK 24 支持这些功能的成本很高。类文件版本 67.65535 代表 Java 23 预览版(enable-preview),其中主版本 67 代表 Java 23,次版本 65535 代表预览功能。实践来看,新版本插件还是不能很好地支持新版本Java 24,官方应该会升级解决,以上几种workaroud的方式也能工作。此错误的一个可能根本原因是您的运行时 JDK 是最新的 ,但VsCode的。原创 2025-03-23 15:53:15 · 1042 阅读 · 1 评论 -
spring-boot-devtools引发的类加载器问题
问题描述最近在使用spring-boot开发系统,发现在某种情况下一些数据库操作会报异常,是hibernate报出来的。(在IntellijIDEA中启动程序)nested exception is org.hibernate.property.access.spi.PropertyAccessException: Error accessing field [private java.lang.Long xxx.BaseEntity.id] by reflection for persisten原创 2021-02-28 21:11:05 · 4760 阅读 · 0 评论 -
jvm命令行参数大全
查询最全的jvm命令行参数说明官方网站(oracle)第三方网站使用man帮助说明java(OpenJDK)启动的命令行参数,有上千个之多,随着jdk的快速更新,还在增加,也有些变更或删除。但从java --help (java --help-extra)中得到的参数说明有限。本文提供了几种不同的查询最全命令行参数方法,供大家参考使用。官方网站(oracle)在系统下找到java 安装目录...原创 2020-03-22 23:13:22 · 1609 阅读 · 0 评论 -
Intellij IDEA中Handy Export Jar插件支持从local changes导出jar
周末抽时间升级了Handy Export Jar插件。新功能,支持从Local Changes中导出jar包,这样不用一个一个的选择文件导出。具体操作与IDEA中既有的create patch功能一样。截图如下。如果已经升级,直接在settings->plugin中升级 从idea中直接安装 文件菜单,settings,plugins,从marketplace中搜索handy e...原创 2020-02-25 21:34:41 · 2326 阅读 · 3 评论 -
看看goolge的Java Code Style是否有可借鉴的地方
每个Java开发团队都有自己的代码风格,各种IDE也有默认或推荐风格,可以看一看Google的code style:http://google-styleguide.googlecode.com/svn/trunk/javaguide.html原创 2014-01-01 22:18:54 · 2606 阅读 · 0 评论 -
Java中的字节对齐方式
说到Java的字节对齐方式(ByteOrder),包括两个层面的解释。一是操作系统层次(或说CPU层次),这个要看是何种OS了,可以使用java.nio.ByteOrder.nativeOrder();方法取得。返回值为:LITTLE_ENDIAN或BIG_ENDIAN。大部分系统为LITTLE_ENDIAN。另外一个是Java层次,JVM使用了BIG_ENDIAN方式,即数据原创 2013-12-21 22:36:55 · 7576 阅读 · 0 评论 -
JVM启用JMX服务选项
要在远程服务器上的JVM启用JMX(Java Management Extensions)参数很简单,但也需要注意的地方:-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.原创 2013-12-22 23:40:31 · 12010 阅读 · 1 评论 -
JDK8 RC 版发布
今天在openjdk的主页上看到,jdk8rc版已经发布,感兴的可以下载了。地址原创 2014-02-12 09:50:57 · 1146 阅读 · 0 评论 -
Java 8: 从永久代(PermGen)到元空间(Metaspace)
As you may be aware, the JDK 8 Early Access is now available for download. This allows Java developers to experiment with some of the new language and runtime features of Java 8. One of these featur翻译 2013-12-14 18:27:57 · 52115 阅读 · 6 评论 -
Java1.7各种GC均会对PermGen进行回收
测试在JDK1.7u45 server版下,各种垃圾回收器均会对PermGen进行回收。测试的回收器包括:默认垃圾回收器(Parallel GC)-XX:+UseConcMarkSweepGC-XX:+UseG1GCPermGen中对象可回收的条件是,ClassLoader可以被回收,其下的所有加载过的没有原创 2013-12-10 09:06:16 · 4651 阅读 · 0 评论 -
JVM 基础知识(GC)
几年前写过一篇关于JVM调优的文章,前段时间拿出来看了看,又添加了一些东西。突然发现,基础真的很重要。学习的过程是一个由表及里,再由里及表的过程,所谓的“温故而知新”。而真正能走完这个轮回的人,也就能称为大牛或专家了。这个过程可能来来回回,这就是所谓“螺旋上升”,而每一次轮回都有新的发现。 这回添加的东西主要集中在基础的一些问题上,还有一些这两年思考的问题。这些问题可能平时我们不会转载 2013-12-10 00:16:28 · 12639 阅读 · 6 评论 -
令人惊讶!Java是最快的服务器端Web应用开发语言
令人惊讶!Java是最快的服务器端Web应用开发语言看一看Oracle持续地推动Java无处不在,从“物联网”到其它领域,这并不是简单的炒作。至少一组数字使 Java 成为服务器端 Web 框架的性能竞赛的佼佼者。但仅仅是性能上的优势就能赢得非Java开发者的青睐吗?从2013年3月开始,软件开发公司TechEmpower对几十种Web应用服务器框架,诸如Ruby on Rails、Dja翻译 2013-12-08 20:43:15 · 7591 阅读 · 0 评论 -
Instrumentation 功能介绍(javaagent)
nstrumentation 简介利用 Java 代码,即 java.lang.instrument 做动态 Instrumentation 是 Java SE 5 的新特性,它把 Java 的 instrument 功能从本地代码中解放出来,使之可以用 Java 代码的方式解决问题。使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助转载 2013-11-29 17:10:25 · 13628 阅读 · 1 评论 -
让JVM宕机
下面是java code greeks上的一篇文章,比较有意思,可以说是java的一个漏洞? 最近,我们发现深入细致的测试可能是有害的。扩大测试的覆盖度,只因为简单的一行代码导致我们费了几个小时的调试过程。造成我们这次不愉快的测试的罪魁祸首,就是那行代码,不仅让其所在的JVM崩溃,也让底层机器都宕机。 运行下面的代码(注意风险自担啊)。编译和运行时,都要将tools.j翻译 2013-11-29 23:38:03 · 2442 阅读 · 0 评论 -
JVM垃圾收集器使用调查:CMS最受欢迎
近日,Plumbr公司对特定垃圾收集器(GC)使用情况进行了一次调查研究。本次研究的数据来自代表2670个不同使用环境的84936个案例。其中,13%的环境已经明确指定了一个垃圾收集器,其余的根据JVM而定。在指定了明确垃圾收集器的11062个案例中,根据每个垃圾收集器使用的统计次数,研究人员做出了下面的垃圾收集器饼图:GC使用统计名词解释Serial:串行转载 2013-11-29 14:10:19 · 1201 阅读 · 0 评论 -
Eclipse4X安装Tomcat插件Uqbar's TomcatXT plug-in
一直在Eclipse中用Tomcat Sysdeo Plugin作为Tomcat的插件。但最近升级Eclipse为4.4M后,这个插件不可用(其实官方也只是更新到3.3版支持到eclipse3.6)。通过Eclipse的marketplace找到了一个新的插件Uqbar's TomcatXT plug-in,它是Sysdeo的继任者,支持eclipse3.2及以上的版本。通过适用与Sysdeo原创 2014-01-14 14:47:03 · 2175 阅读 · 0 评论 -
IntelliJ IDEA 中导出jar包插件-Handy Export Jar
目录背景功能安装使用源代码及问题跟踪截图背景使用Eclipse做Java的IDE时,经常要导出某一个类或几个类输出为一个jar包,然后用于补丁打到项目运行环境中,比较方便,可以避免编译整个工程或依赖问题。而在Idea中要做相同的操作,比较麻烦,有些插件也不太好用,因此,去年年底自己写了一个插件,基本与Eclipse的Export功能相同。功能Quick and Handy export...原创 2019-04-06 21:43:33 · 19401 阅读 · 11 评论 -
Spring+Hibernate+Jpa嵌套事务型service点滴
近期和团队兄弟一起处理了一个事务型service嵌套调用引发的问题,总结起来。环境spring4.2.5+hibernate4.3.11+jpa2.1spring xml 配置使用注解事务方式: 问题描述 service1.method--->(调用)service2.method,当1和2都开启事务,且1开启的读写事务,默认情况下2会嵌原创 2018-01-21 21:38:15 · 2997 阅读 · 1 评论 -
Bidirectional OneToOne association lazy loading support
Bidirectional OneToOne association lazy loading supportProject原创 2016-12-14 13:46:53 · 7885 阅读 · 1 评论 -
Add enum alias name or change name
QuestionJava enum’s name declare in source code, as some reason, we want to change its name to another one.For ExampleHave a enum:enum modifier { _public, _private, _protected;} As we know “publ原创 2016-12-16 10:24:19 · 993 阅读 · 1 评论 -
Spring的ref bean和ref local
ref bean<ref bean="someBean"/>可以引用运行容器中的bean的id或name。既包括当前环境,也包括父级环境中的bean。参见。ref local<ref local="someBean"/>只能引用当前xml中配置的bean的id,不能是name。运行前就可以检查到配置错误。Spring4.0移除ref localSpring4.0中已经移除ref local,官方解决原创 2015-03-23 14:50:44 · 1716 阅读 · 0 评论 -
给Spring的placeholder设置默认值
给Spring的placeholder设置默认值使用Spring时,可以方便地通过placeholder的形式${key}将key对应的properities定义value,注入到Bean中。但是如果在properities文件中,没有对key定义,默认情况下Spring启动创建Bean时会报找到key的错误。解决办法:一是将对应的key=value写入properies文件中,value可以为原创 2015-03-02 22:01:28 · 3494 阅读 · 0 评论 -
JSP页面输出不完整
最近产品上一个jsp页面输出不完整,找了好几种原因:1.flus原创 2014-05-26 09:53:25 · 3290 阅读 · 0 评论 -
Java8正式发布
Java 8已于2014年3月18日正式发布。下载地址相关介绍文章-关于java8特性相关介绍文章-关于IDE支持原创 2014-03-25 16:33:17 · 1460 阅读 · 0 评论 -
线程间无锁通讯算法
infoq上的一篇文章介绍线程间无锁通讯算法。转载 2014-02-23 21:44:03 · 1585 阅读 · 0 评论 -
ProGuard的Maven插件配置
Java代码混淆工具ProGuard是比较流行的,集成到Maven中需要使用相关插件。通过比较,笔者认为IDFC Maven ProGuard Plug-in是较好些(也是ProGuard官方推荐)。下面是pom的一个配置示例,这个示例是对项目中一个公共lib(有其特殊性)进行混淆,除了plugin之外的配置,还有一个.pro的配置文件(存放在${basedir}/src/main/con原创 2014-01-20 22:52:37 · 13837 阅读 · 2 评论 -
Java 7 SDP:一次编写,到处运行,有时还运行得超炫!
本文将简单介绍Java 7 SDK里引入的Java套接字直接协议(Sockets Direct Protocol,SDP),这项新技术是个非常激动人心的突破。如果要对InfiniBand的远程直接内存存取(Remote Direct Memory Access,RDMA)进行native访问,SDP就能让超高性能计算(Ultra High Performance Computing,UHPC)转载 2013-11-28 23:26:39 · 3224 阅读 · 0 评论 -
JVM垃圾回归器介绍及比较
一篇是Oracle官方文章,介绍G1和CMS:《Getting Started with the G1 Garbage Collector》另一篇是对比商用的几种JVM中的垃圾回收器:《c4-garbage-collector 》转载 2013-11-22 09:40:28 · 835 阅读 · 0 评论 -
Eclipse调试Java程序出现Socket closed.(cannot connect to VM)错误
如果在用eclipse调试(或运行)java程序时,出现了cannot connect to VM 错误,实在找不出什么原因,可以检查以下几个方面。1、如果在linux系统下,要把127.0.0.1 localhost 加到配置文件中。2、如果在XP系统下,请检查杀毒软件的防火墙。3、经过我测试,在安装卡巴斯7.0后eclipse调试java项目时就有可能出现上述错误,就算你退出卡巴也原创 2008-08-26 22:30:00 · 7516 阅读 · 0 评论 -
本地码转换至ASCII码工具-native2ascii
在Java自带的工具有一个用于将本地编码的文本文件转换为ASCII码文件的工具,在某些情况下(例如,java源文件在不同系统平台下编译,含中文字符的资源文件处理等)会用到它,在这里总结一下,供各位参考。 native2ascii-本地码-至-ASCII 码转换器将含有本地编码字符(既非 Latin1 又非 Unicode 字符)的文件转换为 Unicode 编码字符的文件。原创 2007-12-26 16:02:00 · 2900 阅读 · 0 评论 -
在VMware上的FC7中安装Oracle10g
安装Oracle10g:这两天在我的VMware6.0下成功安装了Fedora7,然后在上面又成功安装了Oracle10g。当然,参考了很多网上资料。在FC7中安装Oracle10g,大致分为:下载缺少库;建立安装用户;建立安装目录;修改全局配置文件;安装等几个步骤,具体方法我在这里就不累述了,有兴趣的可参考我的同学暴民的博客。我只是补充几点:安装时用的是oracle用户,如果用r原创 2007-11-14 20:58:00 · 1182 阅读 · 0 评论 -
我用Java实现的二叉树的遍历(递归和非递归)
下面是我的原代码,后面是一个辅助类:/** * BinTee.java */package com.zyh.test;import java.util.*;/** * @author zhyhang * @version 10/19/07 */public class BinTree { /** * @param args */ public static void main(Stri原创 2007-10-24 22:05:00 · 2024 阅读 · 0 评论 -
JFormattedTextField组件的文本选择问题
在最近的Java编程中遇到一个问题,就是如何实现:文本组件在获得焦点后,自动选择其文本内容? 这本来是一个比较容易的问题,例如,用下面的方法就应该可以实现: myTextField.addFocusListener(new FocusAdapter() { public void focusGained(FocusEvent evt) { JForm原创 2007-09-09 14:37:00 · 931 阅读 · 0 评论 -
NetBeans之Matisse解读
从NetBeans5.0开始,就加入了新的GUI设计模块“Matisse”, 到今年晚些时候即将发布的6.0,Matisse已经逐步地完善,并被开发人员所接受。因为它对于开发基于Java的桌面应用程序来说简直太方便了。 原来并不知道这个“Matisse”到底是什么意思,字典中也没有它的解释。到NetBeans的主页上也没找到答案。到网上搜一搜,终于明白NetBeans的开发人员为什么原创 2007-04-27 09:34:00 · 1607 阅读 · 0 评论 -
编写建模软件的工具选择?
因为学业的原因,要编写一个如visual visio、rose一样的建模软件,但不是UML建模。 因为要考虑跨平台的问题,所以选择以java语言实现。但是如果要从头编写,可能要费很大的力量,所以在高手的指点下准备使用现有的工具。这几天一直在查找相关软件。 初步,找到了两款工具软件。一个是netbeans下的visual library包,另一个是eclipse下的GMF插件。相比较来说,原创 2007-04-16 00:29:00 · 1240 阅读 · 0 评论 -
期待着NetBeans6.0 Milestone9的发行
前几天在WilliamChen的BLOG中看到一个有关NetBeans6.0即将推出的新功能的flash演示,深受震动!下面一张图片是个截图。Flash中主要演示的是GUI Builer的增强功能。很想早点儿体验到亲身适用的感觉,但是我这几天下载的daily builder版中还没有加入这项功能。 Roumen在博客中透露,这一功能将在M8或M9版中加入,但上月底时M8已经发布,还原创 2007-04-16 20:28:00 · 2438 阅读 · 0 评论 -
mysql5.1.7-beta-log和mysql-connector-java-5.0.5中文乱码的解决(linux)
整整弄了一个晚上,终于解决了jdbc(mysql-connector-java-5.0.5)和mysql5.1.7通信中文乱码的问题!我的系统是linux(FC5)。在java中(eclipse环境)使用jdbc连接mysql。存储英文没问题,写(insert into)和读(select)都能正确显示,但是若其中带有中文字符就成乱码了。看了mysql5.1的中文手册没有解决,到网上查找了半天资料原创 2007-04-07 00:38:00 · 3144 阅读 · 0 评论 -
Java学习笔记之Final(Static)变量
如果一个类的域被声明为final: 则必须对它进行初始化,否则编译器会报错; 初化时可以在声明时进行,private final int n=100; 如果在声明时未进行初始化,则在每个构造函数中都要对它进行显式初始化; 如果对一个类对象变量声明为final,只代表这个对象变量不能再引用其它对象,如,final Date date=new Date();是不能再date=n原创 2007-03-16 12:33:00 · 933 阅读 · 0 评论