仓酷云

标题: JAVA网站制作之1、java数据库操纵基础流程 [打印本页]

作者: 因胸联盟    时间: 2015-1-18 11:38
标题: JAVA网站制作之1、java数据库操纵基础流程
最后就是我对java的几点希望:首先是IDE工具,有人说java已经很好了,有jbuilder,eclipse,netBeans等等,但是我认为如果java想超越.net,那么他首先要解决的就是IDE工具的整合。数据|数据库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"),前往以后游标下某个字段的值。

  3、开释毗连。

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();





你总不能说你写框架吧,那无疑会加大工作量,现在大多企业采取的是折中的办法,就是改别人写好的框架,可要改框架,前提是你对这个框架足够的了解,这就更难了。
作者: 海妖    时间: 2015-1-18 15:39
是一种将安全性(Security)列为第一优先考虑的语言
作者: 深爱那片海    时间: 2015-1-22 07:46
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: 不帅    时间: 2015-1-30 23:46
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
作者: 愤怒的大鸟    时间: 2015-2-2 08:47
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 变相怪杰    时间: 2015-2-7 17:38
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 仓酷云    时间: 2015-2-8 08:18
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
作者: 透明    时间: 2015-2-25 02:30
是一种使网页(Web Page)产生生动活泼画面的语言
作者: 飘灵儿    时间: 2015-3-10 19:08
是一种使网页(Web Page)产生生动活泼画面的语言
作者: 飘飘悠悠    时间: 2015-3-12 23:07
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
作者: 莫相离    时间: 2015-3-17 07:09
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 冷月葬花魂    时间: 2015-3-17 16:09
Java是一种计算机编程语言,拥有跨平台、面向对java
作者: 第二个灵魂    时间: 2015-3-19 03:56
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
作者: 若天明    时间: 2015-3-25 02:00
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: 精灵巫婆    时间: 2015-3-25 03:57
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
作者: 灵魂腐蚀    时间: 2015-3-28 00:14
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 爱飞    时间: 2015-3-29 17:10
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: 蒙在股里    时间: 2015-4-14 12:31
是一种使用者不需花费很多时间学习的语言
作者: 谁可相欹    时间: 2015-4-15 05:53
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2