仓酷云

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

[学习教程] JAVA网页设计数据库毗连缓冲池

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:38:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
IDE是好。java中的IDE更是百花齐放,你用jbuilder能说jbuilder赶不上vs吗?用eclipse,netbeans也很舒服啊。我就不明白“稍微差一些”那一些是从哪里差来的。数据|数据库|数据库毗连一个数据库缓冲池指的是缓存于内存空间中的数据库物理毗连,这些数据库毗连能够被反复利用。数据库缓冲池关于进步Java数据库使用程序的功能非常主要,特别是当这个Java数据库使用程序运转于两头层服务器情况时。

数据缓冲池存在于两头层服务器情况傍边,能够被分歧的Java使用程序所挪用。javax.sql.RowSet包增加了对缓冲数据源的撑持,便可以将缓冲池缓冲的数据库毗连看做是一个是实其实在的数据源服务来利用。RowSet包供应了好几个接口用于处置数据库缓冲池,次要的接口有:
1、DataSource接口:DataSource接口的实例对象代表了存在于两头层服务器中的缓冲数据源服务。利用它能够返还数据库缓冲池中现存的数据库毗连,DataSource接口的实例对象实践上是某个JNDI服务的供应者,在利用它之前,该JNDI服务对象必需先在两头层服务器情况中注册,而且和某个服务名绑定在一同,然后它才干被其余Java使用程序挪用。
2、ConnectionPoolDataSource接口:该接口能够用于创立一个被缓冲于缓冲池的数据库物理毗连,它有大概会被DataSource接口的实例对象挪用。
3、PooledConnection接口:该接口代表被缓冲的数据库毗连,它界说了一个getConnection()办法利用这个办法能够前往java.sql.Connection接口的实例对象。
怎样利用RowSet包界说的类和接口操纵数据库缓冲池,上面的JSP代码段供应了一个复杂的不完全的例子



<%

Contextctx=newInitialContext();

DataSourceds=(DataSource)ctx.lookup(“jdbc/EmployeeDB”);

//FirstgetaConnection.Connectionpoolingisdone

//internallybytheDataSourceobject.

Connectioncon=ds.getConnection(jdbc/webDatabase”"sa”“");

//Doalltheworkasasingletransaction(optional).

con.setAutoCommit(false);

//Theactualwork(queriesandupdates)wouldgohere.

//WorkisdoneusingstandardJDBCcodeasdefinedinthe

//restoftheJDBCAPI.

//Committhetransaction.

con.commit();

//Closetheconnection.Thisreturnstheunderlyingphysical

//databaseconnectiontothepool.

con.close();

%>

下面的JSP代码段的运转机理以下

????1、起首程序代码猎取初始化的JNDI情况而且挪用Context.lookup()办法从JNDI服务供应者那边获一个DataSource对象

????2、两头层JNDI服务供应者前往一个DataSource对象给以后的Java使用程序这个DataSource对象代表了两头层服务上现存的缓冲数据源

????3、使用程序挪用DataSource对象的getConnection()办法

????4、当DataSource对象的getConnection()办法被挪用时两头层服务器将查询数据库毗连缓冲池中有无PooledConnection接口的实例对象这个PooledConnection对象将被用于与数据库创建物理上的数据库毗连

????5、假如在缓冲池中射中了一个PooledCoonection对象那末毗连缓冲池将复杂地更新外部的缓冲毗连行列并将该PooledConnection对象前往假如在缓冲池内没有找到现成的PooledConnection对象那末ConnectionPoolDataSource接口将会被用来发生一个新的PooledConnection对象并将它前往以便使用程序利用

????6两头层服务器挪用PooledConnection对象的getConnection()办法以便返还一个java.sql.Connection对象给以后的Java使用程序

????7、傍边间层服务器挪用PooledConnection对象的getConnection()办法时JDBC数据库驱动程序将会创立一个Connection对象而且把它前往两头层服务器

????8、两头层服务器将Connection对象前往给使用程序Java使用程序能够以为这个Connection对象是一个一般的JDBCConnection对象利用它能够和数据库创建现实上的毗连与数据库引擎发生交互操纵

????9、当使用程序不必要利用Connection对象时,能够挪用Connection接口的close()办法。请注重这类情形下close()办法并没有封闭现实上的数据库毗连,仅仅是开释了被使用程序占用的数据库毗连,并将它还给数据库毗连缓冲池,数据库毗连缓冲池会主动将这个数据库毗连交给哀求行列中下一个的使用程序利用。


C#跟java类似,但是在跨平台方面理论上可以跨平台,实际上应用不大,执行性能优于java,跟C++基本一致,但是启动速度还是慢.代码安全,但容易性能陷阱.
小妖女 该用户已被删除
沙发
发表于 2015-1-21 11:49:41 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-25 12:15:52 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
地板
发表于 2015-1-29 16:44:54 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
飘飘悠悠 该用户已被删除
5#
发表于 2015-2-6 02:46:02 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
再见西城 该用户已被删除
6#
发表于 2015-2-6 10:06:13 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
愤怒的大鸟 该用户已被删除
7#
 楼主| 发表于 2015-2-9 10:20:43 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
乐观 该用户已被删除
8#
发表于 2015-2-27 05:38:17 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
山那边是海 该用户已被删除
9#
发表于 2015-3-8 22:30:35 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
分手快乐 该用户已被删除
10#
发表于 2015-3-16 15:00:02 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
精灵巫婆 该用户已被删除
11#
发表于 2015-3-21 23:40:37 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
莫相离 该用户已被删除
12#
发表于 2015-3-30 15:49:09 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
深爱那片海 该用户已被删除
13#
发表于 2015-4-8 08:48:14 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
金色的骷髅 该用户已被删除
14#
发表于 2015-4-12 07:12:34 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
透明 该用户已被删除
15#
发表于 2015-4-21 15:52:56 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
小魔女 该用户已被删除
16#
发表于 2015-4-21 20:54:25 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
蒙在股里 该用户已被删除
17#
发表于 2015-4-28 06:49:14 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
老尸 该用户已被删除
18#
发表于 2015-5-1 06:09:07 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
海妖 该用户已被删除
19#
发表于 2015-5-10 03:39:27 | 只看该作者
是一种使用者不需花费很多时间学习的语言
柔情似水 该用户已被删除
20#
发表于 2015-6-28 20:21:03 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 20:59

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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