以前写几个模块,需要涉及到自定义数据库操作的地方,一般都是在OpenCms默认的数据库里面建立新的数据表来进行操作的.
[王毅原创,转载注明,http://wangyi878750.blog.sohu.com/83875297.html] 譬如在留言板或者计数器中,这些内容是没有必要做成自定义结构类型来使用的,那么最好的办法就是写几个简单的bean操作数据库了.这样的话,我就在OpenCms的数据库里面建立几个自己的库表,加上模块所特有的前缀就是了.
这样有一个很明显的好处,就是不用做任何多余的配置,就可以很方便的使用数据库操作,当然,只能是在OpenCms原有的数据库里面.然后就可以按照我曾经在
OpenCms的数据库操作一文中所写的那样来对数据库表操作了.最大的好处就是我在部署一些需要自己建立数据表的模块的时候,只需要经过web登录系统,导入模块,然后就可以直接在OpenCms的后台创建或者删除数据表,进而操作这些数据.
[王毅原创,转载注明,http://wangyi878750.blog.sohu.com/83875297.html] 虽然上面所说的,能够解决一些比较常用的数据库操作功能,但是未必人人都想把自己模块的数据表放在原来的数据库里面,或者说,可能我的模块操作的本来就是其他的数据库,可能在任何一个地方的任何一个物理机器上,那么就不可能使用这个方法了.那么,我接下来说明另一种方法,可以通过OpenCms的配置,来让你可以在OpenCms系统里面方便的操作外部数据库.
[王毅原创,转载注明,http://wangyi878750.blog.sohu.com/83875297.html] 首先需要了解一下OpenCms的一个配置文件,就是配置文件夹下的opencms.properties文件.
在这个文件中主要就涉及三个部分,除了设置安装向导是否可用,以及网卡地址绑定以外,最多的就是和数据库相关的一些设置了.在理解了这些设置之后,就很容易明白外部数据库的配置了.具体操作步骤如下:
[王毅原创,转载注明,http://wangyi878750.blog.sohu.com/83875297.html] 1,找到"Declaration of database pools"这段配置文字.
原来的设置为
db.pools=default ,这个地方声明了OpenCms系统可用的数据库连接池,我们要使用外部数据库的连接池,就需要修改这里.修改方法很简单,直接在这个参数后面增加你添加的连接池的名称就可以了,中间使用逗号分隔.譬如可以修改为
db.pools=default,test 即可.
2.找到"Configuration of the default database pool"这段配置文字.
这段配置指明了连接池所用到的各种属性,譬如数据库驱动类型,数据库的路径,用户名密码等等.
修改方法也很简单,直接复制一段,然后就将原来键值对中的键名中的"
default" 修改为你设置的连接池名称即可.比如我在这里将类似"
db.pool.default.user"中的"default"全部修改为"
db.pool.test.user"这样.然后把各个属性对应的值设置为适合访问你的外部数据库的需要.
需要注意的是下面这句,应该把属性值修改,将属性值中的"default"也要修改为你要使用的外部连接池名称.这个
很重要. [王毅原创,转载注明,http://wangyi878750.blog.sohu.com/83875297.html] # the URL to make the JDBC DriverManager return connections from the DBCP pool
db.pool.default.poolUrl=opencms:default 3.找到"Configuration for statement pooling"这一段配置,复制并修改为你需要的连接池的配置.
经过这三处修改之后,重启web服务器,你就应该可以顺利的在OpenCms里面使用jsp或者javabean来操作数据库了,和其他的框架下的操作没有什么不同.
4.你可以向我一样建立如下一个简单的jsp页面来测试一下了.
<%@page
import="java.sql.*,
org.opencms.db.*,
org.opencms.main.*"%>
<%
java.sql.Connection con =
OpenCms.getSqlManager().getConnection("test");
Statement stmt = con.createStatement();
ResultSet rs;
rs = stmt.executeQuery("select id, name from test");
while (rs.next()) {
%><%= rs.getInt(1) %> <%= rs.getString(2)
%><br><%
}
rs.close();
stmt.close();
con.close();
%>
当然了,我的test数据库里面有test数据表了,里面也当然有id和name.
我的相关日志:
2007-03-23 | [转]OpenCms for MySql 安装图解2007-03-23 | [转][图文]OpenCms VFS plugin for Eclipse 安装与使用2008-04-06 | OpenCms中操作外部数据库的方法之一2007-11-18 | [转]Tomcat中数据源的配置和使用2008-04-05 | 有趣的OpenCms后台登录界面2008-04-04 | 我的OpenCms在线演示站点失效2008-04-03 | 按照官方教程整合Apache+Tomcat+OpenCms2008-03-21 | OpenCms的官方在线演示站点2008-03-21 | <cms:contentload>标签的使用2008-03-18 | 来自 Alkacon Software GmbH 的邮件2008-02-05 | 在OpenSuse下安装OpenCms的时候如何去掉路径中的opencms2007-12-14 | <cms:editable>标签的使用2007-12-13 | <cms:contentshow>标签的使用
分享到:
相关推荐
opencms中文用户手册!看了以后受益匪浅!希望大家多多学习
opencms中文手册简单介绍opencms功能以及工作区
OpenCms中文用户手册.pdf
opencms中文教程 手册 指南 汉化
偶尔有一两个 jsp 版本的,虽然开源,功能却...胡楠先生写的这本《OpenCms 中文用户手册》,为中国程序员打开了一扇认识、使用 OpenCms 的大门。入门之后,再去阅读更深 OpenCms 应用就不会太难了。再次感谢胡楠先生!
[CMS程序]OpenCms中文用户手册_opencmshandbook
opencms guide
opencms中文汉化包,7.0.1,值得下载
干货,opencms应用中去掉路径中两个/opencms。利用urlrewritefilter,网上方法走不通,自己琢磨得出,完美去除。官方文档中方法会带来一些问题。 学习过程中使用了很多积分,各位不缺的话,支援下。实在没有积分又很...
OpenCms是一个专业级、开源Java CMS(内容管理系统),由Alkacon公司发起和维护,OpenCms完全基于Java和XML技术实现,内容维护方便、直观,类型定义简单、快速,基于Jsp的模板机制强大、灵活,OpenCms扩展机制可以很好...
opencms中文教程 手册 指南 汉化 part2
最新版的opencms 中文安装手册,详细介绍如何使用opencms. 1:安装条件 2:安装opencms 配置数据库
opencms建站手册 CMS 开发 相信会为您带来启发
OpenCMS内容管理入门指南.pdf,另一个包是章节配套源代码
opencms 中文网提供的java api 文档包
myeclipse开发Opencms的插件。及其安装的方式。通过测试了。非常好用
OpenCms6.2安装环境 操作系统:windows2000/2003,linux JDK: JDK1.4.x,JDK1.5.x 应用服务器:tomcat5.0.x/tomcat5.5.x,weblogic,JBoss 4.0 数据库:Oracle 9.x/Oracle 10.x,MS SQL server2000,MySQL 4.0/...
开源的网站内容管理系统
非常好用的文档,纯中文,如过你要快速建站这个首选.
OpenCms可以非常好的运行在一个完全的开源环境中(例如:Linux、Apache、Tomcat、MySQL). 当然,也可以很好的运行于商业环境下(例如:Windows NT、IIS、BEA Weblogic、Oracle DB)。 功能特色: OpenCms是真正...