`
eimhee
  • 浏览: 2150581 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jeecms 的体验

 
阅读更多

在ITEYE上看到很多JEECMS的帖子, 于是自己下载下来, 体验了一下。

 

JEECMS采用hibernate3+spring mvc+spring3+freemarker技术架构。

 

JEECMS的自定义模型吸引我了, 所谓自定义模型, 是能定义栏目或者内容的字段。界面如下

 

 



 

 

自己定义了栏目内容的模型, 然后看了一下数据库,

MariaDB [jeecms]> show table
+------------------------+
| Tables_in_jeecms       |
+------------------------+
| jc_acquisition         |
| jc_acquisition_history |
| jc_acquisition_temp    |
| jc_advertising         |
| jc_advertising_attr    |
| jc_advertising_space   |
| jc_channel             |
| jc_channel_attr        |
| jc_channel_ext         |
| jc_channel_model       |
| jc_channel_txt         |
| jc_channel_user        |
| jc_chnl_group_contri   |
| jc_chnl_group_view     |
| jc_comment             |
| jc_comment_ext         |
| jc_config              |
| jc_config_attr         |
| jc_content             |
| jc_content_attachment  |
| jc_content_attr        |
| jc_content_channel     |
| jc_content_check       |
| jc_content_count       |
| jc_content_ext         |
| jc_content_group_view  |
| jc_content_picture     |
| jc_content_tag         |
| jc_content_topic       |
| jc_content_txt         |
| jc_content_type        |
| jc_contenttag          |
| jc_dictionary          |

 

MariaDB [jeecms]> desc jc_content_attr;
+------------+--------------+------+-----+---------+-------+
| Field      | Type         | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| content_id | int(11)      | NO   | MUL | NULL    |       |
| attr_name  | varchar(30)  | NO   |     | NULL    |       |
| attr_value | varchar(255) | YES  |     | NULL    |       |
+------------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

 

自定义的字段都是存在  jc_content_attr 表当中,第一感觉jc_content_attr这个表会有性能问题,

虽然之后搜内容时, 会用lucence index, 但在hibernate显示页面都会查询这个表。
有些东西看似做的灵活, 内容一多,会存在性能问题。
 
接着看了一下动态页执行的controller
 
DynamicPageAct

	/**
	 * 动态页入口
	 */
	@RequestMapping(value = "/**/*.*", method = RequestMethod.GET)
	public String dynamic(HttpServletRequest request,
			HttpServletResponse response, ModelMap model) {
		// 尽量不要携带太多参数,多使用标签获取数据。
		// 目前已知的需要携带翻页信息。
		// 获得页号和翻页信息吧。
		int pageNo = URLHelper.getPageNo(request);
		String[] params = URLHelper.getParams(request);
		PageInfo info = URLHelper.getPageInfo(request);
		String[] paths = URLHelper.getPaths(request);
		int len = paths.length;
		if (len == 1) {
			// 单页
			return channel(paths[0], pageNo, params, info, request, response,
					model);
		} else if (len == 2) {
			if (paths[1].equals(INDEX)) {
				// 栏目页
				return channel(paths[0], pageNo, params, info, request,
						response, model);
			} else {
				// 内容页
				try {
					Integer id = Integer.parseInt(paths[1]);
					return content(id, pageNo, params, info, request, response,
							model);
				} catch (NumberFormatException e) {
					log.debug("Content id must String: {}", paths[1]);
					return FrontUtils.pageNotFound(request, response, model);
				}
			}
		} else {
			log.debug("Illegal path length: {}, paths: {}", len, paths);
			return FrontUtils.pageNotFound(request, response, model);
		}
	}
 
如果是栏目页就一定有index 字符, 就像http://localhost:8080/news/index.htm
现在CMS设计一般都会隐藏index.html, 还不如用urlrewrite 这样的开源JAR包重写一下。
看到这2个问题,  考虑是否真正用它来实现自己的系统, 或者重构一下, 有些东西还不如自己写一下。
  • 大小: 63.4 KB
1
3
分享到:
评论
1 楼 1127102203 2014-04-07  

相关推荐

    jeecms X1.0.1 正式版 源码包

     JEECMS一直秉承用户体验、系统性能和实际应用为第一的研发思路,让jeecms的功能不断丰富的同时,更让jeecms适合更多的应用人群。 根据用户反馈新增和完善的功能还有很多,诸如:支持百度编辑器ueditor、用户模型...

    jeecms9.2-adminVue

    - **Vue.js集成**:Jeecms 9.2-adminVue采用了前端框架Vue.js进行重构,提供更流畅的用户界面和交互体验,使得后台管理更加便捷。 - **模块化设计**:Jeecms遵循模块化设计原则,允许开发者轻松添加、修改或删除...

    jeecms二次开发必备

    同时,它支持多种浏览器,提供了良好的用户体验。 1.3 技术架构 Jeecms基于Java EE标准,采用了MVC设计模式,保证了代码的清晰和可维护性。其技术架构主要包括以下几个部分: - 跨操作系统平台:Jeecms可以在Linux...

    Jeecms开源内容管理系统

    7. 移动端适配:具备响应式设计,自动适应不同设备的屏幕尺寸,提供良好的移动浏览体验。 三、Jeecms的开发与使用 1. 开发环境:Jeecms需要Java环境(JDK)和Apache Tomcat服务器,同时需要IDE(如Eclipse或...

    jeecms 3.0

    Jeecms 3.0是基于Java开发的一款企业级内容管理系统,相较于它的前一版本2.0,3.0在功能、性能和用户体验上都进行了显著的升级与优化。作为一个专业的IT大师,我将深入解析Jeecms 3.0的关键特性、改进点以及它在实际...

    JEECMS 精简第二部分 共2

    综上所述,JEECMS精简第二部分主要是对原有系统的瘦身,保留了核心功能,提高了性能和用户体验。对于需要快速部署且资源有限的项目来说,这是一个理想的选择。然而,具体的功能和实现细节需要通过"ROOT2"中的源代码...

    Jeecms学习笔记

    优化可能包括提升性能、增强安全性、改善用户体验等方面。例如,可能需要优化SQL查询,避免SQL注入,或者使用缓存提高数据读取速度。注释的重点部分可以帮助我们快速理解关键改动及其原因。 5. **Jeecms的MVC架构**...

    ueditor for jeecms

    《UEditor for Jeecms:优化内容编辑体验的利器》 Jeecms是一款深受开发者喜爱的开源内容管理系统,它提供了丰富的功能和灵活的扩展性。然而,原生系统中的文本编辑器可能无法满足所有用户的需求,特别是在处理复杂...

    jeecms安装包

    例如,它可能提供了更强大的内容管理功能,支持多语言,改进了用户体验,或者增强了系统的安全性和稳定性。此外,Jeecmsv5可能还引入了更友好的后台管理界面,使得非技术人员也能轻松上手。 在开始安装Jeecmsv5之前...

    jeecms v6修改后台地址

    在IT行业中,网站的安全性和可定制性是至关重要的。Jeecms是一款基于Java的企业级内容管理系统,它允许开发者根据需求...在日常运维和开发中,保持对系统配置的熟悉和敏感,对于提高系统的稳定性和用户体验都至关重要。

    jeecms v2012版

    jeecms v2012版是一款集新闻管理、图库管理、视频管理、下载系统、作品管理、产品发布及留言板于一体的综合性...从2012版起,jeecms将更注重用户体验、系统性能和实际应用的研发,让jeecms的适用范围更广、使用更灵活。

    [JAVA开源]jeecms(网站发布系统)

    针对现代互联网的多设备访问需求,Jeecms支持移动适配和响应式布局,可以自动适应不同分辨率的屏幕,提供一致的用户体验。 8. **插件扩展** Jeecms的开放API和丰富的插件库允许开发者添加额外的功能,如评论系统...

    jeecms 源码包

    3. 界面定制:设计新的模板,提升用户体验。 4. 集成其他服务:例如与第三方支付、社交媒体等进行集成。 五、学习资源与社区 1. 官方文档:Jeecms通常会提供详细的开发者指南和API文档。 2. 社区论坛:参与Jeecms的...

    JSP CMS系统 JEECMS 1.rar

    开发者可以下载这个版本来体验JEECMS的功能,同时也可参与测试,提供反馈,以帮助改善系统。 在JEECMS中,开发者可以期待以下关键特性: 1. **模板引擎**:JEECMS可能使用自定义的模板语言,允许设计者根据需求定制...

    jeecms 终极版源码

    1. **前端模板**:这部分包含HTML、CSS和JavaScript文件,决定了网站的外观和交互体验。如果你有美工基础,你可以修改这些文件以定制网站的视觉样式。 2. **后端控制层**:这部分主要是Java代码,处理HTTP请求,执行...

    jeecms-2012-sp1

    主题 : java开源CMS系统-JEECMS v2012sp1版安装包下载帖. eecms 版是一款集新闻管理、...JEECMS一直秉承用户体验、系统性能和实际应用为第一的研发思路,让jeecms的功能不断丰富的同时,更让jeecms适合更多的应用人群

    jeecms微信小程序 v1.0.1

    3. **商品展示与交易**:对于电商类应用,Jeecms微信小程序可以实现商品分类、详情展示、购物车、订单管理等功能,支持微信支付,打造完整的在线购物体验。 4. **个性化设置**:提供主题模板选择和自定义配置,满足...

    JeeCms测试站点使用文档.zip

    JeeCMS支持缓存机制、静态化处理,通过合理的配置,可以提高系统响应速度和用户体验。 ### 10. 日志管理 日志记录对于问题排查和系统监控至关重要。JeeCMS内置了日志管理功能,可以查看系统运行日志,以便了解系统...

Global site tag (gtag.js) - Google Analytics