转载自 http://www.24xuexi.com/w/2011-06-03/91169.html
JBoss 版本:Jboss-4.0.5.GA
MySql 版本:Mysql-5.0.44
第一步,去MySQL的官网下一个JDBC驱动(点这里下载)然后把解压出来的文件mysql-connector-java-5.0.8-bin.jar拷贝到JBOSS_HOME/server/all/lib里。最好再把CLASSPATH里加上mysql-connector-java-5.0.8-bin.jar的路径。
第二步,拷贝JBOSS_HOME/docs/examples/jca/mysql-ds.xml 到JBOSS_HOME /server/all/deploy文件夹里。然后修改一下几行:
????????<jndi-name>MySqlDS</jndi-name><!--这里填你想要JNDI名字-->
???????? <connection-url>jdbc:mysql://localhost:3306/test</connection-url><!--这里我用mysql自带的数据库做测试-->
???????? <driver-class>com.mysql.jdbc.Driver</driver-class>?????????????? <!--这个不用改-->
????????<user-name>root</user-name>?????????????<!--这里填数据库的用户名-->
???????? <password>123456</password>?????????<!--这里填数据库的密码-->
第三步,修改JBOSS_HOME/server/all/conf里的standardjbosscmp-jdbc.xml文件。这里和网上其他教程不一样的是只用修改<datasource>java:/MySqlDS</datasource>就可以了。注意这里的MySqlDS就是在第二步中mysql-ds.xml中配置的JNDI名字。那个<datasource-mapping>就不用改了。
第四步,修改JBOSS_HOME/server/all/conf里的login-config.xml文件。在文件的最后一句</policy>的前面加上一下代码:
????<!--MySQL Data-Source Settings-->
???? <application-policy name = "MySqlDbRealm">
???????????????? <authentication>
???????????????? <login-module code =
???????????????? "org.jboss.resource.security.ConfiguredIdentityLoginModule"
???????????????? flag = "required">
???????????????? <module-option name ="principal">MySqlDS</module-option>
???????????????? <module-option name ="userName">root</module-option>
???????????????? <module-option name ="password">123456</module-option>
???????????????? <module-option name ="managedConnectionFactoryName">
???????????????? jboss.jca:service=LocalTxCM,name=MySqlDS
???????????????? </module-option>
???????????????? </login-module>
???????????????? </authentication>
???????? </application-policy>
编一个名为index.jsp的JSP文件进行测试:
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.DataSource" %>
<%@ page import="javax.naming.*"%>
<html>
<head>???
???? <title>测试JBoss/MySQL连接池</title>???
</head>
<body>
???? <%
???? out.print("测试JBoss/MySQL连接池<br/>");
???? try{
???? InitialContext initCtx = new InitialContext();
???? DataSource ds = (DataSource)initCtx.lookup("java:/MySqlDS");//注意这里,如果你的JNDI名字和我的不一样,那这个"MySqlDS"要改!
???? Connection conn = ds.getConnection();
???? out.print("MySQL connection pool runs perfectly!");
???? conn.close();
???? }
???? catch(Exception ex){
???? out.println("连接错误:");
???? out.print(ex.getMessage());
???? }
???? %>
</body>
</html>
启动JBOSS: nohup ./run.sh -c all>nohup.out &
将此脚本放在JBOSS_HOME/server/all/deploy/ROOT.war下,然后通过WEB访问:http://localhost:8080,配置正确,如下显示:
测试JBoss/MySQL连接池
MySQL connection pool runs perfectly!
JBoss 版本:Jboss-4.0.5.GA
MySql 版本:Mysql-5.0.44
第一步,去MySQL的官网下一个JDBC驱动(点这里下载)然后把解压出来的文件mysql-connector-java-5.0.8-bin.jar拷贝到JBOSS_HOME/server/all/lib里。最好再把CLASSPATH里加上mysql-connector-java-5.0.8-bin.jar的路径。
第二步,拷贝JBOSS_HOME/docs/examples/jca/mysql-ds.xml 到JBOSS_HOME /server/all/deploy文件夹里。然后修改一下几行:
????????<jndi-name>MySqlDS</jndi-name><!--这里填你想要JNDI名字-->
???????? <connection-url>jdbc:mysql://localhost:3306/test</connection-url><!--这里我用mysql自带的数据库做测试-->
???????? <driver-class>com.mysql.jdbc.Driver</driver-class>?????????????? <!--这个不用改-->
????????<user-name>root</user-name>?????????????<!--这里填数据库的用户名-->
???????? <password>123456</password>?????????<!--这里填数据库的密码-->
第三步,修改JBOSS_HOME/server/all/conf里的standardjbosscmp-jdbc.xml文件。这里和网上其他教程不一样的是只用修改<datasource>java:/MySqlDS</datasource>就可以了。注意这里的MySqlDS就是在第二步中mysql-ds.xml中配置的JNDI名字。那个<datasource-mapping>就不用改了。
第四步,修改JBOSS_HOME/server/all/conf里的login-config.xml文件。在文件的最后一句</policy>的前面加上一下代码:
????<!--MySQL Data-Source Settings-->
???? <application-policy name = "MySqlDbRealm">
???????????????? <authentication>
???????????????? <login-module code =
???????????????? "org.jboss.resource.security.ConfiguredIdentityLoginModule"
???????????????? flag = "required">
???????????????? <module-option name ="principal">MySqlDS</module-option>
???????????????? <module-option name ="userName">root</module-option>
???????????????? <module-option name ="password">123456</module-option>
???????????????? <module-option name ="managedConnectionFactoryName">
???????????????? jboss.jca:service=LocalTxCM,name=MySqlDS
???????????????? </module-option>
???????????????? </login-module>
???????????????? </authentication>
???????? </application-policy>
编一个名为index.jsp的JSP文件进行测试:
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.DataSource" %>
<%@ page import="javax.naming.*"%>
<html>
<head>???
???? <title>测试JBoss/MySQL连接池</title>???
</head>
<body>
???? <%
???? out.print("测试JBoss/MySQL连接池<br/>");
???? try{
???? InitialContext initCtx = new InitialContext();
???? DataSource ds = (DataSource)initCtx.lookup("java:/MySqlDS");//注意这里,如果你的JNDI名字和我的不一样,那这个"MySqlDS"要改!
???? Connection conn = ds.getConnection();
???? out.print("MySQL connection pool runs perfectly!");
???? conn.close();
???? }
???? catch(Exception ex){
???? out.println("连接错误:");
???? out.print(ex.getMessage());
???? }
???? %>
</body>
</html>
启动JBOSS: nohup ./run.sh -c all>nohup.out &
将此脚本放在JBOSS_HOME/server/all/deploy/ROOT.war下,然后通过WEB访问:http://localhost:8080,配置正确,如下显示:
测试JBoss/MySQL连接池
MySQL connection pool runs perfectly!