入门:Java连接各种数据库的实例
1、Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url="jdbc:oracle:thin:@localhost:1521:orcl";//orcl为数据库的SIDString user="test";String password="test";Connection conn= DriverManager.getConnection(url,user,password);2、DB2数据库Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();String url="jdbc:db2://localhost:5000/sample";//sample为你的数据库名String user="admin&
用事实说话!AJAX应用程序开发七宗罪
AJAX bandwagon是个好去处。它带给你更快、更高效、更强动态的应用。但它也有自身的缺陷。 初一看,具备一些常识似乎就能避免这些缺陷,在一定程度上,的确如此。但从DHTML起源来看,AJAX应用程序充满了结构性差异。不论你在应用程序开发工作中掌握了多少常识,从别人犯的错误中吸取教训也是有好处的。我们称这些错误为“七宗死罪”,但它们不能代表全部的错误。 事实上,在你犯这些致命过失之前,你可能首先犯了一些较轻的错误。因此我们从这里着手。这是每个人都可能犯的错误。这些错误是多么普遍,通过Google搜索一下,你就可以
专家为您详解JAVA数据库基本操作
java 数据库基本操作1、java数据库操作基本流程2、几个常用的重要技巧: 可滚动、更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 1、取得数据库连接 1)用DriverManager取数据库连接 例子 String className,url,uid,pwd; className = "oracle.jdbc.driver.OracleDriver"; url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; uid = "system"; pwd = "manager"; Class.forN
用Javascript评估用户输入密码的强度
密码已经是我们生活工作中必不可少的工具,但一个不安全的密码有又有可能会给我们造成不必要的损失。作为网站设计者,如果我们在网页中能对用户输入的密码进行安全评估,并显示出相应的提示信息,那么对用户设置一个安全的密码将有很大帮助。同时也使得网站更具人性化,更有吸引力. 什么是一个安全的密码呢?本程序按以下的方式进行评估. 1.如果密码少于5位,那么就认为这是一个弱密码. 2.如果密码只由数字、小写字母、大写字母或其它特殊符号当中的一种组成,则认为这是一个弱密码. 3.如果密码由数字、小写字母、大写字母或其它特殊
开发J2EE应用应遵循的几点原则
J2EE,作为开发mission-critical的企业级应用的一整套规范的整合平台,规范多、内容广,从而给开发J2EE应用带来了很多“麻烦”。比如,为实现内容的RDBMS存储,我们可能的方法有JDBC、Entity Beans、JDO、O/R Mapping工具(TopLink、Hibernate)、XML-DBMS、JAXB等方法(其中一些方法不是J2EE规范所包含的)。因此,为实现J2EE各层(至少有表示层、控制层、商业逻辑层等3层)以及层与层之间的耦合,J2EE系统架构师需要考虑的问题会很多。加上,J2EE本身的快速发展,给架构、开发具有工业强度的J2EE应用带来一些难题。 同时,软件开发技术从
Java初学者都必须理解的六大问题
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。 问题一:我声明了什么! String s = "Hello world!"; 许多人都做过这样的事情,但是,我们到底声明了什么?回答通常是:一个String,内容是“Hello world!”。这样模糊的回答通常是概念不清的根源。如果要准确的回答,一半的人大概会回答错误。 这个语句声明的是一个指向对象的引用,名为“s”,可以指向类型为String的任何对象,目前指
Java程序最容易犯的21种错误实例分析
1.Duplicated Code 代码重复几乎是最常见的异味了。他也是Refactoring的主要目标之一。代码重复往往来自于copy-and-paste的编程风格。与他相对应OAOO是一个好系统的重要标志。 2.Long method 它是传统结构化的“遗毒”。一个方法应当具有自我独立的意图,不要把几个意图放在一起。 3.Large Class 大类就是你把太多的责任交给了一个类。这里的规则是One Class One Responsibility. 4.Divergent Change 一个类里面的内容变化率不同。某些状态一个小时变一次,某些则几个月一年才变一次;某些状态因为这方面的原
浅析Java语言中两种异常的差别
Java提供了两类主要的异常:runtime exception和checked exception。所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类衍生出来的。 它们的不同之处表现在两方面:机制上和逻辑上。 一、机制上 它们在机制上的不同表现在两点:1.如何定义方法;2. 如何处理抛出的异常。请看下面CheckedException的定义: 以下是引用片段: public class CheckedException extends Exception { public CheckedException() {} public Che
Java语言入门级的十二大特色详细介绍
1、Java是简单的 Java与C++极为相似,但却简单得多。高级编程语言的所有特性中,不是绝对需要的都已删去了。例如,Java没有算符过载、标题文件、预处理、指针运算、结构、联合、多维数组、模板及隐式类型变换。如果你知道一点C、C++或Pascal,你很快就会驾驭Java。这里是一个简单的JavaHelloWorld程序:以下是引用片段: public class HelloInternet { public static void main(String argv[]) { System.out.println("Hello Internet!"); } } 2、Java是面向对象的 Java是一种面向对象的
Java实现利用搜索引擎收集网址的程序
我这里讲的不是怎么使用搜索引擎,而是怎么让程序利用搜索引擎来搜集网址,这有什么用?很有用!网上动辄有人叫卖网址数据库,如发布软件网址、邮件地址、论坛网址、行业网址,这些网址是怎么来的呢?不可能是人手工收集而来的,都是让程序利用搜索引擎取到的,如果您需要某类网址信息数据,就跟我来一起研究一下,非常简单。 本文采用Java语言写成,以google和百度搜索引擎为对象。 我们要利用google、百度搜索引擎的搜索规则中的两条,关键字搜索和inurl搜索。什么是inurl搜索,就是你所要搜索的网址中本身带有的关键字,比如
实例:使用Javascript制作声音按钮
文章简介: 一般而言,网页中按钮是没有声音触发事件的。如果要让按钮响应鼠标动作发出声音,我们可以写一段JavaScript脚本代码来实现。 能让按钮发出声音的脚本,这下不用制作Flash按钮也可以了,我试用的感觉还不错。 制作方法: 1、新建文件:以下是引用片段:DynamicAudioButton.js ,代码: //Customize Dynamic Audio Link 自定义动态声音链接 function DynamicAudioLink(){ open("http://www.pcedu.com.cn") } //Customize Dynamic Audio Mouse Over Color 自定义动态声音mouseover颜色 function Au
使用J2ME程序测试MIDlet的生命周期
在MIDlet程序学习中,生命周期是一个比较抽象的概念。其实生命周期就是一个简单的规定,规定了MIDlet中的每个方法,什么时候被系统调用。下面是一个示例代码,在每个方法的内部都输出一条语句,可以根据程序的输出结果来验证各方法被调用的顺序,具体代码如下:以下是引用片段://文件名:LifeCircleMIDlet.Java import javax.microedition.midlet.*; /** * 测试MIDlet的生命周期 */ public class LifeCircleMIDlet extends MIDlet{ /** * 默认构造方法 */ public LifeCircleMIDlet(){
专家和您一起谈谈java加壳的问题
在C世界,对代码进行加密,主要通过加壳的方式。所谓加壳,就是先将程序代码加密,然后用特定的程序加载器,将代码解密后加载进内存,这样可以在防止代码的反编译,当然,有加壳工具,也有解壳工具,虽然不能100%防止crack,但仍然给代码增加一层有力的保护。 然而在Java世界,保护代码是件很困难的事情,因为class文件非常规范,极易反编译,且反编译后的代码清晰可读。常见的保护办法是使用混淆器,打乱class和function以及变量的名字,可以干扰反编译后的代码的可读性。虽然简单提高了代码的安全性,但还仅仅相当于未加壳的C程序
RSA算法的实现方法——Java版放送
一开始不知道有BigInteger这个大数类,居然自己去实现了一个,写了大数加法后,才发现有现成的T_T以下是引用片段:package rsa; import java.math.BigInteger; public class RSA { private long p,q,e,d,n; public RSA(){ int pIndex = (int)(Math.random()*10); int qIndex; int eIndex; do{ qIndex = (int)(Math.random()*10); } while(qIndex==pIndex); do{ eIndex = (int)(Math.random()*10); } while(eIndex==pIndex||eIndex==pIndex); p = 1033; q = 2017; e = 29437; n = p*q; d = calculat
开源以后 Java还能继续创造神话吗?
在柏林的JBoss世界论坛上,JBoss的成立者兼领导者Marc Fleury说到:在Linux世界,他很高兴Sun公司选择在GPL下发布Java,因为他认为:“这将至少延长Java 15年寿命”。照自由软件运动的观点来说:Java变成GPL的,这是一个好消息,因为它对Java虚拟机的知识产权产生了保护作用。 一、开源将大大延长Java的寿命 Fleury相信Java虚拟机在开源组织的影响下将会更快地发展,sun公司也会因为保留商标权而受益,而这对于JBoss、开发者以及开源社区来说,也无疑是件好事情。“因为我们关心平台的发展,我们同样也关心虚拟机的统一,来代替
IE浏览器中一个值得关注的JS问题
刚才在调试js,在mozilla中一切正常,但是在ie中却报告有configuration变量没有找到。以下是代码:以下是引用片段: var Environment = new (function Environment$ctor() { this.processCommandLine = function Env$procCmdLine(q) { var cmd = configuration {}; // <---- 就是这一行报告错误 // 其他代码省略 } }; 我先后把这一行改成如下的形式:以下是引用片段: var cmd = configuration == null? {}: configuration; var cmd = "undefined" == typeof(configuration)
提升JSP页面响应速度的七大秘籍绝招
方法一:在servlet的init()方法中缓存数据 当应用服务器初始化servlet实例之后,为客户端请求提供服务之前,它会调用这个servlet的init()方法。在一个servlet的生命周期中,init()方法只会被调用一次。通过在init()方法中缓存一些静态的数据或完成一些只需要执行一次的、耗时的操作,就可大大地提高系统性能。 例如,通过在init()方法中建立一个JDBC连接池是一个最佳例子,假设我们是用jdbc2.0的DataSource接口来取得数据库连接,在通常的情况下,我们需要通过JNDI来取得具体的数据源。我们可以想象在一个具体的应用中,如果每次
Java程序异常处理的特殊情况
1、不能在finally块中执行return,continue等语句,否则会把异常“吃掉”; 2、在try,catch中如果有return语句,则在执行return之前先执行finally块 请大家仔细看下面的例子:以下是引用片段:public class TryTest { public static void main(String[] args) { try { System.out.println(TryTest.test());// 返回结果为true其没有任何异常 } catch (Exception e) { System.out.println("Exception from main"); e.printStackTrace(); }
警告!Ajax技术的安全问题不容忽视
XML安全厂商Forum Systems公司上月在安全问题上提出了一个警告,他认为,随着越来越多的Ajax风格的应用出现,很多组织需要考虑潜在的安全缺陷以及性能问题。 位于盐湖城的Forum Systems公司的市场副总裁Walid Negm说:“我们并非在制造警告。我们只是感到需要让人们考虑安全和可扩展性需求。我们始终在关注使用XML的技术。这是我们份内的事。” Ajax是Asynchronous JavaScript and XML的缩写。它通过创建富网络应用来加强用户体验。根据Forum的看法,通过使用与Web服务互操作的更具有交互性的页面,Ajax增加了XML、文本和HTML的网
Java编程思想:面向对象的逻辑思维方法
要能应用面向对象的思想熟练得做好系统分析、设计、实现(编程),首先要求开发人员知道什么是对象,什么是面向对象得概念,否则是谈不上应用面向对象得思想搞软件开了。希望读者能在看到我在前面的不太严密、详细的论述之后可以对“对象”这个概念由一个初步的了解,同时也希望有不同看法的同行提出批评。其次,还要求开发人员有比较丰富的开发经验。否则,光谈理论,那是不能真正体会“面向对象”的含义的。尽管如此,我们还是可以定出一般的规则的。抛开生命周期的其它阶段,对一个确立的系统一般可以进行以下几个过程: 一、首先