使用JBoss配置MySql的数据源

JBoss 版本:4.x
MySql 版本:5.x
第一步,去MySQL的官网下一个JDBC驱动(点这里下载)。然后把解压出来的文件mysql-connector-java-5.0.7-bin.jar拷贝到%JBoss%/server/default/lib里。最好再把CLASSPATH里加上mysql-connector-java-5.0.7-bin.jar的路径。
第二步,拷贝%JBoss%/docs/examples/jca/mysql-ds.xml 到%JBoss% /server/default/deploy文件夹里。然后修改一下几行:
< jndi-name > MySqlDS </ jndi-name > <!-- 这里填你想要JNDI名字 -->
< connection-url > jdbc:mysql://localhost:3306/mysql </ connection-url > <!-- 这里我用mysql自带的数据库做测试 -->
< driver-class > com.mysql.jdbc.Driver </ driver-class > <!-- 这个不用改 -->
< user-name > root </ user-name > <!-- 这里填数据库的用户名 -->
< password > 123456 </ password > <!-- 这里填数据库的密码 -->
第三步,修改%JBoss%/server/default/conf里的standardjbosscmp-jdbc.xml文件。这里和网上其他教程不一样的是只用修改<datasource>java:/MySqlDS</datasource>就可以了。注意这里的MySqlDS就是在第二步中mysql-ds.xml中配置的JNDI名字。那个<datasource-mapping>就不用改了。
第四步,修改%JBoss%/server/default/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" > vincent </ module-option >  
< module-option  name  ="managedConnectionFactoryName" >  
jboss.jca:service=LocalTxCM,name=MySqlDS 
</ module-option >  
</ login-module >  
</ authentication >  
</ application-policy >
编一个名为test.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 >

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值