库内新增对象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. python封装email模块

    一.代码 from email.mime.text import MIMEText from email.header import Header from email.utils import pa ...

  2. JSF(JavaServer Faces)简介

    JavaServer Faces (JSF) 是一种用于构建Java Web 应用程序的标准框架(是Java Community Process 规定的JSR-127标准).它提供了一种以组件为中心的 ...

  3. Linux文本编辑命令

    sort 排序工具,比较排序(根据字典排序) -t 指定分隔符(默认是空格) -k 指定第几域排序(默认第一域) -n 以数字大小排序 -r 逆向排序 -v 去掉重复行 -o 输出到文件中 -c 测试 ...

  4. 【bzoj 2870】 最长道路tree

    题目 边分治 边分和点分相比就是找到一条重心边,考虑所有经过这条边的路径,之后断开这条边分成两个联通块,继续分治 由于每次分治重心是一条边,所以只会产生两个联通块,考虑两个联通块显然要比像点分那样考虑 ...

  5. JS中鲜为人知的问题: [] == ![]结果为true,而 {} == !{}却为false

    console.log( [] == ![] ) // true console.log( {} == !{} ) // false 在比较字符串.数值和布尔值的相等性时,问题还比较简单.但在涉及到对 ...

  6. LVS/Nginx/HAProxy负载均衡器的对比分析

    转自:http://www.blogjava.net/ivanwan/archive/2013/12/25/408014.html LVS的特点是: 抗负载能力强.是工作在网络4层之上仅作分发之用,没 ...

  7. JS 标签页切换(复杂)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  8. AndroidStudio 添加翻译插件

    添加方式 第一步 在AndroidStudio的菜单栏里找到 File > Settings > 点击 . 第二步 点击Plugins > 在点击Marketplace 等待插件列表 ...

  9. bootstrap table 实现固定悬浮table 表头并可以水平滚动

    在开发项目中,需要将表格头部固定,而且表格大多数情况下是会水平滚动的.项目的css框架是bootstrap 3,故也可以叫做bootstrap table. 需要实现的是:表格头部固定,并且支持水平滚 ...

  10. loj2494 [hnoi2018]寻宝游戏

    题意:给你n个元素的数组a.你可以在每个元素之前添加and和or的符号.每次询问最后变成r有多少种添号情况. n<=1000,m<=5000,q<=1000. 标程: #includ ...