`
icsnowing
  • 浏览: 40399 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

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"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page import="java.util.*" %>
<%@ page session="false" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title></title>
</head>
<body>
<%
out.print("My test begins.<br>");
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)+"<br>");
  }
  stmt.close();
  stmt = null;
  conn.close();
  conn = null;
  out.print("My test ends.<br>");
}
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!");
  }
}
%>
</body>
</html>

    8. 设置web.xml
    <resource-ref>
      <description>DB Connection</description>
      <res-ref-name>MySql_DS</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
    </resource-ref>

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

    OK。

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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics