仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 682|回复: 12
打印 上一主题 下一主题

[学习教程] 来看JDBC 2.0中的初级数据范例

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:28:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
还得说上一点,就java本质而言,是面相对象的,但是你有没有发现,java也不全是,比如说基本类型,int,那他就是整型而不是对象,转换类型是还得借助包装类。
JDBC2.0中供应了对SQL3尺度中引进的新的数据范例,如Blob(binarylargeobject)、Clob(characterlargeobject)、Array对象、REF(对象参考,objectreference)和UDT(用户界说数据范例,user-defineddatatype)等的撑持。这些新的数据范例分离在一同,使得数据库计划职员能够创立更丰厚的形式,并简化了对庞大数据的处置和耐久化。
比方,我们要向tbl_User表中拔出用户的照片,这时候就能够利用流将Blob对象导进数据库中:
Stringsql="intsertintotbl_Uservalues(?,?)";
PreparedStatementpstmt=con.prepareStatement(sql);
Filefile=newFile("C:/images/photo.jpg");
FileInputStreamfis=newFileInputStream(file);
pstmt.setString(1,"John");
pstmt.setBinaryStream(2,fis,(int)file.length());
pstmt.executeUpdate();
pstmt.close();
fis.close();
个中SQL语句的第一个参数为用户名,第二个参数为photo,它是一个Blob型对象。如许在将数据拔出数据库以后,我们就能够用程序猎取该数据了:
Stringsql="selectphotofromtbl_Userwhereusername=?";
PreparedStatementpstmt=con.prepareStatement(selectSQL);
pstmt.setString(1,"John");
ResultSetrs=pstmt.executeQuery();
rs.next();
Blobblob=rs.getBlob("photo");
ImageIconicon=newImageIcon(blob.getBytes(1,(int)blob.length()));
JLabelphoto=newJLabel(icon);
rs.close();
pstmt.close();
相似地,我们也能够对Clob对象举行响应的操纵。上面是一个从ASCII流中间接将Clob对象拔出数据库中的例子:
Stringsql="insertintotbl_Articlesvalues(?,?)";
PreparedStatementpstmt=con.prepareStatement(sql);
Filefile=newFile("C:/data/news.txt");
FileInputStreamfis=newFileInputStream(file);
pstmt.setString(1,"IraqWar");
pstmt.setAsciiStream(2,fis,(int)file.length());
pstmt.executeUpdate();
pstmt.close();
fis.close();
一样,我们也能够用相似的办法将Clob对象从数据库中掏出:
Stringsql="selectcontentfromtbl_Articleswheretitle=?";
PreparedStatementpstmt=con.prepareStatement(sql);
pstmt.setString(1,"IraqWar");
ResultSetrs=pstmt.executeQuery();
rs.next();
Clobclob=rs.getClob("content");
InputStreamReaderin=newInputStreamReader(clob.getAsciiStream());
JTextAreatext=newJTextArea(readString(in));
rs.close();
pstmt.close();

C++编译的是本地码,优点是启动快,而且可以精确控制资源因此可以开发很高效的程序.缺点是编程麻烦,而且容易留下安全隐患.跨平台靠源代码在各个平台间分别编译(一处编写到处编译)
变相怪杰 该用户已被删除
沙发
发表于 2015-1-21 07:40:45 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
小女巫 该用户已被删除
板凳
发表于 2015-1-27 07:32:23 来自手机 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-5 02:14:14 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
金色的骷髅 该用户已被删除
5#
发表于 2015-2-8 08:26:30 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-12 20:11:12 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
爱飞 该用户已被删除
7#
发表于 2015-3-3 06:28:51 | 只看该作者
是一种为 Internet发展的计算机语言
小魔女 该用户已被删除
8#
发表于 2015-3-7 20:03:26 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
精灵巫婆 该用户已被删除
9#
发表于 2015-3-10 04:05:40 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
若相依 该用户已被删除
10#
发表于 2015-3-11 15:45:56 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
再现理想 该用户已被删除
11#
发表于 2015-3-12 23:36:24 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
简单生活 该用户已被删除
12#
发表于 2015-3-20 05:23:44 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
兰色精灵 该用户已被删除
13#
发表于 2015-4-7 05:59:50 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 19:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表