pilove310讲J2EE开发:1、连接数据库(JDBC篇)

          

      在J2EE的开发中,我们最开始的时候就是搭建工程,建立数据库的基本连接和框架。以及一些基本的公共类。

            首先就是数据库的连接类:(这里使用jdbc)

           

  1. import java.io.File;
  2. import javax.xml.parsers.DocumentBuilder;
  3. import javax.xml.parsers.DocumentBuilderFactory;
  4. import org.w3c.dom.Document;
  5. /**
  6.  * 
  7.  * <p>application name:{XML读取器}</p>
  8.  * <p>application describing:{用于读取数据库配置xml文件中的相关信息}</p>
  9.  * <p>Copyright:Copyright  *******</p>
  10.  * <p>company:</p>
  11.  * <p>time:{时间,如2008.11.16}</p>
  12.  * @author {}
  13.  * @version {v1.0}
  14.  */
  15. public class XMLReader
  16. {
  17.     File f = new File("WebRoot/WEB-INF/connect-config.xml");
  18. /**
  19.  * 
  20.  * {方法功能中文描述}
  21.  * 
  22.  * @return
  23.  * @see: {参照的方法}
  24.  * @author:{创建者中文名字}
  25.  */
  26.     public String geturl()
  27.     {
  28.         String url = null;
  29.         try
  30.         {
  31.             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  32.             DocumentBuilder builder = factory.newDocumentBuilder();
  33.             Document doc = builder.parse(f);
  34.             url = doc.getElementsByTagName("url").item(0).getFirstChild().getNodeValue().toString();
  35.         }
  36.         catch (Exception e)
  37.         {
  38.             e.printStackTrace();
  39.         }
  40.         return url;
  41.     }
  42. /**
  43.  * 
  44.  * {获得drive字符串}
  45.  * 
  46.  * @return
  47.  * @see: {参照的方法}
  48.  * @author:{创建者中文名字}
  49.  */
  50.     public String getDrivername()
  51.     {
  52.         String url = null;
  53.         try
  54.         {
  55.             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  56.             DocumentBuilder builder = factory.newDocumentBuilder();
  57.             Document doc = builder.parse(f);
  58.             url = doc.getElementsByTagName("drivername").item(0).getFirstChild().getNodeValue().toString();
  59.         }
  60.         catch (Exception e)
  61.         {
  62.             e.printStackTrace();
  63.         }
  64.         return url;
  65.     }
  66. /**
  67.  * 
  68.  * {方法功能中文描述}
  69.  * 
  70.  * @return
  71.  * @see: {参照的方法}
  72.  * @author:{创建者中文名字}
  73.  */
  74.     public String getUsername()
  75.     {
  76.         String url = null;
  77.         try
  78.         {
  79.             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  80.             DocumentBuilder builder = factory.newDocumentBuilder();
  81.             Document doc = builder.parse(f);
  82.             url = doc.getElementsByTagName("username").item(0).getFirstChild().getNodeValue().toString();
  83.         }
  84.         catch (Exception e)
  85.         {
  86.             e.printStackTrace();
  87.         }
  88.         return url;
  89.     }
  90. /**
  91.  * 
  92.  * {方法功能中文描述}
  93.  * 
  94.  * @return
  95.  * @see: {参照的方法}
  96.  * @author:{创建者中文名字}
  97.  */
  98.     public String getPwd()
  99.     {
  100.         String url = null;
  101.         try
  102.         {
  103.             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  104.             DocumentBuilder builder = factory.newDocumentBuilder();
  105.             Document doc = builder.parse(f);
  106.             url = doc.getElementsByTagName("password").item(0).getFirstChild().getNodeValue().toString();
  107.         }
  108.         catch (Exception e)
  109.         {
  110.             e.printStackTrace();
  111.         }
  112.         return url;
  113.     }
  114. }

                上面的类就是读取下面数据库连接文件的connect-config.xml的相关字段(上面代码的File f = new File("WebRoot/WEB-INF/connect-config.xml")部分

 

                

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <databases>
  3.        <drivername>oracle.jdbc.driver.OracleDriver</drivername>
  4.       <url>jdbc:oracle:thin:@10.10.21.120:1521:ORCL</url>
  5.       <username>music</username>
  6.       <password>music</password>
  7.       <poolmin>2</poolmin>
  8.       <poolmax>1000</poolmax>
  9.     
  10. </databases>

                下面就使用上面的工具进行JDBC的连接(得到Connection对象

  1. import java.sql.*;
  2. /**
  3.  * 
  4.  * <p>application name:{数据库获得Connection对象
  5. }</p>
  6.  * <p>application describing:{}</p>
  7.  * <p>Copyright:Copyright  2008 p>
  8.  * <p>company:</p>
  9.  * <p>time:{时间,如2008.11.20}</p>
  10.  * @author {}
  11.  * @version {v1.0}
  12.  */
  13. public class OperateDB
  14. {
  15.     XMLReader xr = new XMLReader();
  16.     String url = xr.geturl();
  17.     String pwd = xr.getPwd();
  18.     String drive = xr.getDrivername();
  19.     String name = xr.getUsername();
  20.     /**
  21.      * 
  22.      * {获得jdbc的Connection对象}
  23.      * 
  24.      * @return Connection对象
  25.      * @see: {参照的方法}
  26.      * @author:{}
  27.      */
  28.     public Connection getConnection()
  29.     {
  30.         Connection con = null;
  31.         try
  32.         {
  33.             Class.forName(drive);
  34.             con = DriverManager.getConnection(url, name, pwd);
  35.             if (con != null && con.isClosed() == false)
  36.             {
  37.                 System.out.println("数据库连接成功");
  38.             }
  39.         }
  40.         catch (Exception e)
  41.         {
  42.             System.out.println("发现异常:" + e.toString());
  43.            
  44.         }
  45.         return con;
  46.     }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值