JAVA网页编程之老手进门:JAVA数据库基础操纵指南
在性能方面,在windows平台下,.net可能是占强项,要是把.net放在sun开发的操作系统上去运行呢?根本就运行不了,.net对其它操作系统的支持也很弱,性能也可能比不上java。数据|数据库 java数据库基础操纵1、java数据库操纵基础流程
2、几个经常使用的主要技能:
・可转动、更新的纪录集
・批量更新
・事件处置
java数据库操纵基础流程:获得数据库毗连-实行sql语句-处置实行了局-开释数据库毗连
1、获得数据库毗连
1)用DriverManager取数据库毗连
例子
StringclassName,url,uid,pwd;
className="oracle.jdbc.driver.OracleDriver";
url="jdbc:oracle:thin:@127.0.0.1:1521:orasvr;
uid="system";
pwd="manager";
Class.forName(className);
Connectioncn=DriverManager.getConnection(url,uid,pwd);
2)用jndi(java的定名和目次服务)体例
例子
Stringjndi="jdbc/db";
Contextctx=(Context)newInitialContext().lookup("java:comp/env");
DataSourceds=(DataSource)ctx.lookup(jndi);
Connectioncn=ds.getConnection();
多用于jsp中
2、实行sql语句
1)用Statement来实行sql语句
Stringsql;
Statementsm=cn.createStatement();
sm.executeQuery(sql);//实行数据查询语句(select)
sm.executeUpdate(sql);//实行数据更新语句(delete、update、insert、drop等)statement.close();
2)用PreparedStatement来实行sql语句
Stringsql;
sql="insertintouser(id,name)values(?,?)";
PreparedStatementps=cn.prepareStatement(sql);
ps.setInt(1,xxx);
ps.setString(2,xxx);
...
ResultSetrs=ps.executeQuery();//查询
intc=ps.executeUpdate();//更新
3、处置实行了局
查询语句,前往纪录集ResultSet
更新语句,前往数字,暗示该更新影响的纪录数
ResultSet的办法
1、next(),将游标今后挪动一行,假如乐成前往true;不然前往false
2、getInt("id")或getSting("name"),前往以后游标下某个字段的值
4、开释毗连
cn.close();
一样平常,先封闭ResultSet,然后封闭Statement(大概PreparedStatement);最初封闭Connection
可转动、更新的纪录集
1、创立可转动、更新的Statement
Statementsm=cn.createStatement(ResultSet.TYPE_SCROLL_ENSITIVE,ResultSet.CONCUR_READ_ONLY);
该Statement获得的ResultSet就是可转动的
2、创立PreparedStatement时指定参数
PreparedStatemetps=cn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet.absolute(9000);
・批量更新
1、Statement
Statementsm=cn.createStatement();
sm.addBatch(sql1);
sm.addBatch(sql2);
...
sm.executeBatch()
一个Statement对象,能够实行多个sql语句今后,批量更新。这多个语句能够是delete、update、insert等或兼有
2、PreparedStatement
PreparedStatementps=cn.preparedStatement(sql);
{
ps.setXXX(1,xxx);
...
ps.addBatch();
}
ps.executeBatch();
一个PreparedStatement,能够把一个sql语句,变更参数屡次实行,一次更新。
・事件的处置
1、封闭Connection的主动提交
cn.setAutoCommit(false);
2、实行一系列sql语句
要点:实行每个新的sql语句前,上一次实行sql语句的Statement(大概PreparedStatemet)必需先close
Statementsm;
sm=cn.createStatement(insertintouser...);
sm.executeUpdate();
sm.close();
sm=cn.createStatement("insertintocorp...);
sm.executeUpdate();
sm.close();
3、提交
cn.commit();
4、假如产生非常,那末回滚
cn.rollback();
关于第二点:俺问问你,如果是企业级项目的话,诸如RMI,EJB,等一些关键技术,这些难道都不需要学么?如果光是使用jsp,servlet,javabean的话。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧 如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。 是一种使用者不需花费很多时间学习的语言 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 是一种突破用户端机器环境和CPU 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
页:
[1]