来看浅析数据源在JDBC中的使用
有了这样一个呼声:让java代替C语言成为基本语言。这些足以说明java简单易学的这个优点。其次,java的功能强大,前面我也提到了,EJB3.0的推出使java成为了大型项目的首选。简介
尽人皆知,JDBC(Java数据库毗连)是Java2企业版的主要构成部分。它是基于SQL层的API。经由过程把SQL语句嵌进JDBC接口的办法中,用户能够经由过程Java程序实行几近一切的数据库操纵。JDBC只供应了接口,详细的类的完成请求数据库的计划者完成。经由过程天生这些接口的实例,即便关于分歧的数据库,Java程序也能够准确地实行SQL挪用。以是关于程序员来讲,不用把注重力放在怎样向数据库发送SQL指令,由于程序员必要懂得和用到的只是JDBC的接口,只要在少少数情形下会用到面向特定命据库的类,比方程序员但愿利用ORACLE的扩大API。
在JDBC程序中,起首必要做的是完成与数据库的毗连。在示例程序中,我们利用的是ORACLE8i的JDBC包。毗连数据库一般必要完成以下几个步骤:
1.注册数据库驱动程序(driver)。能够经由过程挪用java.sql.DriverManager类的registerDriver办法显式注册驱动程序,也能够经由过程加载数据库驱动程序类隐式注册驱动程序。比方我们但愿向假造机注册Oracle8iJDBC驱动程序
//显式注册
DriverManager.registerDriver(neworacle.jdbc.driver.OracleDriver());
//隐式注册
Class.forName(“oracle.jdbc.driver.OracleDriver”);
关于假造机怎样主动注册经由过程类加载器(ClassLoader)加载的数据库驱动程序凌驾了本文会商的局限,在此不做具体会商。
2.创建毗连。挪用java.sql.DriverManager类的getConnection()办法能够创建与数据库的毗连。GetConnection()办法前往一个Connection对象。必要注重的是,getConnection()办法会主动从数据库驱动程序注册表当选择一个最符合的驱动程序。
3.创建毗连后,同意主动更新(AutoCommit)。挪用java.sql.Connection接口的serAutoCommit()办法能够设定当程序向数据库收回一条SQL指令后,数据库是不是当即更新。
上面是一个详细的实例。在该实例中,作为getConnection()办法参数的url利用的是Net8keyword-valuepair格局。固然也能够利用一般格局。数据库安装在名为Chicago的服务器上,利用的协定是TCP协定,利用的端口是1521,数据库的SID是chidb,利用的数据库驱动程序是OracleJDBCThin驱动程序。
importjava.sql.*;
//初始化常数
privatestaticStringurl=
“jdbc:oracle:thin:@(description=(address=(host=Chicago)”+
“(protocol=tcp)(port=1521))(connect_data=(sid=chidb)))”;
//也能够设定url为“jdbc:oracle:thin:@Chicago:1521:chidb”
privatestaticStringusername=“guest”;
privatestaticStringpassword=“guest”;
try
{
//注册数据库
Class.forName(“oracle.jdbc.driver.OracleDriver”);
//创建毗连
Connectionconn=
DriverManager.getConnection(url,username,password);
//同意主动更新
Conn.setAutoCommit(true);
}
catch(ClassNotFoundExceptione)
{
e.printStackTrace();
}
catch(SQLExceptione)
{
e.printStackTrace();
}
从实践使用的角度动身,我们能够看出接纳这类体例毗连到数据库存在几个成绩。第一是平安性成绩,因为程序代码中包括用户名和暗码,其别人假如能失掉bytecode,能够经由过程反编译工具取得用户名和暗码。第二是代码的可移植性成绩。假如但愿毗连的数据库称号或用户名有所变动,程序员必要修正源程序,然后把修正过的程序发送给用户。也就是说,软件没法离开数据库自力存在。如许不但会年夜年夜进步软件的本钱,也倒霉于软件自己的开展。还大概呈现如许的情形:在某些情形下,供应数据的机构不但愿数据库的用户名和暗码让编写程序的程序员晓得晓得。如许就提出了一个成绩,怎样使Java和数据库之间创建毗连时埋没一些敏感的信息。
<p>
windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的 Java是一种计算机编程语言,拥有跨平台、面向对java 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Java 编程语言的风格十分接近C、C++语言。 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 是一种突破用户端机器环境和CPU 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。 Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
页:
[1]