一、简介
AppFuse是当今大师级人物Matt Raible编写的一个Web开发框架,它集成了当前最流行的Web应用框架,也可以说是一个Web开发基础平台,它与之所集成的各种框架相比,它提供了一部分所有Web系统开发过程中都需要开发的一些功能,如登陆、用户密码加密,用户管理、更具不同的用户可以展现不同的菜单,可以自动生成40%-60%左右的代码,自带了默认的一些在CSS中设定的样式,使用这些样式能很快的改变整个系统的外观,还有自动化测试的功能。
学习大师写的代码,我们好像有了一位优秀的导师指导我们,告诉我们应该怎样去构建Web应用,AppFuse为我们提供了一个Web开发的新的方式和思路,它将Hibernate、Struts、Spring、DBUnit、Ant、Log4J、Struts Menu、Xdoclet、SiteMesh、Velocity、JUnit、JSTL、WebWork等技术集成到一个框架中,好像一个优秀的建筑师将各种积木巧妙的搭建在一起,而且恰到好处,这给我们提供了一个很好的借鉴、学习的机会。
目前最新的版本为1.8.2,功能的实现上与1.7版本最大的区别是使用了Acegi代替容器来做权限管理。
二、获得途径
http://raibledesigns.com/wiki/Wiki.jsp?page=AppFuse是AppFuse的官方网站,有最新的源码下载。此外,JDK当然是必须的,要1.4.2以上的版本。Web容器使用Tomcat5.0.28,数据库使用MySql4.1.7。此外,你还需要下载Ant 1.6.2以上版本用于项目构建,下载IDE使用Eclipse,推荐3.0.1版。AppFuse有发送邮件功能,要想实现这一功能,需要本地安装SMTP服务。(若你觉得没有必要,没有也可以,不会导致程序运行出错。)
三、安装中的注意事项
1. 将Ant解压缩后,需要在环境变量中添加ANT_HOME为解压后的路径,并在path中添加%ANT_HOME%\bin。然后将AppFuse文件夹下的\lib\junit3.8.1\junit.jar拷贝到Ant安装目录下的lib文件夹中。
2. 安装MySql数据库,在环境变量中添加MYSQL_HOME为安装路径,并在path中添加%MYSQL_HOME%\bin。设置时基本可按默认设置,但要注意把字符集改为utf8。
四、构建项目
1. 在控制台中进入AppFuse源代码根目录,键入命令:ant new ,系统会提示你键入项目名称和数据库名以及包名等。这一命令会创建一个以你的项目名命名的文件夹,与AppFuse同级,里面包含项目源码。要注意项目名称不能使用"test"或者包含"appfuse"或者以数字开头。当控制台显示"BUILD SUCCESSFUL",新项目就生成了。
2. 进入新生成的项目文件夹,运行 ant setup,这一命令将会在MySql中创建前面指定的名称的数据库,并编译源码,打包发布到Tomcat中。AppFuse默认情况下认为数据库的root帐号密码为空,如果你给数据库设置了密码,需要修改根目录下的properties.xml文件。搜索属性名为database.admin.password的标签,将value改写为实际的数据库密码。
3. 运行Tomcat,连接到http://localhost:8080/项目名,看看我们的成果!
4. 1.8版本中包含一个Bug,就是对中文的支持不够好,因此运行后的界面中可以看到有乱码出现,并且在运行ant test-all时可能会在test-jsp处报错停掉。我们可以修改\web\WEB-INF\classes\ApplicationResources_zh_CN.properties和ApplicationResources_zh.properties文件,将其中乱码的部分改掉就可以了。(不过test-jsp报错的问题无法解决,待偶慢慢研究)
五、Eclipse的使用
Eclipse是一个优秀的开源的Java代码编辑器,它功能强大,并可以通过安装插件使功能得到无限扩展,最主要的是免费!
在这里下载3.0.1版本的Eclipse,若你是第一次使用Eclipse,而且e文不好,可以下载一个它的官方汉化包,能够将Eclipse包括帮助在内的几乎所有e文汉化。
运行Eclipse,首先设置工作空间Work Space为项目所在目录(YOURAPPNAME的上一级目录),依次点击File → New → Project,选择Java Project → Next,在项目名称project name栏键入新构建的YOURAPPNAME,若界面显示The specified external location already exists…,点击Finish,Eclipse将会把我们的YOURAPPNAME项目导入进来。
下面我们要在Eclipse中直接使用Ant构建文件而不必在控制台敲命令这么麻烦。点击Window → Show View → Ant。点击Add Buildfiles(一个“+”号加一只蚂蚁的图标)按钮,选择build.xml构建文件,OK。
添加了构建文件之后,打开它,你可以看到里面所有的target,双击就可以执行。常用的有compile、deploy等。
Eclipse默认使用自带的Ant,我们改为使用我们自己安装的Ant。依次点击Window → Preferences → Ant → Runtime,点击Ant Home按钮,将路径指向我们的Ant安装目录。你还需要添加支持Tomcat的jar包和属性文件。同样在Window → Preferences → Ant → Runtime中,点击Add External JARs按钮,在Tomcat安装目录的/server/lib中选择catalina-ant.jar。添加到classpath中。然后点击Properties书签,点击Add Files按钮,选择项目lib\ant-contrib-1.0b1中的tomcatTasks.properties作为全局的属性文件。