
JAVA学习
lopper
简单做事,简单做人。
展开
-
JAVA语言Integer转换为byte
今天需要使用同事定义的函数接口碰到一个问题,eclipse提示Integer无法转换为byte.后来想到int可以强制转换为byte。于是便思考把Integer先转换为int,然后再转换为byte.Integer itg = 5;byte bt = (byte)itg.intValue();原创 2012-08-21 08:31:12 · 35213 阅读 · 1 评论 -
Java-对象序列化
Java 1.1增添了一种有趣的特性,名为“对象序列化”(Object Serialization)。它面向那些实现了Serializable接口的对象,可将它们转换成一系列字节,并可在以后完全恢复回原来的样子。这一过程亦可通过网络进行。这意味着序列化机制能自动补偿操作系统间的差异。换句话说,可以先在Windows机器上创建一个对象,对其序列化,然后通过网络发给一台Unix机器,然后在那里准确无误原创 2010-04-20 06:54:00 · 747 阅读 · 0 评论 -
Java中Byte型转字符串
public static String byteToString(byte src) { String desc = null; int i = 0; //取1个字节 i = src&0xFF; desc = Integer.toHexString(i); if (desc.length() == 1)原创 2010-04-20 06:43:00 · 1465 阅读 · 0 评论 -
MyEclipse下的打包插件fat jar
update site:http://kurucz-grafika.de/fatjar原创 2010-04-07 04:41:00 · 1988 阅读 · 0 评论 -
SWT Designer插件安装
1、打开MyEclipse,选择菜单上的Help->Software Updates->Add/Remove Software.2、点击add,然后选add site, 创建一个更新的书签。更新地址在这里找于你的MyEclipse中对应版本的Eclipse。http://download.instantiations.com/D2RCP/continuous/latest/update/原创 2010-04-03 10:35:00 · 1434 阅读 · 4 评论 -
Address already in use: JVM_Bind的处理
Address already in use: JVM_Bind是由于程序未被关闭或者由于其他程序占用了端口所致。可以通过关闭其他占用端口的程序进行处理。原创 2010-03-08 14:02:00 · 790 阅读 · 0 评论 -
OutputStream类执行write函数时出现NullPointException的处理
在调试一个SWT的SOCKET通信程序时提示了标题所示的错误.查看了一下API: public void write(byte[] b, int off, int len) throws IOException将指定字节数组中从偏移量 off 开始的 len 个字节写入此输出流。wr原创 2010-03-08 13:53:00 · 4559 阅读 · 0 评论 -
SWT模拟鼠标操作例子
中午写的,已经调通过。 Point point = sShell.getDisplay().map(sShell, null, btn0.getLocation().x, btn0.getLocation().y);//定位相对于shell的坐标 Event ev = new Event(); //创建事件 ev.type =原创 2010-02-22 14:26:00 · 1968 阅读 · 0 评论 -
Eclipse 3.4.2 下设置显示行号
菜单Window->Perferences->General->Editors->Text Editors里勾选Show line numbers 即可.原创 2010-02-22 16:57:00 · 742 阅读 · 0 评论 -
Non-terminating decimal expansion; no exact representable decimal result
由于需要处理精度比较高的浮点数,所以弃用double类型,改用BigDecimal类来进行数值处理。在加减乘时都没有出现问题,但是到除法运算时,提示了如下错误:大概的意思是“无法结束的除法表达式;没有精确的除结果”。我当时输入的10/3,结果应该是3.3333....333。 于是在网上找资料,发现我原来的处理方式有问题。BigDecimal num1 = new BigDec原创 2010-02-21 15:03:00 · 175633 阅读 · 10 评论 -
[Java]利用反射机制动态加载并创建包含参数的对象
<br />先定义一个A类:<br />package test;<br /><br />public class A {<br /> private int a;<br /> <br /> public A(){}<br /> public A(int a){<br /> this.a = a;<br /> }<br /><br /> public int getA() {<br /> return a;<br /> }<br /> public void setA(int a) {<br /> t原创 2010-07-16 22:23:00 · 3943 阅读 · 1 评论 -
myeclipse下开发jface出现text包冲突[signer information does not match signer information of other classes in the same package]
<br />今天在写jface程序时出现以下异常:<br />Exception in thread "main" java.lang.SecurityException: class "org.eclipse.jface.text.TextAttribute"'s signer information does not match signer information of other classes in the same package<br /> <br />网上查资料,意思大致为工程里的jar文件原创 2010-07-18 10:54:00 · 5917 阅读 · 0 评论 -
JAVA NIO写服务端判断客户端断开连接的方法
最近学习NIO,一直有个疑问,怎么知道客户端断开了连接.在上网找和试验之后发现下面的方法可以实现这个目的.我们一般会在服务端有个大的WHILE,然后在里面循环判断是否有客户端连接 ssc = (ServerSocketChannel) sk.原创 2011-07-30 08:08:02 · 8839 阅读 · 3 评论 -
MyEclipse下自带的Derby驱动的位置
<br />我的电脑上装在C盘,其他盘可照此推算。<br />C:/Program Files/Genuitec/MyEclipse 7.5/configuration/org.eclipse.osgi/bundles/12/1/.cp/lib/derbyclient.jar原创 2011-05-06 10:23:00 · 2085 阅读 · 0 评论 -
SWT窗口居中的设置
<br />函数如下:<br />public static void setShellCenter(Shell shell)<br />{<br /> int width = shell.getMonitor().getClientArea().width; <br /> int height = shell.getMonitor().getClientArea().height; <br /> int x = shell.getSize().x; <br /> int原创 2010-12-04 09:05:00 · 1838 阅读 · 0 评论 -
SWT多线程-关于非UI线程操作UI线程(二)
<br />随后需要在一个新打开的窗口后启动一个线程读取一个对象并按秒刷新界面显示。<br />仍然使用异步线程实现。<br /> <br />方法为:<br />1、创建一个线程:<br />public class TestThread extends Thread{<br /> public volatile boolean exit = false;<br /> <br /> private Label label;<br /> <br /> private Runnable runnable =原创 2010-12-01 20:15:00 · 2425 阅读 · 0 评论 -
SWT多线程-关于非UI线程操作UI线程(一)
<br />最近在使用SWT开发桌面程序。<br />在开发的过程中需要实现通过一个线程实时读取系统时间并能刷新界面上的时间显示。<br /> <br />使用如下代码实现:<br />1、创建一个Runnable<br /> //系统时间<br /> final Runnable timer = new Runnable()<br /> {<br /> public void run()<br /> {<br /> synchronized (this) {<br />原创 2010-12-01 19:40:00 · 1684 阅读 · 0 评论 -
关于java中byte只能表示-128~127的问题的解释及处理
按照计算机里的数值表示方式:正数,补码和原码一致。负数,补码为原码取反,然后再加一。那么16的二进制表示就是0001 0000, -112的二进制表示就是1001 0000计算机中一个字节为8位二进制,那么一个字节的数字的模为2^8 = 256模的概念是这样的,比方说模为12(时钟),那么4和8互为补数.因为 10 - 4 = 610 + 8 = 12 + 6 =6所以JAVA中byte的数据144被表示为 -112(因为112和144互相为补数).我们采用如下方式处理,因为当模为127时,112的补数为1原创 2010-06-16 12:13:00 · 6136 阅读 · 0 评论 -
Java函数字符串参数传递的传址模式实现
<br />前阵子,在写一个SWT控件的时候,发现JAVA由于没有指针,不能象C语言那样通过指针传递参数地址来取函数的参数值。<br />于是在网上寻觅,发现StringBuffer可以有效解决这个问题,只要把入参由String改成StringBuffer就可以实现获取函数中操作过的字符串了。StingBuffer.append(Str);<br />找到的信息如下:<br /> <br />StringBuffer为了弥补String的不足而产生的。<br />1、String的字串长度是不会改变的,如:原创 2010-08-11 10:32:00 · 5851 阅读 · 0 评论 -
SWT DESIGNER安装图解
<br />前阵子有朋友在我的博客里留言说没有安装图解,特此补上。<br />1、选择菜单上的软件更新<br /><br />2、在弹出窗口中点选“add”<br /><br />3、输入升级网址,见之前的文章<br /><br />4、确定后将显示要升级的内容,全选即可<br /><br />5、下一步<br /><br />6、开始升级<br /><br /><br />7、选菜单“window”-》“preferences”,查看注册信息,未注册则点注册按钮<br /><br />8、用注册机获取注册原创 2010-05-31 12:16:00 · 983 阅读 · 0 评论 -
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runtime/jobs/Job
<br />今天在调试JFACE的一个工程时,发现当界面改变时,会提示如标题的错误。<br />在工程的CLASSPATH里找寻,果然没有jobs包。于是上网找资料发现jobs包存在于org.eclipse.core.jobs_XXX.jar中。原创 2010-07-22 15:35:00 · 5227 阅读 · 0 评论 -
Java数据类型,Hibernate数据类型,标准sql数据类型之间的对应表
放到日志里,以备查询。Java数据类型Hibernate数据类型标准SQL数据类型byte、java.lang.BytebyteTINYINTshort、java.lang.ShortshortSMALLINTint、java.lang.IntegerintegerINGEGER原创 2009-12-14 11:04:00 · 741 阅读 · 0 评论 -
JavaScript自定义函数中字符串参数使用的经验
这几天在学习JS,学习了一些之后,做了些实践. 脚本函数定义如下:function confirminfo(code){ var r=confirm("是否确定?"); if (r==true) { document.write(code); } else { document.write("err"); }原创 2009-12-11 13:56:00 · 3125 阅读 · 0 评论 -
Oracle9i在MyEclipse里配置时的参数设置
用户名jdbc:oracle:thin:@127.0.0.1:1521:数据库名org.hibernate.dialect.Oracle9Dialect连接名密码oracle.jdbc.driver.OracleDriver Driver JARs%OracleHome%/ora92/jdbc/lib/ojdbc14.jar%OracleHome%/ora92/jdbc/li原创 2009-11-11 09:59:00 · 689 阅读 · 0 评论 -
getHibernateTemplate.load()一直无法找到数据库中存在的数据
今天在程序里执行getHibernateTemplate.load(),查找数据的时候一直返回一个null,但是通过PL/SQL却可以查找的数据,非常疑惑。 最后发现原来是由于getHibernate的缓存机制造成的。 getHibernateTemplate的load方法可以充分利用hibernate的内部缓存和二级缓存中的现有数据,而get方法仅仅在内部缓存中进行数据查找,如果原创 2009-11-12 12:35:00 · 1964 阅读 · 0 评论 -
部署程序问题, The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java
今天启动MyEclipse自带的Tomcat时,控制台返回如下错误:The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java。在网上找了解决方法:---------------------------------原创 2009-11-12 10:58:00 · 3406 阅读 · 0 评论 -
一个Hibernate中映射文件里设置引起的错误[续]
今天在编码过程中再次发生与上一篇同样的问题。于是在网上寻找处理办法,最后在MyEclips网站的讨论区发现了一个帖子,一个MyEclipse Support在帖子里回复如下:-------------------------------------------------------------------------------------------------------------原创 2009-09-09 13:13:00 · 649 阅读 · 0 评论 -
一个Hibernate中映射文件里设置引起的错误
昨天在试书里的一个例子,程序运行时提示如下错误:ERROR [main] ( CGLIBLazyInitializer.java : 130 ) - CGLIB Enhancement failed: hibernate.ch05.section02.SC - [org.hibernate.proxy.CGLIBLazyInitializer] -org.hibernate.proxy.C原创 2009-09-09 08:40:00 · 1892 阅读 · 0 评论 -
关于在Eclipse下使用TODO列表
以前使用delphi进行开发的时候,发现使用TODO是个好工具。下面是在Eclipse下使用TODO的方法。---------------------------------------------------------------------------------------------------------------------------------“TODO”任务链接创建原创 2009-06-12 10:20:00 · 39538 阅读 · 4 评论 -
JAVAC报错:仅当显示请求注释处理时才接受类名称
今天在学习TOMCAT,什么都用DOS来做.在做JAVAC的时候提示:仅当显示请求注释处理时才接受类名称.发现是因为JAVAC 后的参数没有写.JAVA的后缀名。写下来备案。原创 2009-07-31 13:27:00 · 9814 阅读 · 0 评论 -
关于环境变量配置后无效的原因
由于原来旧的东芝M18笔记本跑不动MyEclipse,因此只能手工搭建java环境,在这个过程中遇到了一些问题。其中有一个比较典型的是,我在配置完环境变量之后,发现配置没有起到作用。最后在发现一条变量值的最后面不允许再跟“;”。问题解决,留个纪念。原创 2009-07-30 09:26:00 · 4638 阅读 · 0 评论 -
MyEclipse自动生成get和set方法的操作
在MyEclipse 6.0中,可以在java文件中右键选择“Source”->“Generate Getters and Setters...”即可。原创 2009-04-23 16:18:00 · 11660 阅读 · 0 评论 -
用MyEclipse自带的Tomcat出现[Address already in use JVM_Bind:8080]
在网上找到如下解决方法:1,独立运行的Tomcat没有关闭.自安装的tomcat程序设置开机自动运行,或者在之前运行过,先关闭ecplipse或jbuilder,在任务管理器中找到Tomcat的进程,将其kill掉,即可.有时候Tomcat非法关闭时,在进程中,仍然存在,仍然占用8080端口.所以只要将其进程杀掉.就可以解决.2,安装了其他的软件占用了Tomcat的端口.用可以查看端口的工原创 2009-11-11 10:26:00 · 2244 阅读 · 0 评论 -
关于寻找MyEclipse下自带的JDK的路径
通过window-->preferences-->java-->Installed JREs,然后选择要察看的JDK的版本,选EDIT就可以察看到相关的JDK的路径了。原创 2009-11-15 15:33:00 · 6126 阅读 · 0 评论 -
VE在线安装说明的网站
http://wiki.eclipse.org/VE/Update原创 2010-02-03 05:08:00 · 1372 阅读 · 0 评论 -
According to TLD or attribute directive in tag file, attribute value does not accept any expressions
今天在写使用Struts进行分页操作。在处理共几页,当前为第几页时,由于使用了记录数/页面记录数,会造成小数。所以使用了标签进行处理。在执行页面的时候出现:According to TLD or attribute directive in tag file, attribute value does not accept any expressions晚上找了一下错误处理,如下:原创 2009-12-05 08:39:00 · 1425 阅读 · 0 评论 -
MyEclipse下Console无显示的解决
早上起来发现在MyEclipse里启动Tomcat时无任何显示,于是在网上找资料。 处理的方法很简单: 在包含Console面板的透视图里,点击右侧的OpenConsole的下拉条,选中Java Stack Trace Console,即可。原创 2010-02-01 01:03:00 · 5274 阅读 · 2 评论 -
Error creating bean with name 'sessionFactory' defined in ServletContext resource
今天在网上找了个例子,加入到MyEclipse中后。启动TOMCAT时,提示:Error creating bean with name sessionFactory defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested原创 2009-11-27 14:11:00 · 6789 阅读 · 2 评论 -
MyEclipse连接SQL Server 2000错误排除
在连接SQL Server 2000数据库时,系统提示如下错误: 在网上寻找到处理方法:(把SQL server update到sp4)1、在查询分析器中输入 select @@version 并执行SQL Server 2000 版本和级别@@VERSION 产品级别 SQL Server 2000 原始版本 8.0原创 2009-11-27 14:02:00 · 1173 阅读 · 0 评论 -
使用MyEclipse7.5连接MS SQL Server 2000
1、安装SQL Server 2000 JDBC Drviers,地址为:http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/setup.exe2、安装好之后,在安装目录/lib下找到msbase.jar、mssqlserver.jar、msutil.jar三个JAR文件,并放到工程原创 2009-11-27 13:40:00 · 1014 阅读 · 0 评论