Java - 军军小站|张军博客
Java

Java NIO(二)Channel

JavaNIO的通道类似流,但又有些不同:既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。通道可以异步地读写。通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入。正如上面所说,从通道读取数据到缓冲区,从缓冲区写入数据到通道。如下图所示:Channel的实现这些是JavaNIO中最重要的通道的实现:FileChannel从文件中读写数据。DatagramChannel能通过UDP读写网络中的数据。SocketCh

系统 2019-08-29 23:17:48 2069

Java

《Java Web整合开发与项目实战》的书评

一本适合自学者的书会缩短自学的时间,并且会让自学者深深地去喜欢或钟爱自己的选择。希望更多的自学者朋友选择或向你们的朋友们推荐《JavaWeb整合开发与项目实战》。它确实是一本适合初学者的书籍。至少,买了这本书,可以令你省下数千元的培训费用。学完这本书,如果你想参加JavaEE技能培训,你便有权利要求培训机构实现分阶段交费,因为前期的课程都已经自学过了。《JavaWeb整合开发与项目实战》的书评

系统 2019-08-29 22:51:05 2069

Java

JAVA基础--方法传参

JAVA基础--方法传参为啥拿这个当话题?在初学者阶段,许多童鞋都对方法传参比较迷茫,知其然不知其所以然。一.先说说参数传递的几个术语:值调用(callbyvale):表示方法接收的是调用者传递的值。引用调用(callbyreference):表示方法接收的是调用者传递的变量地址。一个方法可以修改传递引用所对应的变量值,而不能修改传递值调用所对应的变量值;**JAVA语言总是采用值调用。也就是说,JAVA方法得到的是所有参数值的一个拷贝,方法不能修改传递给

系统 2019-08-29 22:32:28 2069

Java

使用JNI集成java与native程序

当我们开始接触JNI但是还不熟悉的时候,也许会这样几个问题:Java程序和native程序的数据类型通常是不一样的,它们怎么相互映射的呢?怎么在native方法中访问java方法传递过来的数据呢?在native方法中可以创建java对象吗?如何把结果返回给调用它的java方法?读完本文你将会明白如上问题的来龙去脉。首先我在重复一下如何编写JNI相关的应用程序,我们必须在java方法中声明一个native的方法,比如publicnativeStringget

系统 2019-08-12 09:30:14 2069

Java

C/C++、Java、Go、Python总结对比27-try...catch

我们平时写完代码运行的过程中,会出现一些问题,但是又不想让程序立马挂掉,或者有些数据没有处理程序就终止运行了。对于不想让程序直接遇到问题就停止的情况,我们可以用try...catch...捕获异常,打印出异常后继续运行。对于有些数据没有处理程序就挂掉的情况,我们可以用c++的析构函数和java中的finally来进行处理。throw:当问题出现时,程序会抛出一个异常。这是通过使用throw关键字来完成的。catch:在您想要处理问题的地方,通过异常处理程序

系统 2019-09-27 17:46:10 2068

Java

java中的集合

在java的iterator中,如果想删除一个元素,比如删除第一个元素,则应该先调用next()方法,再remove()。否则会抛出异常IliegalStateException。java类提供的AbstractCollection类把基础方法size和iterator抽象化了,但是在它们的基础上实现了例行方法contains()等。一个具体的集合可以从abastractCollection超类实现了,而且一些方法已经实现。具体的集合提供iterator方

系统 2019-08-12 09:30:35 2068

Java

java图片处理和jdom的使用

本人联系方式:msn:snowfox_1028@hotmail.comemail:snowfox_1028@163.com学习和使用这么久java,但是还是觉得很茫然,什么都知道一点,但是什么都不精通,如struts,hibernate,ejb,ibatis,spring,现在想想,应该选择一个目标,进行深入的学习和应用,这样才能有所成,做了这么长的java开发,最后得到的结论和经验就是这些。也好,有了一个明确的方向,一个目标,呵呵,可以走我自己的路了,日

系统 2019-08-12 09:29:27 2068

Java

从事 Java 20 年最终却败给了 Python,哭了!

之前遇到一个老师,他从事Java行业20年了,在Python兴起的时候,他周围的其他同行们都在纷纷学习Python方面的知识,连他的学生也问他“老师,你为什么不学Python呢?”。当这位听到学生这个问题的时候,他心里一怔一下,自己从事了Java这么多年,编写了这么多年的Java代码,Java的好他最清楚不过了,觉得Python再怎么盛行他也不会改行学别的,因为在他的眼里Java是不可取代的语言!可当Python逆袭各大编程排行版后,新媒体、身边朋友也都在

系统 2019-09-27 17:56:26 2067

Java

java调用存储过程

importjava.sql.*;publicclassProcedureTest...{publicstaticvoidmain(String[]args)...{try...{Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");Stringurl="jdbc:microsoft:sqlserver://localhost:1433;databasename=pubs";Connec

系统 2019-08-29 23:41:13 2067

Java

Java用户界面本地化实例探索

国际化是使程序具有足够的灵活性、能在世界上任何地区运行的过程。国际化所要求的必然结果是地方化――使一个程序能够运行在特定地区的过程。本文尝试用一个简单的例子来演示Java用户界面本地化。Java语言内核基于Unicode3.0(Java1.4)提供了对不同国家和不同语言文字的内部支持,由于先天的原因,Java对于国际化的支持远远要比C/C++来的优越。在我看来本地化必须满足以下的三个条件:1、程序必须能读、写和操作本地化的文本。2、程序在显示日期和时间、使

系统 2019-08-29 23:24:45 2067

Java

Eclipse编写java程序的流程

Eclipse编写Java程序的流程必须经过新建Java项目、新建Java类、编写Java代码和运行程序4个步骤。11.新建Java项目在Eclipse选择“文件”->“新建”->“项目”菜单项,打开如图“新建项目”对话框选择Java项目,单击下一步。设置项目的名称和相关信息。点击完成,完成Java项目的创建2.新建Java类在包的资源管理器中,鼠标右键点击要创建Java类的项目,在弹出的快捷菜单中选择“新建”/“类”菜单项。在弹出的对话框中设置要创建的类

系统 2019-08-29 23:11:07 2067

Java

将BIRT整合到自己的Java项目中(二)

关于编写viewer,关键在于使用ReportEngineAPI,这个在birt官方文档上有很详细的描述。这里将几个主要环节总结一下:启动ReportEngine这里需要注意启动ReportEngine的开销问题和图片链的协议的问题。使用IReportEngineFactory比每次new一个出来性能方面要好很多。使用HTMLEmitterConfig可以使得生成的HTML报表中的图片的src指向一个web资源而非file资源。publicIReportE

系统 2019-08-12 09:30:39 2067

Java

编写java代码的几点技巧

(1)bigdecimal中要使用string作为参数来构造(bigdecimal.valueof()会把各种值转化成字符串,再调用bigdecimal(string)的),否则照样会出问题;Java代码system.out.println(10000*1.005);system.out.println(newbigdecimal(10000).multiply(newbigdecimal(1.005)));system.out.println(bigde

系统 2019-08-12 09:30:00 2067

Java

Java Exception | 异常

http://docs.oracle.com/javase/tutorial/essential/exceptions/definition.htmlThrowableClassandItsSubclasses:Java中方法的调用构成方法调用栈,方法调用栈中方法的顺序与方法的被调用顺序是相反的。Java中程序的任何一处抛出Throwable对象后,都是采用按方法调用栈逐级上溯(即与方法调用顺序相反的顺序逐级上溯)的机制来搜寻可以处理被抛出的Throwab

系统 2019-08-29 23:37:33 2066

Java

Java基础:Java语句

Java语句-------关键语句介绍一、while语句一般形式:while(条件表达式){语句体………}执行过程:条件表达式为真,执行语句体。否则,退出!二、dowhile语句一般形式:do{语句体…….}while(条件表达式);执行过程:先执行一次语句体,判断条件表达式是否为真,为真再执行do语句中的语句体。为假,退出。需要注意:与while语句区别1.while(条件表达式)后面有分号;2.不管条件表达式是否为真,语句体均会执行一次。三、for语句

系统 2019-08-29 23:22:03 2066