Appfuse:起步
在众多开源的Java开源CMS中探索了很久,终于选定了appfuse,理由如下:
1. 简洁:只搭建了框架,没有做多余的事
2. 完成了基本的用户管理:用户、角色、权限的定义很清晰
3. 符合预期的架构要求:SpringMVC + Hibernate + Velocity
4. 基于Maven搭建
更多appfuse的能力请参考博文 初识appfuse
准备开始!
1. 基于Maven创建项目(基于SpringMVC的版本):
mvn archetype:generate -B -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-spring-archetype -DarchetypeVersion=3.5.0 -DgroupId=com.disappearwind -DartifactId=windcms -DarchetypeRepository=https://oss.sonatype.org/content/repositories/appfuse
更多框架架构选择请上官网 http://appfuse.org/pages/viewpage.action?pageId=3866645 ,请注意做好墙的工作,否则脚本不执行
2. 获取项目的源代码
mvn appfuse:full-source
3. 修改数据库连接(pom.xml文件)
如果找不到properties节点,则在pom.xml文件的</project> 上面加,否则在properties节点下直接加
<properties>
<jdbc.username>root</jdbc.username>
<jdbc.password>root</jdbc.password>
<jdbc.url><![CDATA[jdbc:mysql://localhost:3306/appproject?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8]]></jdbc.url>
</properties>
4. 跑起来!!!
mvn jetty:run
5. 中文乱码
复制出本身的中文ApplicationResources文件,然后每次修改复制的文件,调用以下代码重新生成目标文件。(方案有点挫,有待改进!)
native2ascii -encoding utf-8 "E:\workspaces\windcms\src\main\resources\ApplicationResources_zh_source.properties" "E:\workspaces\windcms\src\main\resources\ApplicationResources_zh.properties"
一些在探索过程中帮助过我的网站,表示感谢!
http://www.360doc.com/content/14/0107/16/1332348_343357577.shtml
http://www.ibm.com/developerworks/cn/java/j-lo-appfuse/
http://www.yiibai.com/jstl
http://blog.csdn.net/randyjiawenjie/article/details/7909779
Appfuse:起步的更多相关文章
- AppFuse 3常见问题与解决方法
非常长一段时间没做SSH项目了.近期抽出时间看了一下升级到3.x的appfuse,对新版本号使用过程中出现的一些问题进行了排查.汇总例如以下.以备后用.本文原文出处: http://blog.csdn ...
- [NodeJS] Hello World 起步教程
概述: 做数据,免不了需要展示数据,数据可视化是必须经历的步骤. 本文将提供一个NodeJS的起步教程,是笔者这两天探索的小结. 正文: 1. 为什么使用NodeJS 究竟是以B/S还是C/S的架构 ...
- Appfuse:权限控制
Appfuse的权限控制依赖于Struts的Menu机制,common下的menu.jsp是对菜单顺序的定义,详细的菜单项和菜单链接及权限再menu-config.xml中控制,如下: <Men ...
- Appfuse:记录操作日志
appfuse的数据维护操作都发生在***form页面,与之对应的是***FormController,在Controller中处理数据的操作是onSubmit方法,既然所有的操作都通过onSubmi ...
- Appfuse:扩展自己的GenericManager
通过代码生成机制的appfuse访问数据都通过GenericManager来实现,GenericManager默认提供了以下几个方法: package org.appfuse.service; imp ...
- Appfuse:第一张表维护
1. 建立表userinfo 列名 描述 UserID 主键.自增 UserName 用户名 Pwd 密码 CreateDate 创建日期 2. 在src/main/resources目录下增加文件h ...
- Node.js起步 -- (1)
先来简单介绍nodeJS 我们知道JavaScript是运行在浏览器中的,浏览器为它提供了一个上下文(context),从而让JavaScript得以解析执行. nodeJS其实可以这么理解,它是另外 ...
- Linux上的SQL Server的起步
我们知道,几个星期前,微软发布了在Linux上直接运行的SQL Server第一个公开CTP版本!因此,对我来说,是时候跨界在Linux上安装我的第一个SQL安装,这样的话,我就可以在Linux上折腾 ...
- 学习 AppFuse
1.Appfuse是个什么鬼? AppFuse是一个集成了当前最流行的Web应用框架的一个更高层次的Web开发框架.换句话说,AppFuse就是一个完整的各主流框架的整合版本.AppFuse总是能够紧 ...
随机推荐
- 最好的简明NodeJS学习材料
http://www.nodebeginner.org/index-zh-cn.html http://debuggable.com/posts/understanding-node-js:4bd98 ...
- 有意思的Python:开发和部署一览
我觉得在有时间的条件下,学习不同的开发语言,对于保持对技术的理解是有帮助的. Python是一门这样简单而且有趣的语言.网上资料已经比较多了.我这里主要对开发和部署环境所涉及的几个工具做些介绍. 1. ...
- gradle学习笔记
一直想着花时间学习下gradle,今天有空.入门一下.参考:极客学院gradle使用指南,官方文档:gradle-2.12/docs/userguide/installation.html,以及百度阅 ...
- git配置
安装完成git之后基本就可以使用了,但是,有些配置还是需要的. 在任何一个目录下,右键 Git Bash Here, 然后输入: 1.设置用户名和邮箱 $ git config --global us ...
- WPF模糊效果(BlurEffect)
<TextBlock Padding="10" Text="设置模糊" FontSize="32" Background=" ...
- 背水一战 Windows 10 (22) - 绑定: 通过 Binding 绑定对象, 通过 x:Bind 绑定对象, 通过 Binding 绑定集合, 通过 x:Bind 绑定集合
[源码下载] 背水一战 Windows 10 (22) - 绑定: 通过 Binding 绑定对象, 通过 x:Bind 绑定对象, 通过 Binding 绑定集合, 通过 x:Bind 绑定集合 作 ...
- javascript严格模式
设立"严格模式"的目的,主要有以下几个: 1. 消除Javascript语法的一些不合理.不严谨之处,减少一些怪异行为; 2. 消除代码运行的一些不安全之处,保证代码运行的安全: ...
- 虚拟机安装ubuntu问题解决办法
vmware workstation 10安装ubuntu 13.10看不到下一步,如图所示 解决办法:如果不能调整安装程序的窗口大小,就按住Alt往上托窗口,应该就可以看到右下方的"下一步 ...
- 从零开始学Python第七周:面向对象进阶(需修改)
一,类的属性 (1)示例 通过属性获取已经创建对象的个数 class Plane: pCount = 0 #类属性 def __init__(self,name,category): self.nam ...
- 转载:《TypeScript 中文入门教程》 15、可迭代性
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 可迭代性 当一个对象实现了Symbol.iterator属性时,我们认为它是可迭代的. ...