为JBoss7配置MSSQL的DataSource

转载 2013年12月04日 22:55:42

前言

现在的网站,基本上都离不开数据库,而微软的SQL Server就是其中应用较广的数据库。如果要在JBoss7中使用MSSQL,就要配置DataSource,即数据源。至于如何配置,可以参考如下的内容。

 

准备JDBC

首先去MSSQL的官网下载最新的JDBC驱动程序,相关的链接如下所示:

http://www.microsoft.com/download/en/details.aspx?id=21599

 

创建组件(module)

建立目录

如果使用以前的JBoss版本,我们只需要简单地将JDBC的jar放到lib目录下就可以使用了,但是最新版的JBoss7.1,由于引入了组件(module)的概念之后,以前的这种方法就行不通了。为了引入JDBC,我们需要建立如下的目录结构:

[html] view plaincopy
  1. $JBOSS_HOME\modules\com\microsoft\sqlserver\jdbc\main  
[html] view plaincopy
  1. $JBOSS_HOME\modules\com\microsoft\sqlserver\jdbc\main  

建立目录之后,再将sqljdbc4.jar复制到main目录下面。

第一次看到JBoss的这种目录结构时,发现它跟Maven的类仓库目录结构很相似,都是组织得相当之好。不会象以前那样,将一大堆的jar放到一个目录中,令人看起来觉得相当之混乱。

 

建立module.xml

将jar放到指定的目录之后,还未结束,你还需要建立一个名为module.xml的文件,文件的内容如下所示:

[html] view plaincopy
  1. <module xmlns="urn:jboss:module:1.1" name="com.microsoft.sqlserver.jdbc">  
  2.     <resources>  
  3.         <resource-root path="sqljdbc4.jar"/>  
  4.     </resources>  
  5.     <dependencies>  
  6.         <module name="javax.api"/>  
  7.         <module name="javax.transaction.api"/>  
  8.         <module name="javax.servlet.api" optional="true"/>  
  9.     </dependencies>  
  10. </module>  

注册DataSource

配置的最后一步,就是要修改$JBOSS_HOME\standalone\configuration\standalone.xml文件,在datasources节点增加如下的内容:

[html] view plaincopy
  1. <datasource jndi-name="java:jboss/datasources/mssql" pool-name="mssql" enabled="true" use-java-context="true">  
  2.     <connection-url>jdbc:sqlserver://SqlServer:1433;DatabaseName=test</connection-url>  
  3.     <driver>mssqlxa</driver>  
  4.     <security>  
  5.         <user-name>sa</user-name>  
  6.         <password>sa</password>  
  7.     </security>  
  8. </datasource>  
  9. <drivers>  
  10.     <driver name="mssqlxa" module="com.microsoft.sqlserver.jdbc">  
  11.         <xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerXADataSource</xa-datasource-class>  
  12.     </driver>  
  13. </drivers>  

启动JBoss

当完成以上的配置后,你就可以尝试启动服务器,如果在log中没有出现什么错误信息,那你基本已经成功配置了MSSQL的DataSource。


使用DataSource

定义了DataSource之后,我们尝试在JSP页面中调用它,测试配置是否真正正确。

下面有一段很简单的JSP代码:

 

[html] view plaincopy
  1. <%@page contentType="text/html; charset=utf-8"%>  
  2.   <%@ page import="java.sql.*,  
  3.  javax.naming.*,  
  4.  javax.sql.*  
  5.  "%>  
  6.  <%  
  7.  Context ct = new InitialContext();  
  8.  DataSource ds = (DataSource)ct.lookup("java:jboss/datasources/mssql");       
  9.  Connection con=ds.getConnection();  
  10.  Statement sm=con.createStatement();  
  11.  ResultSet rs=sm.executeQuery("select * from User where UserID = '1'");  
  12.  while(rs.next())  
  13.  {  
  14.        Stringtitle=rs.getString("title");  
  15.        out.println(title +"<br>");  
  16. }  
  17. rs.close();  
  18. sm.close();  
  19. con.close();  
  20.  %>  
  21.     <html>  
  22.     <head>  
  23.     <meta http-equiv="Content-Type"content="text/html; charset=utf-8">  
  24.     <title>Example</title>  
  25.     </head>  
  26.     <body bgcolor="white">  
  27.     Hello World!  
  28.     </body>  
  29.     </html>  

将上面的代码保存为一个JSP文件,例如ds.jsp,然后把它放到war中就可以做测试了。

这个JSP文件的逻辑很简单,首先它会调用上面所定义的DataSource,然后查询数据库中的User表,最后在页面中显示查询的结果。如果你的配置没问题,你会在浏览器中看到显示的结果(要保证数据库中有User表,而且表中有UserID为1的记录)。

相关文章推荐

为JBoss7配置MSSQL的DataSource

前言 现在的网站,基本上都离不开数据库,而微软的SQL Server就是其中应用较广的数据库。如果要在JBoss7中使用MSSQL,就要配置DataSource,即数据源。至于如何配置,可以参考...

jboss 7 ejb jpa jms datasource配置

最近闲的蛋疼啊,有木有。闲也不能真闲着。不然咱就废了。那就学习吧。 jboss都出到7了。虽然生产环境暂时不会有太多人用,但是学习下总是好的。就是7的改变有点蛋疼。真不习惯。行了。直接上代码了。 ...

jboss7 datasource 当数据库重启自动重新获取连接

[html] view plaincopy span style="font-family: Arial, Helvetica, sans-serif; backgrou...

jboss7 datasource 当数据库重启自动重新获取连接

背景: jboss7 datasource, oracle  最近客户现场的测试环境连的数据库极不稳定,经常会出现需要重新启动数据库的情况, 但是一旦重启数据库 则会出现 提示  执行...
  • Ouvidia
  • Ouvidia
  • 2015年01月22日 18:44
  • 2928

myeclipse+jboss+mysql的DataSource配置

因为自己在做J2EE项目时遇到这方面的问题,所以将自己的配置过程与大家分享,希望给大家带来好处。版本:jboss-4.2.2 GAmyeclipse-6.0mysql-5.0 图形界面前端SQLyog...
  • netnok
  • netnok
  • 2011年01月03日 13:43
  • 782

JBoss 中配置数据源(datasource)连接池

什么是数据库连接池?          配置连接池为的是解决效率问题.因为每创建一个连接都是很耗时的,有了连接池,就可以提前放一些连接进去.以后我们再用连接就去连接池里面取而不是每次都创建.但是我们...

配置DataSource数据源 (JBOSS中配置数据源)

配置DataSource数据源 最后需要配置实体管理器所管理的数据源。下面以JBoss为例来说明如何配置JBoss的数据源。找到JBOSS_HOME\docs\examples\jca文件目录下,...

JBoss7配置指南及管理员手册.doc

  • 2015年04月10日 11:03
  • 1.14MB
  • 下载

JBoss7-配置管理员手册

  • 2014年08月09日 15:36
  • 1.14MB
  • 下载

JBoss7配置指南(一)

1.目标听众      这篇文档是为需要安装配置JBoss Application Server(AS7)的人员编写 1.1 开始之前        你需要知道如何下载,安装和运行J...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:为JBoss7配置MSSQL的DataSource
举报原因:
原因补充:

(最多只允许输入30个字)