库内新增对象Products 的流程说明:

第一步:

com.jeecms.cms.entity.assist.base下建立模型基础类,BaseCmsProducts.java

com.jeecms.cms.entity.assist  下建立对象类继承继承模型,CmsProducts.java

com.jeecms.cms.entity.assist.hbm

配置hibernate对象映射,CmsProducts.hbm.xml

src .ehcache-hibernate.xml 缓存对象配置:

<cache name="com.jeecms.cms.entity.assist.CmsProducts"

maxElementsInMemory="100" eternal="false" timeToIdleSeconds="600"timeToLiveSeconds="7200" overflowToDisk="true"/>

第二步:

com.jeecms.cms.dao.assist与数据库交互的持久层DAO接口和实现,ProductsDao.java , ProductsDaoImpl.java ;

配置WebRoot/WEB-INF/config/jeecms-context.xml文件:

<bean id="cmsproductsDao"

class="com.jeecms.cms.dao.assist.impl.CmsProductsDaoImpl"/>

第三步:

com.jeecms.cms.manager.assist

业务层接口和实现,ProductsMng.java , ProductsMngImpl.java

配置WebRoot/WEB-INF/config/jeecms-context.xml文件:

<bean id="cmsProductsMng"

class="com.jeecms.cms.manager.assist.impl.CmsProductsMngImpl"/>

第四步(Action):

com.jeecms.cms.action.front

写Action与前台对接,ProductsAct.java

XML配置:

jeecms-servlet-front-action.xml

<bean id="productsAct"

class="com.jeecms.cms.action.front.ProductsAct"/>

com.jeecms.cms.action.admin.assist (对象添加、删除、修改)

写Action与后台对接, CmsProductsAct.java

XML配置:

jeecms-servlet-admin-action.xml

<bean id="cmsProductsAct"

class="com.jeecms.cms.action.admin.assist.CmsProductsAct"/>

第五步(Directive):

com.jeecms.cms.action.directive (设置并返回标签对象[@cms_products_page])

配置WebRoot/WEB-INF/config/jeecms-context.xml文件:

<bean id="cms_products_page"

class="com.jeecms.cms.action.directive.CmsProductsDirective"/>

<bean id="staticPageSvc"class="com.jeecms.cms.staticpage.StaticPageSvcImpl">

<property name="tplMessageSource"ref="tplMessageSource"/>

<property name="freeMarkerConfigurer">

<bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">

<property name="freemarkerVariables">

<map>

此处添加标签的配置信息:

<entry key="cms_products_page"value-ref="cms_products_page"/>

配置WebRoot/WEB-INF/config/ Jeecms-servlet-front.xml文件:

<bean id="freemarkerConfig"class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">

<property name="freemarkerVariables">

<map>

此处添加标签的配置信息:

<entry key="cms_products_page"value-ref="cms_products_page" />

特别注意点:

对象模板位置控制:

com.jeecms.cms.action.front.ProductsAct.java

//方案路径site.getSolutionPath()=”/WEB-INF/t/cms/www/default”

//TPLDIR_SPECIAL="special" 模板位置

// PRODUCTS_INDEX="tpl.productsIndex"; 模板名称

return FrontUtils.getTplPath(request,site.getSolutionPath(),

TPLDIR_SPECIAL, PRODUCTS_INDEX);

PRODUCTS_INDEX对象需要在国际化处进行设置:

WebRoot/WEB-INF/languages/jeecms_tpl/messages_zh_CN.properties:

tpl.productsIndex=products_index

国际化文件说明:

WEB-INF/languages/fck  友情提示

WEB-INF/languages/jeecms_admin  (后台)功能页面,如:首页》内容统计statistic.function.content=内容统计

WEB-INF/languages/jeecms_front  (前台)友情提示,如:验证码错误。

WEB-INF/languages/jeecms_tpl    (前台)功能页面,如:投票内容页,tpl.tagDetail=voteIndex

WEB-INF/languages/jeecore_admin 功能按钮、提示信息,如:global.submit=提交,global.confirm.logout=您确定退出吗?
---------------------
作者:shy13078
来源:CSDN
原文:https://blog.csdn.net/shy13078/article/details/34425573
版权声明:本文为博主原创文章,转载请附上博文链接!

jeecms系统_自定义对象流程的更多相关文章

  1. JS自定义对象以及相关成绩系统完整案例演示

    [自定义对象] 1.基本概念 ①对象是拥有一系列无无序属性和方法的集合 ②键值对:对象中的数据,用以键值对的形式存在,对象的每个属性和方法,都对应一个键值,以键取值 ③属性:描述对象特征的一系列变量称 ...

  2. 5、前端--js常量、变量、5种基本数据类型(number string boolean undefined object)、运算符、流程控制、三元运算符、函数、自定义对象、内置对象、BOM操作

    变量与常量 在JS中声明变量需要使用关键字 老版本 var(全部都是全局变量) 新版本 let(可以声明局部变量) # 推荐使用let(其实问题不大) 在JS中声明常量也需要使用关键字 const # ...

  3. 系统右键自定义功能-右键备份【C#】

    平时在某些公司发布网站的时候,都是手动备份文件,以免发布错误,做回滚使用.频繁的发布,在做备份的时候也会稍稍浪费点时间.当然在一些大的公司都会有一些自动发布系统,就不会出现这种问题了,对这种问题,我做 ...

  4. 利用commons-pool2自定义对象池

    一.为什么使用对象池   恰当地使用对象池化技术,可以有效地减少对象生成和初始化时的消耗,提高系统的运行效率.commons-pool2是Apache下一个开源的公共资源池.我们可以根据它来快速的建立 ...

  5. ASP.NET Core的路由[2]:路由系统的核心对象——Router

    ASP.NET Core应用中的路由机制实现在RouterMiddleware中间件中,它的目的在于通过路由解析为请求找到一个匹配的处理器,同时将请求携带的数据以路由参数的形式解析出来供后续请求处理流 ...

  6. 路由系统的核心对象——Router

    路由系统的核心对象--Router ASP.NET Core应用中的路由机制实现在RouterMiddleware中间件中,它的目的在于通过路由解析为请求找到一个匹配的处理器,同时将请求携带的数据以路 ...

  7. iOS开发——UI进阶篇(十一)应用沙盒,归档,解档,偏好设置,plist存储,NSData,自定义对象归档解档

    1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每 ...

  8. 迅为4412开发板Linux驱动教程——总线_设备_驱动注册流程详解

    本文转自:http://www.topeetboard.com 视频下载地址: 驱动注册:http://pan.baidu.com/s/1i34HcDB 设备注册:http://pan.baidu.c ...

  9. JSON对象(自定义对象)

    JSON对象(自定义对象) 1.什么是JSON对象 JSON对象是属性的无序集合,在内存中也表现为一段连续的内存地址(堆内存) 1)JSON对象是属性的集合 2)这个集合是没有任何顺序的 2.JSON ...

随机推荐

  1. (转)Wireshark "The NPF driver isn’t running…"(

    转:http://blog.sina.com.cn/s/blog_4bfd07180100e3ar.html 前几天重装系统,装上了windows7 RC系统.昨天开始尝试装上了wireshark 这 ...

  2. final、static、package、import,和内部类、代码块总结

    final: final是最终修饰符,可以修饰类.成员方法.变量 final修饰的类无法被继承 final修饰的方法无法被重写 final修饰的变量无法被再次赋值,变为了常量 final修饰的引用数据 ...

  3. Java之实现多线程

    保证同步的几种方法: (1) 同步方法,synchronized 关键字修饰方法.由于Java中的每个对象都有一个内置锁,当用该关键词修饰时,内置锁会保护整个方法.在调用该方法前,需要获得内置锁,否则 ...

  4. 【学术篇】NOIP2016 D1T3 luogu1850换教室

    题目链接:点击这里献出你宝贵的时间(是用来做题不是捐赠Emmmm).. Emmmm我太弱了= = 做完这题我觉得我应该去打星际..这题怎么就有重边了呢.. 这题就是一道期望= =当时考场上好像完全不会 ...

  5. 21分钟教会你分析MaxCompute账单

    背景 阿里云大计算服务MaxCompute是一款商业化的大数据分析平台,其计算资源有预付费和后付费两种计费方式.并且产品每天按照project为维度进行计量计费(账单基本情况下会第二天6点前产出).本 ...

  6. 菜鸟nginx源码剖析数据结构篇(六) 哈希表 ngx_hash_t(上)[转]

    菜鸟nginx源码剖析数据结构篇(六) 哈希表 ngx_hash_t(上) Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.c ...

  7. Android基础控件SeekBar拖动条的使用

    1.简介 SeekBar继承ProgressBar,相关属性和三种不同状态下的触发方法: <!--<SeekBar--> <!--android:layout_width=&q ...

  8. Android基础控件ToggleButton和Switch开关按钮

    1.简介 ToggleButton和Switch都是开关按钮,只不过Switch要Android4.0之后才能使用! ToggleButton <!--checked 是否选择--> &l ...

  9. iOS之UIGraphics.h方法简介

    // // UIGraphics.h // UIKit // // Copyright (c) 2005-2017 Apple Inc. All rights reserved. // #import ...

  10. disruptor 高效队列

    disruptor 是什么: disruptor 是一个 低延时的 无锁 环形 队列.  相较于 java的 队列 ,他有明显的优点  ,无界,无锁,低延时(解决了为内存共享问题 ) disrupto ...