前言

实验室最近在做一个物品管理系统的小项目,其中涉及到postgreSQL的使用,刚开始部署到wildfly服务器上时遇到了若干问题,终于在导师的讲解下大体上明白了 ,特此记录分享学习一下。

配置数据源的原因

为何要配置数据源,这点本人也就是心里明白,讲不出来也写不出来,只好以图说事了。话不多说,上图(日后再容我细细完善)。 
数据库访问管理理解图 

如何配置

wildfly下数据源的配置方法有两种。个人对于第二种方法实践过,只对第二种展开讲解,第一种给出参考材料。

配置方法一

配置文件配置法

参考材料:

http://dz.sdut.edu.cn/blog/subaochen/2013/08/jboss-as-7%E9%85%8D%E7%BD%AEpostgresql%E6%95%B0%E6%8D%AE%E6%BA%90%E7%9A%84%E6%96%B9%E6%B3%95/

配置方法二

wildfly命令行配置法,该种方法与上图可以一一对应起来,可以参考。

具体实现步骤:

a.下载postgreSQL JDBC driver并放到适合的目录下;

比如: 

b.启动wildfly服务器;

命令:

./standalone.sh

c.添加postgreSQL数据库到wildfly;

执行下列命令行(相应的driver的路径(加黑部分)改为自己的即可):

$ ./jboss-cli.sh

[standalone@localhost:9990 /] module add –name=org.postgresql 
–slot=main 
–resources=/home/gaoziqiang/devel/driver/postgresql/postgresql.jar 
–dependencies=javax.api,javax.transaction.api 
[standalone@localhost:9990 /] 
/subsystem=datasources/jdbc-driver=postgres:add(driver-name=”postgres”,driver-module-name=”org.postgresql”,driver-class-name=org.postgresql.Driver)

d.增加wildfly数据源;

继续在jboss-cli命令行下执行(替换为你的数据源名称、用户名和密码即可):

[standalone@localhost:9990 /] data-source add –name=labDS 
–jndi-name=java:jboss/labDS –driver-name=postgres 
–connection-url=jdbc:postgresql://localhost:5432/lab 
–user-name=postgres –password=666 –validate-on-match=true 
–background-validation=false 
–valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker 
–exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter

配置成功的标志:

[standalone@localhost:9990 /] 
/subsystem=datasources:installed-drivers-list { “outcome” => 
“success”, “result” => [ { “driver-name” => “postgres”, 
“deployment-name” => undefined, “driver-module-name” => 
“org.postgresql”, “module-slot” => “main”, 
“driver-datasource-class-name” => “”, 
“driver-xa-datasource-class-name” => “”, “driver-class-name” => 
“org.postgresql.Driver”, “driver-major-version” => 9, 
“driver-minor-version” => 4, “jdbc-compliant” => false }, { 
“driver-name” => “h2”, “deployment-name” => undefined, 
“driver-module-name” => “com.h2database.h2”, “module-slot” => “main”, 
“driver-datasource-class-name” => “”, 
“driver-xa-datasource-class-name” => “org.h2.jdbcx.JdbcDataSource”, 
“driver-class-name” => “org.h2.Driver”, “driver-major-version” => 1, 
“driver-minor-version” => 3, “jdbc-compliant” => true } ] }

参考资料

资料一:http://dz.sdut.edu.cn/blog/subaochen/?s=Wildfly&submit=Search 
资料二:https://developer.jboss.org/wiki/GenericTypeCLICommands

总结

还有很多的不解,继续理解,继续分享。

数据库学习--wildfly配置postgreSQL数据源的更多相关文章

  1. wildfly配置PostgreSQL数据源

    wildfly配置PostgreSQL数据源 很久以前写过在JBoss AS7上如何配置PostgreSQL数据源,此方法在wildfly上依然有效.不过,通过wildfly的命令行工具可以有更简单的 ...

  2. 三、oracle数据库成功安装步骤 Oracle数据源配置

      安装完Oracle驱动后,如需连接远程Oracle数据库,还需进行数据源配置,类似Windows下的ODBC数据源配置. 运行"开始菜单\Oracle - OraDb11g_home1\ ...

  3. JNDI学习总结(一)——JNDI数据源的配置

    一.数据源的由来 在Java开发中,使用JDBC操作数据库的四个步骤如下:   ①加载数据库驱动程序(Class.forName("数据库驱动类");) ②连接数据库(Connec ...

  4. JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源

    com.alibaba.druid.pool.DruidDataSourceFactory实现了javax.naming.spi.ObjectFactory,可以作为JNDI数据源来配置. 一.下载D ...

  5. JNDI学习总结(二)——Tomcat下使用C3P0配置JNDI数据源

    一.C3P0下载 C3P0下载地址:http://sourceforge.net/projects/c3p0/files/?source=navbar

  6. 如何通过Spring Boot配置动态数据源访问多个数据库

    之前写过一篇博客<Spring+Mybatis+Mysql搭建分布式数据库访问框架>描述如何通过Spring+Mybatis配置动态数据源访问多个数据库.但是之前的方案有一些限制(原博客中 ...

  7. JNDI学习总结——Tomcat下使用C3P0配置JNDI数据源

    一.C3P0下载 C3P0下载地址:http://sourceforge.net/projects/c3p0/files/?source=navbar

  8. Linux下postgresql数据库部署与配置

    1.检查postgresql是否已经安装:rpm -qa | grep postgres 2.检查PostgreSQL 安装位置:rpm -qal | grep postgres 3.卸载Postgr ...

  9. JNDI学习总结(一)——JNDI数据源的配置(转)

    一.数据源的由来 在Java开发中,使用JDBC操作数据库的四个步骤如下:   ①加载数据库驱动程序(Class.forName("数据库驱动类");)   ②连接数据库(Conn ...

随机推荐

  1. 设计模式之单例模式与工厂模式的Python实现(二)

    2. 工厂模式 工厂模式是创建型设计模式的一种.核心的思想是,通过传递给类或函数某种产品的信息来创建产品并返回.当我们想得到产品a对象,只需把产品a的名字传递给工厂函数就能得到产品a对象.而核心思想的 ...

  2. zoj3161 Damn Couples

    不想打题面了,题面戳这里 这道题目的模型转换地有点猛.首先我们肯定需要让老板把那些不相邻的人的卡牌放在前面,这样他们就作废了.然后剩下的卡牌就都是相邻人之间的了.我们就可以把这个序列分成若干个联通块, ...

  3. Python之多线程:线程互斥与线程同步

    一.锁在多线程中的使用:线程互斥 lock = threading.Lock()#创建一个锁对象 1.with lock: pass 和进程使用的方式相同   2.控制线程结束的时间 通过一个全局变量 ...

  4. python之短路计算-布尔类型

    Python中布尔类型 我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 Tr ...

  5. 杭电oj2032、2040、2042、2054、2055

    2032  杨辉三角 #include <stdio.h> int main(){ ][],i,j,n; while(~scanf("%d",&n)){ ;i& ...

  6. mysql [MariaDB] 开启外联

    1.查看mysql服务端口是否为外部端口,如果监听的是本地端口修改mariadb配置文件 root@kali:~# whereis mysql mysql: /usr/bin/mysql /etc/m ...

  7. ANDROID开发笔记(二)

    动机: 开发的一个背单词的软件. 不会实现划屏的特性. 方法: 第一步尝试: 在MainActivity中, 增加以下代码后, 如果在视图的空白处点击时, 文本框中的时间就会发生改变. @Overri ...

  8. android 研究的环境搭建、高效工具、网站资源

    =================  2015 年 10 月 14 号 更新 著名的android开源社区xda有一个帖子,详细描述了android开发和研究环境的初始搭建过程: http://for ...

  9. VC2010编译libwebsockets

    1. 安装cmake: https://cmake.org/files/v3.6/cmake-3.6.0-win64-x64.msi 2. 下载libwebsocket源码: git clone ht ...

  10. openstack token

    在openstack的token中,包含如下: 'domain', {'id': None, 'name': None}'expires', datetime.datetime(2017, 8, 9, ...