这次试一试发布一个操作数据库的项目。seam带的例子booking。
1、先试一试能不能在jboss自带的hsql数据库上正常运行:
2、用以前的办法,用/p20080422/examples/booking/build.xml文件编译项目。浏览地址http://127.0.0.1:8080/seam-booking/home.seam。OK,项目运行正常。
3、下面修改数据库连接参数。
修改文件:/p20080422/examples/booking/resources/jboss-seam-booking-ds.xml
原来:
<datasources>
<local-tx-datasource>
<jndi-name>bookingDatasource</jndi-name>
<connection-url>jdbc:hsqldb:.</connection-url>
<driver-class>org.hsqldb.jdbcDriver</driver-class>
<user-name>sa</user-name>
<password></password>
</local-tx-datasource>
</datasources>
修改为:
<datasources>
<local-tx-datasource>
<jndi-name>bookingDatasource</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/p20080422</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>your password</password>
</local-tx-datasource>
</datasources>
意思是本项目需要连接mysql数据库服务器中的p20080422库。
如果此时编译项目,因为p20080422库不存在,将会出错:(com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown database 'p20080422') ... ...
4、在mysql中建立数据库p20080422。
可以用多种方式。我用jise方式:数据管理-数据库管理-常用mysql命令-建立数据库-输入数据库名:p20080422,确定。
5、重新启动项目。
两种方式:
a)重新启动jboss,
b)删除C:/jboss-4.2.1.GA/server/default/deploy下的两个文件jboss-seam-booking.ear,jboss-seam-booking-ds.xml,然后重新编译项目。
以后将通过修改配置文件来达到重启项目的目的。
6、jboss中重启booking项目之后,自动在p20080422库中,建立了三个表。在项目运行过程中,可以从数据库中看到这三张表,当项目关闭之后,这三张表被自动删除。这种情况可以通过修改配置来更改,我们以后讨论。