日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

在Tomcat中配置數據源

系統 1999 0

使用工具:TOMCAT 7.0.52、IntelliJ IDEA 13.0.2、JSF 2.0+、SqlServer、jtds-1.2.5.jar

搞了好久都沒成功,開始使用注解引入DataSource,可是一直不成功,后來使用lookup方式,寫了一個本地主類(包含main方法)測試,也是不成功,艸,都快崩潰了,后來經過各種測試,終于搞定了,本地主類測試是無效的,必須通過web訪問才能成功,真尼瑪蛋疼。注解估計跟版本有關,沒精力去弄了。

以下是配置步驟(相應的路徑換成自己的):

1、把jtds-1.2.5.jar放到Tomcat目錄里的lib目錄下。如:D:\IntelliJ\tomcat7\lib

2、在D:\IntelliJ\tomcat7\conf目錄里的context.xml文件里加上如下代碼:

      
        1
      
      
        <
      
      
        Context
      
      
        >
      
      
        2
      
      
        <
      
      
        WatchedResource
      
      
        >
      
      WEB-INF/web.xml
      
        </
      
      
        WatchedResource
      
      
        >
      
      
        3
      
      
        <
      
      
        Resource 
      
      
        name
      
      
        ="jdbc/sqlserver"
      
      
         auth
      
      
        ="Container"
      
      
         type
      
      
        ="javax.sql.DataSource"
      
      
        4
      
      
                      driverClassName
      
      
        ="net.sourceforge.jtds.jdbc.Driver"
      
      
        5
      
      
                      url
      
      
        ="jdbc:jtds:sqlserver://localhost:1433/yourDatabaseName"
      
      
        6
      
      
                      username
      
      
        ="username"
      
      
         password
      
      
        ="password"
      
      
         maxActive
      
      
        ="100"
      
      
          maxIdle
      
      
        ="30"
      
      
        />
      
      
        7
      
      
        </
      
      
        Context
      
      
        >
      
    

3、在你項目里的web.xml文件里加入如下內容:

      
        1
      
      
        <!--
      
      
        配置數據源
      
      
        -->
      
      
        2
      
      
        <
      
      
        resource-ref
      
      
        >
      
      
        3
      
      
        <
      
      
        description
      
      
        >
      
      Sqlserver Datasource
      
        </
      
      
        description
      
      
        >
      
      
        4
      
      
        <
      
      
        res-ref-name
      
      
        >
      
      jdbc/sqlserver
      
        </
      
      
        res-ref-name
      
      
        >
      
      
        5
      
      
        <
      
      
        res-type
      
      
        >
      
      javax.sql.DataSource
      
        </
      
      
        res-type
      
      
        >
      
      
        6
      
      
        <
      
      
        res-auth
      
      
        >
      
      Container
      
        </
      
      
        res-auth
      
      
        >
      
      
        7
      
      
        </
      
      
        resource-ref
      
      
        >
      
    

4、在你的代碼里引用數據源:

      
         1
      
      
        private
      
      
         DataSource ds;


      
      
         2
      
      
         3
      
      
        public
      
      
         LoginBean() {


      
      
         4
      
      
         5
      
      
        try
      
      
         {


      
      
         6
      
      
        //
      
      
         初始化查找命名空間
      
      
         7
      
                   Context ctx = 
      
        new
      
      
         InitialContext();


      
      
         8
      
                   ds = (DataSource)ctx.lookup("java:comp/env/jdbc/sqlserver"
      
        ) ;


      
      
         9
      
               } 
      
        catch
      
      
         (NamingException e) {


      
      
        10
      
                   System.out.println("使用lookup找不到數據源."
      
        );


      
      
        11
      
      
                    e.printStackTrace();


      
      
        12
      
      
                }


      
      
        13
      
      
        14
      
           }
    

5、測試test.jsp:

      <%@ page language="java" 
      
        import
      
      ="java.util.*" pageEncoding="utf-8" %>

<%@ page 
      
        import
      
      ="java.sql.*"%>

<%@ page 
      
        import
      
      ="javax.sql.*"%>

<%@ page 
      
        import
      
      ="javax.naming.*"%>

<%!

    
      
        final
      
       String JNDINAME = "java:comp/env/jdbc/sqlserver"
      
         ;


      
      %>

<%
      
        

    Connection conn 
      
      = 
      
        null
      
      
         ;

    
      
      
        try
      
      
        

    {

        
      
      
        //
      
      
         初始化查找命名空間
      
      

        Context ctx = 
      
        new
      
      
         InitialContext() ;

        
      
      
        //
      
      
         找到DataSource
      
      

        DataSource ds =
      
         (DataSource)ctx.lookup(JNDINAME) ;

        conn 
      
      =
      
         ds.getConnection() ;

        String sql
      
      ="select passwd,logincount from credential where username=?"
      
        ;

        PreparedStatement pwdQuery
      
      =
      
        conn.prepareStatement(sql);

        pwdQuery.setString(
      
      1,"admin"
      
        );

        ResultSet result
      
      =
      
          pwdQuery.executeQuery();

        
      
      
        if
      
      (!
      
        result.next()){

             
      
      
        return
      
      
        ;

         } 

        System.out.println(result.getString(
      
      "passwd"
      
        )) ;

    }

    
      
      
        catch
      
      
        (Exception e)

    {

        System.out.println(e) ;

    }


      
      %>

<%=conn%>

<%

    
      
        //
      
      
         將連接重新放回到池中
      
      
            conn.close() ;


      
      %>
    

?

只要能輸出數據庫的連接信息就沒問題了。

?

如果注解不能使用,就不要糾結了,換種方式。

?

在Tomcat中配置數據源


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 莱阳市| 和平区| 德庆县| 泸西县| 安阳市| 肇源县| 康平县| 龙南县| 富阳市| 股票| 涡阳县| 泾源县| 孙吴县| 新泰市| 淮北市| 泾阳县| 邵武市| 冀州市| 天全县| 西青区| 荃湾区| 孟津县| 石泉县| 祁阳县| 东乡族自治县| 都安| 肥西县| 潼关县| 南溪县| 陇川县| 汕尾市| 江都市| 平定县| 大姚县| 黄石市| 府谷县| 武城县| 临漳县| 嵩明县| 龙游县| 双流县|