<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    配置Jetty的JNDI綁定

    Posted on 2008-04-27 13:13 wind_miao 閱讀(2225) 評論(2)  編輯  收藏 所屬分類: J2EE

    配置 JNDI綁定

    一、 此處綁定的數據源是以 DBCP 為實現。首先必須將數據庫驅動(這里用了MYSQL數據庫)和DBCP所需要的 Jar 包復制到 Jetty 根目錄的 lib 目錄下。DBCP主要需要以下3個文件:
    Commons-dbcp.jar
    Commons-pool.jar
    Commons-collections.jar
    二、 在Jetty根目錄的contexts下建立wind.xml(該文件名為了增加可讀性最好與項目名相同)
    wind.xml的內容如下:
    --------------------------------------------------------------------------------------------------------------------------
    <?xml version="1.0"  encoding="GB2312"?>
    <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
    <!-- 配置一個WEB應用 -->
    <Configure class="org.mortbay.jetty.webapp.WebAppContext">
      <Set name="contextPath">/wind</Set>
      <Set name="resourceBase">E:/StartPortableApps/jspTest</Set>

    <!-- 配置第一個環境變量 -->
    <New id="woggle" class="org.mortbay.jetty.plus.naming.EnvEntry">
      <Arg>woggle</Arg>
      <Arg type="java.lang.Integer">4000</Arg>
    </New>

    <!-- 配置第二個環境變量 -->
    <New id="wiggle" class="org.mortbay.jetty.plus.naming.EnvEntry">
      <Arg>wiggle</Arg>
      <Arg type="boolean">true</Arg>
    </New>

    <!-- 創建數據源 -->
    <New id="ds" class="org.apache.commons.dbcp.BasicDataSource">
      <Set name="driverClassName">com.mysql.jdbc.Driver</Set>
      <Set name="url">jdbc:mysql://localhost:3306/test</Set>
      <Set name="username">root</Set>
      <Set name="password">wind</Set>
      <Set name="maxActive" type="int">100</Set>
      <Set name="maxIdle" type="int">30</Set>
      <Set name="maxWait" type="int">1000</Set>
      <Set name="defaultAutoCommit" type="boolean">true</Set>
      <Set name="removeAbandoned" type="boolean">true</Set>
      <Set name="removeAbandonedTimeout" type="int">60</Set>
      <Set name="logAbandoned" type="boolean">true</Set>
    </New>

    <!-- 將實際的數據源綁定到 jdbc/mydatasource 這個 JNDI 名 -->
    <New id="mydatasource" class="org.mortbay.jetty.plus.naming.Resource">
      <Arg>jdbc/mydatasource</Arg>
      <Arg><Ref id="ds"/></Arg>
    </New>
    </Configure>
    --------------------------------------------------------------------------------------------------------------------------
    三、 下面是測試該JNDI的jsp和servlet。
    (1)在E:/StartPortableApps/jspTest(wind.xml設置的虛擬目錄的絕對路徑)下創建:index.jsp
    <%@ page language="java" pageEncoding="GB2312"%>
    <%
     String path = request.getContextPath();
     String basePath = request.getScheme() + "://"
       + request.getServerName() + ":" + request.getServerPort()
       + path + "/";
    %>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
     <head>
      <base href="<%=basePath%>">

      <title>My JSP 'index.jsp' starting page</title>

      <meta http-equiv="pragma" content="no-cache">
      <meta http-equiv="cache-control" content="no-cache">
      <meta http-equiv="expires" content="0">
      <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
      <meta http-equiv="description" content="This is my page">
      <!--
     <link rel="stylesheet" type="text/css" href="styles.css">
     -->

     </head>

     <body>
      <form method="post" action="aa" name="f1"><p>&nbsp;<input type="submit" value="test" name="button1"></p></form>
     </body>
    </html>
    (2)TestServlet.java內容如下:
    package lee;

    import java.io.IOException;
    import java.io.PrintStream;
    import java.sql.*;
    import javax.naming.InitialContext;
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletException;
    import javax.servlet.http.*;
    import javax.sql.DataSource;

    public class TestServlet extends HttpServlet
    {
        InitialContext ic;

        public TestServlet()
        {
        }

        public void destroy()
        {
            super.destroy();
        }

        protected void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException
        {
            PrintStream out = new PrintStream(response.getOutputStream());
            try
            {
                out.println(ic.lookup("wiggle"));
                out.println(ic.lookup("woggle"));
                DataSource ds = (DataSource)ic.lookup("jdbc/mydatasource");
                Connection conn = ds.getConnection();
                Statement stmt = conn.createStatement();
                for(ResultSet rs = stmt.executeQuery("select * from echo_message"); rs.next(); out.println(rs.getString(2)));
            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
        }

        public void init(ServletConfig config)
            throws ServletException
        {
            super.init(config);
            try
            {
                ic = new InitialContext();
            }
            catch(Exception e)
            {
                throw new ServletException(e);
            }
        }
    }
    (3)web.xml內容如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4"
     xmlns="http://java.sun.com/xml/ns/j2ee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      <servlet>
        <description>This is the description of my J2EE component</description>
        <display-name>This is the display name of my J2EE component</display-name>
        <servlet-name>TestServlet</servlet-name>
        <servlet-class>lee.TestServlet</servlet-class>
      </servlet>

      <servlet-mapping>
        <servlet-name>TestServlet</servlet-name>
        <url-pattern>/aa</url-pattern>
      </servlet-mapping>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    </web-app>

    Feedback

    # re: 配置Jetty的JNDI綁定[未登錄]  回復  更多評論   

    2010-04-27 16:34 by xx
    兄弟,太感謝了,謝謝

    # re: 配置Jetty的JNDI綁定  回復  更多評論   

    2014-06-24 10:26 by ARC-蜜蜂詞
    非常感謝了,我配了好幾天的jetty連接池,就沒有去綁定的問題,以后多交流下

    posts - 1, comments - 3, trackbacks - 0, articles - 7

    Copyright © wind_miao

    主站蜘蛛池模板: 美女一级毛片免费观看| 亚洲视频在线观看免费| 牛牛在线精品观看免费正| 免费人成黄页在线观看日本| 无码国产精品一区二区免费I6| 免费人成网站在线高清| 亚洲黑人嫩小videos| 一级成人a做片免费| 99在线视频免费观看视频| 亚洲国产成人精品电影| 99视频在线观看免费| 国产91久久久久久久免费| 亚洲第一二三四区| 三年片免费观看大全国语| 啦啦啦在线免费视频| 亚洲综合一区二区国产精品| eeuss草民免费| 国产jizzjizz免费看jizz| 羞羞视频网站免费入口| 亚洲一区二区三区偷拍女厕| 国产成人va亚洲电影| 搡女人真爽免费视频大全| 亚洲精品国产手机| 成熟女人特级毛片www免费| 美女免费精品高清毛片在线视| 亚洲中文字幕无码日韩| 国产精品九九久久免费视频| 亚洲第一极品精品无码久久| 中文字幕乱码系列免费| 久久精品国产亚洲AV无码娇色| 欧洲乱码伦视频免费| 亚洲av乱码一区二区三区香蕉| 久久免费精彩视频| 亚洲动漫精品无码av天堂| 特级做A爰片毛片免费69| 黄页网站在线观看免费| 亚洲国产精品无码久久SM| 免费a级毛片高清视频不卡| 亚洲人av高清无码| 在线观看成人免费视频| A国产一区二区免费入口|