拥有Java标签的文章
Java

使用JNI集成java与native程序

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

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

Java

java 设计模式

l创建模式1.工厂模式简单工厂:又称静态工厂方法模式,它可以根据传进来的参数来选择创建哪些对象。这样方便,但有个缺点,因为工厂模式本来就是为了将对象的使用和创建脱藕,而如果使用简单工厂模式的话,那么客户端就需要知道要创建的对象的类型。工厂方法:又称多态性工厂模式。工厂模式的核心是一个抽象工厂类,而简单工厂模式把核心放在一个具体类上。工厂方法模式可以允许很多具体工厂从抽象工厂类中将创建行为继承下来,从而可以成为多个简单工厂模式的统合,进而推广了简单工厂类。而

系统 2019-08-12 09:30:07 2500

Java

java 中paint .repaint.update

paint,repaint,update,这3个都跟绘图有关系的相关的方法把。这3个虽然以前用过,但是但是没有完全理解。下面这个段话是转载的(感觉讲的比较好):repaint()这个方法是一个具有刷新页面效果的方法,如果你要页面进行重画就可以调用.从上面的流程图可以看出,在绘制动画图形时候如果没有调用repaint()方法的时候直接就是由线程调用paint()方法进行绘制,用repaint()进行刷新显示.但是这样的动画会有个缺点(这样的效果绘制出来会有闪

系统 2019-08-12 01:54:48 2500

Java

java版仿QQ聊天软件,大量贴图,开放代码~~

无图无真相,先贴运行截图:客户端:登录:注册:注册成功:查找好友:找到好友:用户验证请求:好友分组:客户端主界面:个人资料:好友资料:聊天窗口:系统菜单:状态设置:系统托盘:服务器端:启动服务器:服务器运行状态:java版仿QQ聊天软件,大量贴图,开放代码~~

系统 2019-08-29 22:47:47 2499

Java

java.util.concurrent介绍

本文由cnblogs博主Caoer(草儿)原创,此处为转载。原文出处为http://www.cnblogs.com/sarafill/archive/2011/05/18/2049461.html如原创作者认为本文侵权,请通知本博。java.util.concurrent包含许多线程安全、测试良好、高性能的并发构建块。不客气地说,创建java.util.concurrent的目的就是要实现Collection框架对数据结构所执行的并发操作。通过提供一组可靠

系统 2019-08-29 22:16:17 2499

Java

Java、Tomcat 及 MySQL 环境配置

Java开发环境的配置首先我们要下载JDK。到Oracle官网上去下载即可,目前最新版是JavaSE8u25。开始我很混乱,JavaSE和JDK是什么关系呢?最后查了一下JavaSE=JDK+JRE。JDK就是Java开发工具包,JRE就是Java运行环境,我们做开发,需要本地运行调试,直接安装JavaSE就好了。JavaSE是Java开发的标准版本,JavaEE和JavaME都是基于它的。安装好JDK后,我们需要配置本地开发环境。在我们计算机的属性中高级

系统 2019-08-12 01:33:41 2499

Java

java即时通信解决方案openfire+spark完整安装指

本文介绍基于java的即时通信解决方案openfire3.6.4+spark2.5.8的完整的安装说明,并介绍了使用smack的java类库如何与im用户交互的例子,这样使得业务系统的消息可以通过smack编程将消息发送给spark客户端。spark2.5.8除了聊天之外还支持多人视频,语音,文件传输,截图,观看远程桌面,msn互联互通等功能。因本文图片太多,需要看图片的请下载资源或者访问http://code.google.com/p/openjweb/

系统 2019-08-12 01:33:16 2499

Java

送50本 Python、数据库、java方面的书,包邮给你!

来给大家送一波福利,这次联系了8个好友一起给各位送书,每个号送5本,一共45本,还包邮哦。感谢传智播客对本次活动的赞助。金主介绍:传智播客是国内数一数二的IT培训机构,现在关注传智播客,回复【破局】,即可领取由前阿里/百度/微软/IBM架构师教研团队打造的程序员技术进阶课程。同时这里还会不定期赠送书籍、键盘、免费大咖公开课分享、举办专注服务程序员的线上线下活动,关爱程序员健康,程序员相亲交友等主题活动。扫码即可关注01书怎么送很简单,关注下面的公众号,并在

系统 2019-09-27 17:57:25 2498

Java

(window)python_resultful风格像java一样对外提供接口

单个python文件,在不引用外部资源库的情况下,是可以直接在服务器上面执行的但是python如何resultful风格版的对外提供访问接口呢?借助一下python的flask轻量级web框架,看下面代码,可以证明足够轻量级第一步:安装flask依赖,输入命令:pipinstallflask(需要进入python环境的scripts目录,如果你没有配置环境变量的话)第二步:上代码fromflaskimportFlaskapp=Flask(__name__)

系统 2019-09-27 17:52:50 2498

Java

带线程池的小服务器-Java实现

前两天,利用线程池技术(ThreadPool)写了个web服务器,其性能当然无法和apacheiis等相比,但基本的功能都有了,唯一欠缺的是无法解析动态页面,采用解释执行(asp模式的)效率太低,如果采用编译执行,要么自己编写一个编译器来编译整个动态页面,要么采用预编译,很复杂。。。。现在把代码拿出来晒一晒!由于只是初步的设计所以没有考虑到很多设计模式,代码在优化上很不到位,请各位高手不吝赐教。MainServer.java这是主服务文件,也是提供主线程的

系统 2019-08-12 09:29:48 2498

Java

Rhythmk 一步一步学 JAVA(2) : 操作 MYSQL

1.下载如:mysql-connector-java-5.1.22.zip解压获取jar连接包。2.引入项目:右键项目名--->BuildPath—>ConfigureBuildPath...选择Libraries然后再选择右边第二个选项AddExternalJars导入mysql-.jar3.新建数据表:CREATETABLE`user`(`ID`int(11)NOTNULLAUTO_INCREMENT,`Name`varchar(32)NOTNULL,

系统 2019-08-12 01:52:12 2498

Java

敏捷开发中编写高质量Java代码

敏捷开发的理念已经流行了很长的时间,在敏捷开发中的开发迭代阶段中,我们可以通过五个步骤,来有效的提高整个项目的代码质量。Java项目开发过程中,由于开发人员的经验、Java代码编写习惯,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维护,需要较大的测试投入和周期等问题。这些问题在一个项目组初建、需求和设计均具有不完全可预期性和完备性的全新项目中将尤为突出。如图1所示,敏捷开发过程经历需求调研,用例分析和用例分解,进入开发迭代阶段。在每个

系统 2019-08-29 21:58:48 2497

Java

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

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

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

Java

JAVA面试题解惑系列(一)——类的初始化顺序

好东西分享大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台的代码,然后让我们判断输出的结果。这实际上是在考查我们对于继承情况下类的初始化顺序的了解。我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过

系统 2019-08-12 09:29:28 2497