搜索到与相关的文章
Java

Java多线程-volatile的原理与技巧

volatile,用更低的代价替代同步为什么使用volatile比同步代价更低?同步的代价,主要由其覆盖范围决定,如果可以降低同步的覆盖范围,则可以大幅提升程序性能.而volatile的覆盖范围仅仅变量级别的.因此它的同步代价很低.volatile原理是什么?volatile的语义,其实是告诉处理器,不要将我放入工作内存,请直接在主存操作我.(工作内存详见java内存模型)因此,当多核或多线程在访问该变量时,都将直接操作主存,这从本质上,做到了变量共享.v

系统 2019-08-29 22:02:41 2479

Java

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

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

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

编程技术

从HelloWorld来看iphone应用程序的生命周期

学习iphone开发首先第一件事就是得知道iphone应用程序的生命周期,说白点就是当点击程序图标启动程序开始到退出程序整个使用运行过程中底下的代码都发生了什么,只有理解了这个才能游刃有余的掌握iPhone程序的开发,否则在写程序的时候有点浑浑僵僵不知所以然的感觉。首先忘记Xcode给我们生成的代码模板,忘记InterfaceBuilder,我们手动编写一个HelloWorld程序。真正开发项目的时候并不需要这样做,Xcode模板和InterfaceBui

系统 2019-08-12 09:30:13 2479

Java

java jsp tomcat6 mysql 连接池配置

最近在网上看到的java+jsp+tomcat6+mysql连接池大多数是tomcat5的,很多都说得不详细,并且配置不起,让我们很费时间,也很脑火,今天我终于把最新的tomcat6+mysql的连接池配置成功了,现在分享如下:1.需要的文件:mysql-5.0.27-win32.zip(安装文件),mysql-connector-java-5.0.4-bin.jar(连接驱动程序),apache-tomcat-6.0.10.exe(安装文件)2.配置to

系统 2019-08-12 09:27:22 2479

数据库相关

说说字符集和编码

http://www.javaeye.com/topic/398782很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为"字节"。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为"计算机"。开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方)种不同的状态。他们把

系统 2019-08-12 01:55:27 2479

数据库相关

cony

DescriptionDante最近研究出了一种新的兔子cony,这种兔子是一种雌雄同体的生物,具有超强的繁殖能力,每个月它可以产下a-1个新兔子,但每月只能产一次.在b个月以后Dante实验室已经拥有了一大群兔子,有一次他突发奇想准备给cony们照相,他有无数个长凳,每个长凳上可以站c个cony,而且每个长凳上要站满了所有的cony才能使用下一个长凳,可是Dante的兔子们不可能正好让每个长凳都站满,于是他只好舍弃一些cony,现在你能告诉他最少需要舍弃

系统 2019-08-12 01:54:34 2479

Oracle

maven之构建oracle的jdbc学习笔记_保存点_SQLXm

在前面的博客里面提到了jdbc的驱动注册与连接但是那个jdbc太旧了所以自己用jad把ojdbc6.jar进行了反编译又梳理了一下驱动注册和连接过程故此记录学习的脚步在梳理驱动注册的过程前先来看看jdbc3的保存点和jdbc4的操纵xml还有一个是transient关键字的测试packagecom.undergrowth.jdbc.learn;importjava.sql.CallableStatement;importjava.sql.Connectio

系统 2019-08-12 01:53:33 2479

数据库相关

Navicat工具破解

Navicat提供多达7种语言供客户选择,被公认为全球最受欢迎的数据库前端用户介面工具。它可以用来对本机或远程的MySQL、SQLServer、SQLite、Oracle及PostgreSQL数据库进行管理及开发。老版本破解都是使用注册机,但新的版本使用注册机却不生效,但可以使用另一种方式破解,通过补丁的方式破解。破解步骤:双击PatchNavicat_xx.exe,选择Navicat工具的安装目录的启动文件(navicat.exe),点击确定。如果提示P

系统 2019-08-12 01:52:57 2479

数据库相关

SQL2000 MD5加密

Code/**//******************************************************************************Name:T-SQLMD5算法实现*Author:RamboQian*CreateDate:2003-04-10*LastModifiedby:RamboQian*LastUpdateDate:2003-04-16*Version:V1.0.00********************

系统 2019-08-12 01:52:33 2479

数据库相关

ora-04091 表XX发生了变化 触发器/函数不能读

原文:刘武|ora-04091表XX发生了变化触发器/函数不能读的错误处理开发过程中碰到了ora-04091错误:表XX发生了错误,触发器/函数不能读以下是模拟场景:表PRODUCTS:CREATETABLECKSP.PRODUCTS(IDNUMBER(1)NOTNULL,NAMEVARCHAR2(100)NOTNULL,PRICE1NUMBER(1)NOTNULL,PRICE2NUMBER(1)NOTNULL)TABLESPACEUSERSNOLOGGI

系统 2019-08-12 01:52:28 2479