SailFin中设置MySQL

阅读更多
目的:部署到SailFin平台上的Web工程调用MySQL数据库
    步骤:
    1. 安装MySQL数据库,下载及相关可参考:http://www.mysql.cn/
    2. 将MySql的JDBC驱动拷贝到GlassFish安装目录的lib文件夹下
        mysql-connector-java-5.1.6-bin.jar
    3. 创建连接池。
       启动SailFin服务器,进入管理控制台。在左侧点击“Resources”选项---"JDBC"---"Connection Pools",点击“new”按钮。
       Name: MySql_Pool
       Resource Type: javax.sql.DataSource
       Database Vendor: MySQL

       点击“下一步”进入下一设置界面,设置:
       Datasource Classname: com.mysql.jdbc.jdbc2.optional.MysqlDataSource

       Additional Properties,主要设置以下几项:
       * DatabaseName:写入你的数据库名称
       * User:root
       * Password:
       * ServerName:数据库所在的主机IP
       * url: jdbc:mysql://localhost:3306/DatabaseName (这项很重要。且程序中用到某个数据库中的某些表,那么在MySQL客户端建立的数据库的名字必须为此处所设置的DatabaseName)
   
       设置好点击"save"
    4. 选中这个“连接池”在“general”选项卡中点击“Ping”按钮进行测试。测试通过后点击"JDBC Resources"开始创建数据源。
    5. 点击"new"按钮
       * JDNI Name: MySql_DS
       * Pool Name: MySql_Pool(就是刚才配置的那个)
      
       下边可以进行配置使用默认的就OK了!点击"save"

    6. 打开Eclipse,编写一个工程测试数据库连接是否成功。首先,把要用到的包导入项目中:
       mysql-connector-java-3.1.12-bin.jar-------------MySql驱动
       appserv-rt.jar-----------所在地GlassFish安装目录的lib文件夹下
       appserv-admin.jar-------------所在地GlassFish安装目录的lib文件夹下
       imqjmsra.jar----------所在地GlassFish安装目录的lib\install\applications\jmsra

    7. 编写test.jsp,如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page import="java.util.*" %>
<%@ page session="false" %>






<%
out.print("My test begins.
");
Context ctx = null;
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.enterprise.naming.SerialInitContextFactory");
ht.put(Context.PROVIDER_URL,"localhost:8080");
Statement stmt = null;
Connection conn = null;
ResultSet rs = null;
try {
  ctx = new InitialContext(ht);
  DataSource ds = (DataSource)ctx.lookup("MySql_DS");
  conn = ds.getConnection();
  stmt = conn.createStatement();
  String strSql = "select * from user";
  rs = stmt.executeQuery(strSql);
  while(rs.next())
  {
   out.println(rs.getString(2)+"
");
  }
  stmt.close();
  stmt = null;
  conn.close();
  conn = null;
  out.print("My test ends.
");
}
catch(Exception e) {
  out.println("Error!!");
}
finally {
  try{
   ctx.close();
  }
  catch(Exception e) {
   out.println("ctx ERR!");
  }
  try {
   if(rs != null)
    rs.close();
  }
  catch(Exception e) {
   out.println("rs ERR!");
  }
  try {
   if(stmt != null)
    stmt.close();
  }
  catch(Exception e) {
   out.println("stmt ERR!");
  }
  try {
   if(conn != null)
    conn.close();
  }
  catch(Exception e) {
   out.println("conn ERR!");
  }
}
%>



    8. 设置web.xml
   
      DB Connection
      MySql_DS
      javax.sql.DataSource
      Container
   


    9. 打包成.war文件,部署到SailFin。浏览器中输入http://127.0.0.1:8080/DBCP/test.jsp,即可看到结果。

    OK。

    参考:http://hi.baidu.com/wtltsdwqt/blog/item/e14a9f13bb6ecc856538db14.html

你可能感兴趣的:(MySQL,Glassfish,JDBC,SQL,JSP)