Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19283993
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: Mysql/postgreSQL

2008-05-30 09:45:09

这一段时间在学习J2EE&EJB,我最感兴趣的还是做JDBC的EJB,但是由于我手头上没有J2EE默认的Cloudscape,也不敢装Oracle,我的机器太次,跑J2EE已是满负荷运转,绝不能再加大家伙!因此我想继续使用小巧玲珑的Mysql。

首先当然是系统环境软件的安装,我就不多说了,在下面我给出了几种软件的下载地址。需要特别强调的是,请一定要注意你安装的Mysql的版本,我们平常用的大都是“mysql-shareware-3.22.30-win”这个版本,但J2EE需要3.23.15以上的Mysql,这个是我花费大半天时间得到的教训。

经我的多次实验,J2EE的配置文件default properties中应按如下设置:
jdbc.drivers=org.gjt.mm.mysql.Driver
jdbc.datasources=jdbc/TestDb|jdbc:mysql://localhost:3306/test?user=jian&password=jian
以上语句很简单,用过Mysql的jdbc driver的人一看就明,所要注意的是其中的“jdbc/TestDb”实际上就是JNDI用来标识该数据库的名字。

在EJB中调用就很简单了:
DataSource ds = (DataSource) ic.lookup("jdbc/TestDb");

其实配置正确后回过头来再看,觉得真是很简单,但正是正确之前的一段摸索历程耗费了我很多的精力,所谓黎明前的黑暗吧。
从我使用的情况来看,这个版本的J2EE的错误提示机制特差,看上去不知所云,而且并不稳定,比如用它的装配工具生成的JAR包,虽然可用,但每次总被系统弹出窗口警告说是“无效的Windows NT映像”,弄得烦不胜烦,还有,明明按我上述配置已经能顺利运行连接Mysql的EJB,但error.log和dos窗口总是会记载说“Cannot find principal mapping information for data source with JNDI name jdbc/TestDb”。不过虽然有警告和错误日志记载,但只要你程序能够顺利地运行,尽可不去理会那么多,毕竟,J2EE还只是一个新生事物,没有经过长时间广范围的评测和使用。

由于本人水平有限,谬误之处烦劳予以纠正。

运行环境
Platform: Winnt 4.0
J2EE: JavaTM 2 SDK, Enterprise Edition Version 1.2.1
JDK: j2sdk1.3.0
Mysql: mysql-3.23.23-beta-win
Driver: mm.mysql-2.0.2  
阅读(235) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~