问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何设置MyEclipse JDBC数据源

发布网友 发布时间:2022-05-02 04:08

我来回答

3个回答

懂视网 时间:2022-05-02 08:29

BasicDataSource bds=getDataSource();
  try{
   bds.close();
   
  }
  catch(Exception e){
   e.printStackTrace();
  }
  bds.setUsername("sa");
  bds.setPassword("admin");

 

还说要先关闭,再修改配置才能生效。

 

这样的代码根本就实现不了所说的功能,直接运行出错。连接池关闭后,就无法使用了。本身也没有open,reopen之类的方法。

也有说C3P0支持热修改,但本身好像有bug,容易出错死锁错误。也就没有去研究到底支持不。

BasicDataSource 的close方法其实只设置了一个标识变量:closed,标记为关闭就取不到连接,要是能修改该标识为非关闭,就可以继续使用了。

所以实现的思路是:先关闭,再修改配置,再打开标识。问题是BasicDataSource并没有这样的接口提供出来,幸运的是,BasicDataSource中的

closed属性是protected,也就是我们可以在子类中访问到这个属性,也就可以进行修改了。

所以只要自定义一个类继承于BasicDataSource,提供如下方法即可:

public void open(){
  this.closed=false;
 }

 

当然配置文件中使用的数据源的类名就需要改为这个自定义类了。

说明:文章为作者从CSDN迁移过来

动态修改JDBC数据源配置

标签:protect   csdn   nbsp   c3p0   文章   项目   ack   source   功能   

热心网友 时间:2022-05-02 05:37

1. 创建一个MyEclipse JDBC数据源
(1)通过选择Windows>Open Perspective>MyEclipse Report Design来打开报表设计视角。
(2)通过创建报表或打开一个现有的报表来启动报表设计器。
(3)在数据库资源管理器中,右键单击Data Sources,然后选择New Data Source。
如果此视图不可见,那么选择Window>Show View>Other,展开MyEclipse Report Design,并选中Data Explorer。

创建一个新的数据源
(4)选择MyEclipse JDBC数据源、MyEclipse Derby DS在数据源名称字段中的类型,然后单击下一步。

选择数据源类型
(5)从驱动程序的下拉菜单中选择MyEclipse Derby,然后单击Finish。
如果您想要创建一个新的MyEclipse JDBC驱动程序,请单击创建新驱动程序的链接。您还可以使用编辑驱动程序的链接来编辑现有的驱动程序。
注意:要实现无缝的MyEclipse报表整合,只有选择保存密码的驱动程序。要了解更多有关MyEclipse驱动程序的信息,请参阅Connecting to a Database in MyEclipse。

选择一个驱动器
(6)在数据源的一般属性中输入一个描述性名称。

命名数据源
新的MyEclipse Derby DS数据源会出现在数据库资源管理器视图中。

MyEclipse Derby DS数据源
在创建新MyEclipse JDBC数据源的过程中,数据库资源管理器的JDBC驱动程序属性、链接URL、驱动程序类名称、用户名和密码都会被复制到报表文件中。此外,数据库资源管理器的JDBC驱动程序的JAR文件会被复制到该文件夹中,<projectName>/WebRoot/Web-INF/report-engine/platform/plugins/org.eclipse.birt.report.data.oda.jdbc_<version>/drivers。这些JAR文件和报表Web项目一起部署。
2. 编辑MyEclipse JDBC数据源
在一个MyEclipse JDBC数据源的生命周期中,可能需要重命名数据源或更改MyEclipse JDBC驱动程序来绑定到数据源上。
2.1 重命名数据源
要重命名的数据源,在数据库资源管理器中右键单击数据源,并选择重命名。对于当前的报表您使用的名称必须是唯一的。
2.2 更改MyEclipse JDBC驱动程序绑定到数据源上
(1)在数据库资源管理器中,展开数据源,右键单击您要修改的数据源,并选择编辑。

编辑数据源
(2)从驱动程序的下拉列表中选择一个新的MyEclipse驱动程序,然后单击确定来提交您更改的报表。

MyEclipse JDBC数据源编辑器
如果您更改了相关的MyEclipse驱动程序,新驱动程序的驱动程序JAR(s)会被复制到您的项目中。
由于MyEclipse JDBC数据源连接了MyEclipse JDBC驱动程序,因此数据源的JDBC属性不能直接在数据源中编辑。要更改这些属性,您必须在相关的数据库资源管理器驱动程序中编辑它们。
3. 手动同步JDBC数据源
报表工具在MyEclipse中的描述自动同步之后旧的JDBC数据源状态能持续。发生这种情况有几个原因。例如,在一个项目中数据源验证器无法检测到旧的数据源,该项目是关闭的;因此这些资源在同步窗口是不可用的。在这样的情况下,可以通过手动同步JDBC数据源。
(1)在数据源资源管理器中,右键单击旧的JDBC数据源,并选择编辑。

手动同步
(2)在左边的列表中,选择MyEclipse JDBC数据源,然后单击同步驱动程序。
当您在报表设计器预览页面中预览结果时,报表数据源被连接到MyEclipse JDBC驱动程序上,相关的数据库资源管理器的JDBC驱动程序的JDBC属性被用于建立数据库连接,这些JDBC属性可能存储在您的报表文件中。在运行时,JDBC属性在您的报表中被使用。
如果您提供自定义数据源绑定,那么这些绑定的属性会优先于数据库资源管理器的JDBC驱动程序属性,对于预览操作也是如此。如果指定了不正确的属性值,可能会导致数据库连接不成功。

编辑属性绑定

热心网友 时间:2022-05-02 06:55

先设置数据源:http://blog.csdn.net/justoneroad/article/details/7216202

然后写连接数据库代码:http://zhidao.baidu.com/question/48202282.html

例子中都是以MSSQL为例

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
行车工退休是否有工龄年限限制?男士、女士的的退休年龄。 北京中新惠尔健康科技有限公司解决方案 北京中新惠尔健康科技有限公司公司文化 北京中新惠尔健康科技有限公司服务产品 北京中新惠尔健康科技有限公司历史沿革 北京中新惠尔健康科技有限公司惠尔简介 速腾能放多久? 昆山汽车搭电多少钱? 比亚迪救急估计电瓶没电了 盒马员工超过1小时算不算大吧 怎么写论文开题报告? 手机显示无主叫号码是什么意思谁打来的 达内C语言/C++培训好在哪 梦见老公给他死去的兄弟剪黑布衣? 来电显示无主叫号码是国外打来的吗 女生学C语言培训困难吗? 在家发豆芽(简易)怎么做如何做 我老公已经死了梦见他和他在生的兄弟打架是什么意思? 来电显示无主叫号码 梦见死去的老公给他兄弟给棒棒给了他兄弟假期什么意思? 关于Tomcat加到系统服务的问题 怎么安装tomcat 执行bin 提示指定的服务未安装 tomcat7.0怎么配置JAVAoption安装服务 谁能告诉我 这是祖马龙哪个哪个味道吗? tomcat安装后,在“服务”中为什么没有 经典香水的背后都有一个动情的故事,你知道哪些香水的故事? 想要追奶的话一天喝多少鲫鱼汤合适 如何删除QQ表情里的图呢 强烈推荐马卡龙香水哪个型号好,强烈推荐马卡龙香水 怎么删除表情包图片qq java的date怎么获取当前时间 兰州市医保卡在那补办 java中如何用Date类型接收系统当前时间 兰州社保卡在哪里办 java 中获取当前时间并返回Date类型变量 兰州市医保卡丢失了,怎么办理? 兰州补办医保卡地址是什么? 兰州办医保卡的地方叫什么 兰州市医保卡过期如何补办 魑魅魍魉读音是什么? 魑魅魍魉 四个字怎么读?什么意思? 魑魅魍魉什么意思?怎么念?怎么来? 魑魅魍魉这几个字念什么 魑魅魍魉这些念什么,是什么意思? 魑魅魍魉几个字怎么读 一个成语,都是四个鬼字底的,怎么写怎么读。。什么意思? “待到秋来九月八,我花开后百花杀。冲天香阵透长安,满城尽带金黄甲。”这首诗的意思和背景是什么? 满城尽带黄金甲隐喻是什么? 《满城尽带黄金甲》想表达什么? 提前确认收货有什么坏处