本 Demo 分两部分:
One : SpringSide2 在本地演示。
Two: 使用Eclipse/MyEclipse 开发SpringSide 项目
废话不说,马上开始….come no go go go …
第一部分:SpringSide2 在本地演示
Set 1下载安装:
从http://www.springside.org.cn/download.php 下载到本地并解压,本例解压后路径为 D:"springside-2.0-RC1-allinone
Set 2 本地演示:
运行springside.bat。(运行前请设好JAVA_HOME、PATH环境变量)如图:
running …(第一次运行,时间有点长,等下吧。。。)
helloworld
Bookstore
Ok…
第一部了完毕。
第二部分:使用Eclipse/MyEclipse 开发SpringSide 项目
方法:Springside2 中有个plugin 可以使用。
Set 1 安装plugin:
把上图中的plugin copy 到 Eclipse/MyEclipse目录下的plugins目中。如图
Set 2 启动Eclipse/MyEclipse并设置SprngSide 目录.
在启前先删除configuration/org.eclipse.update目录,好让plugin生效。如图:
启动Eclipse/MyEclipse 设置SpringSide 目录:(Windows -> Preferences -> Springside -> SpringSide2 Home)
Ok …设置完毕。
Set 3 利用SpringSide 新建项目。
File -> New -> other。选择Springside -> Springside Project
点击”Next”。 输入项目名(SsRunTest)。如图:
点击”Next”。选择所需的components。本例以Demo 为主。所以简单点用Struts and Hibernate 如图:
点击”Next”。OK 项目框架生成了。如图:
项目框架生成了,能行吗?I don’t know…
Set 4 跑起来
Note: 1 新建的项目与之前的helloworld、bookstore 使用同一个Toncat (Springside 自带了一个Tomcat 不需要相装了。如下图) 。为了在Cmd 窗口中只显示我们新建项的调试信息,先把Tomcat/webapps目录下的其它部署删除掉,或移到别处。个人觉得,这很重要。
部署目录清空…如下:
这时候,我们打开CMD 。进到新建项目的bin目录下。运行: quickstart.bat
在CMD 中输出好多信息,虽然Tomcat 启动得了。但是时也有异常出现,这异常是那里产生的呢。我之前也不知道。
Note : 在CMD中看调试信息,个人一直认为不是好方法,太难看了。这里提意两个别的方法。
1:把调试信息重定向到一个txt 文件再打开看。(这方法操作麻烦,还是不要了。)
2:把上面的quickstart.bat搞到Eclipse/MyEclipse 的外部工具中运行。(这方法好,不要再CMD老土的显示方式了。后面我会介绍的)
欲先利其事,心先利其器。
老是在CMD中查看调试信息,非上策已。在分析上面异常之前磨磨下刀,别急嘛。
Form : http://www.blogjava.net/youxia/archive/2006/12/21/89365.html 借用“海边沫沫”的一小段。(本文的编写也是从这里得到启发的。)
把*.bat 作为外部工具来运行。方法 : 看上面URL 好了,不用重复工作。
回到我们的主题“”。quickstart.bat 外部工具设置如下图:
好了,现在不用在CMD中调试,直接在Eclipse/MyEclipse中调试就好了。
点击(在点击之前两必:必1:确定Tomcat已关闭,后面我会说原因;必 2 :先把Tomcat/webapps目录下的其它部署删除掉,或移到别处)就可以真正在Eclipse/MyEclipse 中跑Springside2 了。如图:(调试信息好看好多了。)
结果还是一样。Tomcat 启动成功。但还有异常出现。
现在来分析一下异常啦。
异常1:[java] org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.hsqldb.jdbcDriver'
分析1:jdbc驱动总题。本框构本是空的。所以这不是问题。
没有发现其它异常(本例中)------------------到这里框构基本能跑了。。哈哈SpringSide 真行哦.
现在修改下数据库连接文件(SsRunTest/src/resources/config),以除去SQLNestedException 异常。本例用的数据库是MySql 如图(不要忘记把myslqDiver copy 进项目的lib目录中去。):
假设数据库MySql 已开启。
Ok….再来调试。
调试之前提示:因为通过外部工具运行的是quickstart.bat,Tomcat 是通过 quickstart.bat启动。
当我们通过这红按钮来中止quickstart.bat 时。Tomcat 服务并没有被停止。所以我们还要通过shutdown.bat来停止Tomcat(如图) :
否则,再次开启quickstart.bat时,会出现异常:
[java] java.net.BindException: Address already in use: JVM_Bind:8080
这就是“必1:确定Tomcat已关闭,后面我会说原因”
好了,总结一下调试动作:
开启调试:外部工具(运行quickstart.bat)。
关闭调试:关闭Tomca(shutdown.bat ) ------------关闭(quickstart.bat)
最后演示:
没有异常了。。哈哈
至此,SpringSide2 框构已搭建好了,可以自行在上面开始各种业务了。
第二部了完毕。
使用Springside 的 plugin 的确很快就可以搭建好所需的框构。同时它对数据库的转移也很简单,只需发改运三个地方就可以。
1. 项目/src/resources/config/jdbc.properties // 数据库连接相关
2. 项目/src/resources/spring/dataAccessContext-hibernate.xml // 数据库连接属性相关
3. 把数据库驱动 copy 到 lib 目录。