Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2302713
  • 博文数量: 321
  • 博客积分: 3440
  • 博客等级: 中校
  • 技术积分: 2992
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-24 09:08
个人简介

我就在这里

文章分类

全部博文(321)

文章存档

2015年(9)

2014年(84)

2013年(101)

2012年(25)

2011年(29)

2010年(21)

2009年(6)

2008年(23)

2007年(23)

分类: Java

2014-05-24 18:19:53

1.将mysql的JDBC驱动放到的JBOSS_HOME\server\default\lib 下

2.把JBOSS_HOME\docs\examples\jca\mysql-ds.xml 复制到JBOSS_HOME\server\default\deploy目录下。修改mysql- ds.xml文件
例:



MySqlDS 

jdbc:mysql://localhost :3306/databaseName ?


com.mysql.jdbc.Driver
root
root


ture
//这条默认没有,不写这条默认相当于True,如果把true改成false,则程序不能从当前的vm中读取其他vm中的数据源,而且TRUE的时候程序员需要调用数据源的时候需要使用java:/数据源名称,如果为FALSE则可以去掉Java:/,只要数据源名称就可以了。

此步骤需要注意的地方是jca目录下存在mssql-ds.xml这个文件,注意区分它与mysql-ds.xml

3.修改JBOSS_HOME\server\default\conf\standardjbosscmp-jdbc.xml


java:/MySqlDS 
mySql


说明:mySql的JBoss 5.0.1GA中是被注释掉了,需要将注释标记去掉

4.最后再修改JBOSS_HOME\server\default\conf\login-config.xml:

将下面代码添加到



databaseName
root
root
jboss.jca:service=LocalTxCM,name=MySqlDS




5、如果你是按照上面的步骤一步不拉地走下来的话,那么祝贺你已经成功配置好了JBoss数据库连接池,接下来做一个简单的测试,测试代码如下:
测试代码


    1. import java.sql.*;
    2. import javax.naming.*;
    3. import javax.sql.DataSource;
    4. //一个用于查找数据源的工具类。
    5. public class DatabaseConn {
    6. public static synchronized Connection getConnection_r() throws
    7. Exception
    8. {
    9. try
    10. {
    11. Context = InitialContext(); //得到初始化上
    12. 下文
    13. Object = .lookup("java:/MySqlDS");//查找连接池
    14. DataSource = (DataSource) obj;//转换成DataSource
    15. return ds. getConnection_r();
    16. }
    17. catch(SQLException e)
    18. {
    19. throw e;
    20. }
    21. catch(NamingException e)
    22. {
    23. throw e;
    24. }
    25. }
    26. }



    1. //showdata.jsp
    2. <%@ page = %>
    3. <%@ page =%>
    4. <%@ page =%>
    5. <%
    6. Connection = . getConnection_r();
    7. Statement =.createStatement();
    8. ResultSet =.executeQuery("select * from employee");
    9. while(rs.next())
    10. {
    11. out.println(rs. getInt_r("id"));
    12. out.println(rs. getString_r("name"));
    13. out.println(rs. getString_r("salary"));
    14. out.println(rs. getString_r("department"));
    15. out.println(rs. getInt_r("age")+"");
    16. }
    17. conn.close();
    18. stmt.close();
    19. rs.close();
    20. %>




    1. try {
    2. Context ctx = new InitialContext(); //得到初始化上下文
    3. Object obj = ctx.lookup("java:/MySqlDS");//查找连接池
    4. DataSource ds = (DataSource) obj;//转换成DataSource
    5. Connection connect = ds.getConnection();//从连接池中得到一个连接
    6. Statement stmt = connect.createStatement();
    7. ResultSet rs = stmt.executeQuery("select * from tableName");//这是你的数据库的表噢!
    8. while(rs.next()){
    9. out.println(rs.getXXX(1));//取出一个字段
    10. }

    11. rs.close();

    12. stmt.close();

    13. connect.close();
    14. } catch (NamingException e) {
    15. e.printStackTrace();
    16. } catch(SQLException e1){
    17. e1.printStackTrace();
    18. }
    19. out.flush();
    20. out.close();



阅读(1859) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~