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)中配置一個數(shù)據(jù)源,并如何在Web應(yīng)用程序中訪問數(shù)據(jù)源。

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

           

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

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

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


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

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

              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)行聲明,對于一個數(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,另外一種最簡潔的方法就是使用資源注入,你在受管bean中聲明一個域,然后象如下那樣使用注釋來標(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í),域就會自動初始化。這種特性僅限于支持JavaEE5標(biāo)準(zhǔn)的服務(wù)器

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

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(6)

          隨筆分類(440)

          隨筆檔案(378)

          文章檔案(6)

          新聞檔案(1)

          相冊

          收藏夾(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

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          free counters
          主站蜘蛛池模板: 科尔| 同仁县| 开化县| 勃利县| 琼中| 仪陇县| 湾仔区| 遵义市| 雷山县| 博湖县| 拜泉县| 乌兰浩特市| 陕西省| 西畴县| 靖安县| 五常市| 望都县| 陵水| 博白县| 栾川县| 乌海市| 紫云| 兴宁市| 阿克苏市| 长春市| 久治县| 武穴市| 珲春市| 浦北县| 大化| 黑龙江省| 绥宁县| 鄯善县| 德庆县| 双峰县| 西充县| 万山特区| 大连市| 垦利县| 兰溪市| 通州市|