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.forName(className);
Connection cn = DriverManager.getConnection(url,uid,pwd);
2)用jndi(java的命名和目录服务)方式
例子
String jndi = "jdbc/db";
Context ctx = (Context) new InitialContext().lookup("java:comp/env");
DataSource ds = (DataSource) ctx.lookup(jndi);
Connection cn = ds.getConnection();
多用于jsp中
2、执行sql语句
1)用Statement来执行sql语句
String sql;
Statement sm = cn.createStatement();
sm.executeQuery(sql); // 执行数据查询语句(select)
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、inssert、drop等)statement.close();
2)用PreparedStatement来执行sql语句
String sql;
sql = "inssert into user (id,name) values (?,?)";
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1,xxx);
ps.setString(2,xxx);
...
ResultSet rs = ps.executeQuery(); // 查询
int c = ps.executeUpdate(); // 更新
3、处理执行结果
查询语句,返回记录集ResultSet。
更新语句,返回数字,表示该更新影响的记录数。
ResultSet的方法:
1、next(),将游标往后移动一行,如果成功返回true;否则返回false。
2、getInt("id")或getSting("name"),返回当前游标下某个字段的值。
3、释放连接。
cn.close();
一般,先关闭ResultSet,然后关闭Statement(或者PreparedStatement);最后关闭Connection
可滚动、更新的记录集
1、创建可滚动、更新的Statement
Statement sm = cn.createStatement(ResultSet.TYPE_SCROLL_ENSITIVE,ResultSet.CONCUR_READ_ONLY);
该Statement取得的ResultSet就是可滚动的
2、创建PreparedStatement时指定参数
PreparedStatemet ps = cn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet.absolute(9000);
批量更新
1、Statement
Statement sm = cn.createStatement();
sm.addBatch(sql1);
sm.addBatch(sql2);
...
sm.executeBatch()
一个Statement对象,可以执行多个sql语句以后,批量更新。这多个语句可以是delete、update、inssert等或兼有
2、PreparedStatement
PreparedStatement ps = 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
Statement sm ;
sm = cn.createStatement(inssert into user...);
sm.executeUpdate();
sm.close();
sm = cn.createStatement("inssert into corp...);
sm.executeUpdate();
sm.close();
3、提交
cn.commit();
4、如果发生异常,那么回滚
cn.rollback();
Java数据库编程中的常用技巧
标签:数据库编程 java数据库 数据库连接 manager sql语句
小编还为您整理了以下内容,可能对您也有帮助:
Java编程快速有效的学习方法有哪些
在学习Java编程时,采用快速有效的学习方法可以帮助您更好地掌握这门技术。作为一家专业的IT互联网技术培训机构,千锋教育为学员提供全面的Java开发和培训课程,帮助学员快速入门并具备就业能力。
更系统全面的学习资料,点击查看更系统全面的学习资料,点击查看首先,了解Java编程的基础知识是学习的第一步。通过学习Java语法、基本数据类型、流程控制等基础概念,可以为后续的学习打下坚实的基础。千锋教育的Java培训课程将为学员提供系统的基础知识讲解和练习,帮助学员建立起对Java编程的理解。
其次,在学习Java编程过程中,实践是 重要的。通过编写小型的程序代码,实际操作Java语言的各种语法和特性,可以加深对知识点的理解和记忆。千锋教育的Java培训课程注重实践和项目驱动,通过模拟真实的项目开发环境,让学员亲自动手编写Java程序,提升他们的实际应用能力。
第三,积极参与Java编程社区和开源项目是学习的好方法。加入Java编程的社区,参与讨论和交流,可以与其他有经验的开发者互动,学习他们的经验和技巧。此外,参与开源项目可以锻炼自己的编码能力和解决问题的能力。千锋教育的Java培训课程也鼓励学员积极参与社区和开源项目,提升他们的综合能力和职业竞争力。
另外,不断学习和保持持续的学习动力也是学习Java编程的关键。Java是一门广泛应用于企业级开发的编程语言,需要不断学习和掌握最新的技术和框架。千锋教育的Java培训课程会定期更新课程内容,以适应市场的需求和变化。我们还提供就业指导和求职辅导,帮助学员顺利就业并在职业发展中不断学习和成长。
选择千锋教育作为您的Java培训机构,我们将为您提供全面的学习支持,助您成为Java领域的专业人才。我们的师资团队拥有丰富的实战经验和教学经验,课程设置合理,注重实践和项目驱动,帮助学员快速掌握Java的核心知识和技能。
感谢您对千锋教育的关注,我们期待与您一起开启成功的学习之旅。选择千锋教育,让我们一起努力,共同追寻IT技术的梦想。 千锋IT培训机构,热门IT课程试听名额限时领取
Java编程语言需要学习什么?
Java编程语言需要学习什么?如何系统的学习Java编程语言?零基础学习Java技术开发常常会走弯路,有时候错误的学习路线会大大打击我们的自信心的,维系制定Java学习录下至关重要,下面小编和大分享一下Java个基点的学习注意事项,以及如何制定学习计划实现学习目标
一、想学习任何语言时,最重要的是打下坚实的基础,通常,很多人都接触过C和C++以及Java编程语言,这些编程语言虽然有自己的特点但是规则是相同的。在研究过程中,要多使用数据结构和实用的算法,并养成良好的编程习惯。
二、Java语言是可以很好地用于各种大型服务器的应用程序,但是在进行此研究之前,学习Java知识非常重要,其中主要包括Unix开发环境,常用的Unix命令,所以在学习软件开发的过程中,Unix命令和Java开发环境息息相关。
三、在学习Java软件开发的过程中,学习面向对象非常关键,而面向对象具有很好的通用性。其中,面向对象的功能主要是封装,继承和多态性等知识,掌握面向对象就可以在编程中发挥关键作用,所以在整个学习过程中都不能忽略面向对象编程基础的学习。
四、在学习Java语言的过程中,不能忽略对数据库的使用,在软件开发过程中,数据库可以发挥非常重要的作用,但是在学习数据库的过程中,许多人不知道应该掌握哪些知识,其实最重要的是要精通SQL语句,掌握添加,删除,检查和修改的技巧,并掌握数据库的核心技术,这对后续的软件开发学习有很大的帮助。
免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!
新手应该如何学习Java编程语言
一、Java的语法基础
学习java的第一步是学会使用java程序语言编写程序,学习程序语言的第一步是熟悉其语法的使用。编程语言是一种语言,不同的是,这种语言是用来和计算机交流的,所以如果你想熟悉这种语言,北大青鸟北京计算机学院认为不是看别人写程序来理解,而是应该学习别人是如何使用Java解决问题的。
二、学会使用搜索引擎
作为开发人员,了解使用搜索引擎找到问题的答案是非常必要的能力。对于程序员来说,北大青鸟发现很多人比较喜欢使用谷歌浏览器,可以用几个简单的关键字找到问题的答案。
三、使用论坛参加讨论
在学习过程中,如果有人能一起讨论,那么对于加快学习的速度有很大的帮助。昌平计算机学校建议你可以找一个论坛,浏览开发相关资源,这样可以节省很多学习时间。在中文论坛上,可以选择参与Java技术论坛,在论坛上有很多丰富的资源。
四、有自己的学习地图
在学习了基本的j2se之后,可以使用实际应用Java编写程序。如果需要编写窗口程序,那么可以学习Swing窗口的设计;如果要编写数据库相关软件,那么北京java培训建议学习JDB;如果您想做Web程序,可以学习JSP/Servlet;如果您想了解移动程序的开发,那么可以选择j2me方向进行学习。
如何学好Java编程?
作为一个编程新手如何学好Java编程?对于一个热衷于Java技术的程序员,作为一个Java编程新手,掌握好下面的几个要点可以让你在众多Java开发人员中脱颖而出。
1. 选择很重要
作为一个初学者,找一种你喜欢用到工作中的语言,是非常重要的。所以说,选择哪个编程语言,作为自己职业生涯的开始,明确自己将来发展的方向。
不管你恰巧遇到或选择了什么语言,关键是经常练习。对于Java程序员,深刻理解ObjectOrientedProgramming(面向对象编程)这一概念是必须的。没有OOPS的坚实基础,就领会不了像Java这些面向对象编程语言的美。光学习OO原则的定义用处不大,关键是要学会如何应用这些原则用一种OO的方式去设计解决方案。因此,我们应该对对象建模、继承、多态、设计模式有一个很好的认识。
2. 掌握核心API
如果你不知道语言结构和核心API,那么即使你在理论知识上再怎么彪悍也是独木难成林。在Java中,我们最好能对核心API,如java.lang.*、I/O、异常、集合、泛型、线程、JDBC等有很强的实战经验。
3. 手头准备好常用的代码片段/实用程序
有时候我们可能需要一遍又一遍地复制粘贴/编写相同的代码片段/配置。所以,保存一些配置片段如log4.properties、jdbc配置,以及实用程序如StringUtils、ReflectionUtils、DBUtils大有好处。这些东西本身可能并不能让你与众不同,但是你想想看,要是你的合作开发人员希望你帮他从对象集合中获取属性值的列表,而你只需要用ReflectionUtil就可以在几分钟内解决,是不是一下子脱颖而出了呢。
4. 了解不同的开发方法
熟悉不同的开发方法,例如Agile、SCRUM、XP、Waterfall等等。现在,选择哪种开发方法是由客户说了算的。有的客户偏好Agile,而有的则更喜欢Waterfall模型。所以对各种方法都能有所涉猎绝对让人刮目相看。
5. 重要的是实践多敲代码
选择好了学习Java基础语言,还有就是选择一本经典的入门书籍,入门书籍不需要太多,一两本足够,要真正的吃透。如果真是零基础,可以在网上找点对应的尝试带入门,能听懂视频里面的东西后,开始回归教材,不建议一直对着视频学习。对理论有个大概的了解,然后着手在电脑上去实践,很多人拿着题目不断在刷,其实没那个必要,在理论掌握的差不多的情况下,把对应的课后题目在电脑上能实践好就够了,如此反复的去做,不厌其烦的去做。
对于初学者来说,从零基础入门到成为一个合格的Java开发工程师,是一个枯燥且具有挑战的过程,如果可以来到霍营北大青鸟,我们为你量身定做了免费试学的Java实验班。