gembin

          OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

          HBase, Hadoop, ZooKeeper, Cassandra

          Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

          There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

          About Me

           

          在GlassFish中配置數(shù)據(jù)源連接池

          告訴你如何在你的服務(wù)器(比如:GlassFishTomcat)中配置一個(gè)數(shù)據(jù)源,并如何在Web應(yīng)用程序中訪問(wèn)數(shù)據(jù)源。

          GlassFish有一個(gè)基于web的管理接口,你可以通過(guò)來(lái)配置數(shù)據(jù)源,把你的瀏覽器指向http://localhost:4848,然后登錄它,默認(rèn)的用戶名和密碼是aminadminadmin

           

          首先,配置一個(gè)數(shù)據(jù)庫(kù)連接池。選擇“連接池”> “新建”,進(jìn)行常規(guī)配置:

          在下一步中,指定數(shù)據(jù)庫(kù)連接的屬性:

              接著,你需要配置一個(gè)JDBC數(shù)據(jù)源,并命名為jdbc/xgtimes:


          最后,你還需要把數(shù)據(jù)庫(kù)驅(qū)動(dòng)類拷貝到服務(wù)器的域目錄的lib/ext目錄下。

              在應(yīng)用程序中,我們可以通過(guò)如下方法使用連接池:

              view plaincopy to clipboardprint?
              Public void loginBean() {

                       try {

                           Context ctx = new InitialContext();

                           DataSource ds = (DataSource) ctx.lookup("jdbc/xgtimes");

                           Connection conn = ds.getConnection();

                        } catch (NamingException ex) {

                           ex.printStackTrace();

                       }

              }

              Public void loginBean() {

                       try {

                           Context ctx = new InitialContext();

                           DataSource ds = (DataSource) ctx.lookup("jdbc/xgtimes");

                           Connection conn = ds.getConnection();

                        } catch (NamingException ex) {

                           ex.printStackTrace();

                       }

              }

           

              Java EE 5中要求將資源在web.xml中進(jìn)行聲明,對(duì)于一個(gè)數(shù)據(jù)源,可以在web.xml中這樣配置:


              resource-ref>       <res-ref-name>jdbc/mydb</res-ref-name>
                 <res-type>javax.sql.DataSource</res-type>
                 <res-auth>Container</res-auth>
              </resource-ref>
              <resource-ref>

                   <res-ref-name>jdbc/mydb</res-ref-name>

                   <res-type>javax.sql.DataSource</res-type>

                   <res-auth>Container</res-auth>

                </resource-ref>
              注意:jdbc/xgtimes用于數(shù)據(jù)源的名稱,有兩種查詢方式,上面我們使用ctx.lookup,另外一種最簡(jiǎn)潔的方法就是使用資源注入,你在受管bean中聲明一個(gè)域,然后象如下那樣使用注釋來(lái)標(biāo)記它:
              view plaincopy to clipboardprint?@Resource(name="jdbc/mydb")     private DataSource source;    @Resource(name="jdbc/mydb")

                private DataSource source;
              當(dāng)服務(wù)器加載受管bean時(shí),域就會(huì)自動(dòng)初始化。這種特性僅限于支持JavaEE5標(biāo)準(zhǔn)的服務(wù)器

          posted on 2009-02-19 11:15 gembin 閱讀(1076) 評(píng)論(0)  編輯  收藏 所屬分類: 其他

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(6)

          隨筆分類(440)

          隨筆檔案(378)

          文章檔案(6)

          新聞檔案(1)

          相冊(cè)

          收藏夾(9)

          Adobe

          Android

          AS3

          Blog-Links

          Build

          Design Pattern

          Eclipse

          Favorite Links

          Flickr

          Game Dev

          HBase

          Identity Management

          IT resources

          JEE

          Language

          OpenID

          OSGi

          SOA

          Version Control

          最新隨筆

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          free counters
          主站蜘蛛池模板: 南木林县| 贡嘎县| 青岛市| 永清县| 铜川市| 和平县| 葵青区| 周口市| 固原市| 太仆寺旗| 秦安县| 忻州市| 漳州市| 长汀县| 宁南县| 宝鸡市| 藁城市| 阿瓦提县| 浦江县| 历史| 五原县| 新源县| 永寿县| 孟津县| 乳山市| 迁安市| 酒泉市| 瑞丽市| 福清市| 故城县| 电白县| 慈溪市| 彰化县| 仪征市| 定边县| 奈曼旗| 丰城市| 资中县| 玛多县| 阜平县| 大厂|