请输入您要查询的百科知识:

 

词条 Jpetstore
释义

PetStore是sun公司为了演示自己的J2EE而编写的一个宠物店的电子商务的例子。随后它便成为其他一些

公司为了展示自己性能而竞相模仿的例子。JPetStore就是ibatis所展示的例子,当然各个公司实现这个

例子的侧重点都是自己的产品,ibatis主要是为了展示它的数据持久化的。通过JPetstore可以让我们更

清楚的了解ibatis的用法和优点。

先看如何在windows下使用tomcat和mysql运行JPetStore.

第一步:配置JDK和MySQL

第二步:下载JPetStore

第三步:创建JPetStore数据库

把iBATIS_JPetStore-4.0.5\\ddl\\mysql下jpetstore-mysql-schema.sql, jpetstore-mysql-dataload.sql,

jpetstore-mysql-create-user.sql三个文件拷贝到MySQL的bin目录下,到MySQL的命令提示符下分别运行这

三个文件:

mysql -uroot –p < jpetstore-mysql-schema.sql

mysql -uroot –p < jpetstore-mysql-dataload.sql

mysql -uroot –p < jpetstore-mysql-create-user.sql

以上三个文件分别是创建数据库JPetStore,导入数据,分配权限。如果你安装了MySQL的管理工具,您也可以

在您按装的管理工具下运行这三个文件。

如果你安装了MySQL-Front,可以直接点击SQL编辑器,依次将上述文件中的SQL语句拷贝,执行。

第四步:部属JPetStore

把iBATIS_JPetStore-4.0.5\\build\\wars下的jpetstore.war复制到Tomcat的Webapps目录下,接着运

行Tomcat(http://localhost:8080)。接着在看Webapps目录下会出现jpetstore文件夹,找到该文件

夹下WEB-INF\\classes\\properties目录下的database.properties,把里面的内容替换成如下:

####################################

# Database Connectivity Properties

####################################

driver=org.gjt.mm.mysql.Driver

url=jdbc:mysql://localhost:3306/jpetstore

username=jpetstore

password=yourkeyword

重启Tomcat.(注意如果不成功,有可能是driver太老,可以换成com.mysql.jdbc.Driver试一下,当然前

提是mysql驱动包足够新)。

下面开始看这个例子,因为它是ibatis给的,所以最主要的还是ibatis如何使用,和他的方便灵活。

在ibatis中要持久化数据首先要搞定一些配置文件,JpetStore给出了一个很完整的例子。先是database.properties

在这里面配置了数据库的一些基本信息包括驱动,url,用户名,密码,很简单也很清晰。直接使用这些信息的是

sql-map-config.xml引用database.properties如下

<properties resource="properties/database.properties"/>。sql-map-config.xml从database.properties主要等到

${driver},${url},${username},${password}等信息。sql-map-config.xml同时与另一些配置文件联系上了,如

<sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Account.xml"/>,这样sql-map-config.xml

就完成了自己的任务,得到了数据库的一些基本信息,同时与Account.xml等一些文件建立了联系。

下面就可以看一下Account.xml了,在Account.xml中做了什么呢?做了2件事

第一,指定了接口类,<typeAlias alias="account" type="com.ibatis.jpetstore.domain.Account"/>。

同时在类的属性和数据表的列之间建立了联系。

<resultMap id="accountResult" class="account">

<result property="username" column="USERID"/>。。。。。

第二,写出了业务逻辑中所用到的操作,对应的sql语句,如

<update id="updateSignon" parameterClass="account">

update SIGNON set PASSWORD = #password# where USERNAME = #username#

</update>

<update id="updateAccount" parameterClass="account">

update ACCOUNT set EMAIL = #email#, FIRSTNAME = #firstName#, LASTNAME = #lastName#,

STATUS = #status#, ADDR1 = #address1#,  ADDR2 = #address2:VARCHAR#,  CITY = #city#,

STATE = #state#, ZIP = #zip#, COUNTRY = #country#,PHONE = #phone# where USERID = #username#

</update>等,这样到时用的话之间可以写作:update("insertSignon", account);这句是在AccountDao.java的实现

类AccountSqlMapDao.java中。以上2点就是Account.xml的作用。

在上面的Account.xml作用中,提到了AccountSqlMapDao.java和AccountDao.java,他们怎么没出现在

那个配置文件中呢?别急,还有一个dao.xml。这个文件联系了sql-map-config.xml

<transactionManager type="SQLMAP">

<property name="SqlMapConfigResource"

value="com/ibatis/jpetstore/persistence/sqlmapdao/sql/sql-map-config.xml"/>

</transactionManager>

也指定了dao的interface和implementation,

<dao interface="com.ibatis.jpetstore.persistence.iface.AccountDao"

implementation="com.ibatis.jpetstore.persistence.sqlmapdao.AccountSqlMapDao"/>

这就是ibatis持久化所需要的所有配置文件。

随便看

 

百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/11/13 17:53:04