库内新增对象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="" eternal="false" timeToIdleSeconds="" timeToLiveSeconds="" 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=您确定退出吗?

新增对象Products 的流程说明的更多相关文章

  1. jeecms v9库内新增对象的流程及其他技巧

    cms 开发 ———— 库内新增对象 Products 的流程说明及其他技巧 第一步:Entity com.jeecms.cms.entity.assist.base下建立模型基础类BaseCmsPr ...

  2. ES6新增对象方法的访问描述符:get(只读)、set(只写)

    Es6新增对象方法的访问描述符:get(只读).set(只写),可以直接使用,一般用于数据监听,用途类似于vue.$watch. var obj = { a:1, get bar() { return ...

  3. mybatis新增对象自动生成uuid方案

    mybatis新增对象时, 使用拦截器自动生成uuid方案有了它不再去xml中手动添加selectKey了, 生成id方案实现类自行实现, 实现IdGenerator接口便可, 主要代码由公司同事编写 ...

  4. spring中容器和对象的创建流程

    容器和对象的创建流程 1.先创建容器 2.加载配置文件,封装成BeanDefinition 3.调用执行BeanFactoryPostProcessor 准备工作: 准备BeanPostProcess ...

  5. objc_msgSend消息传递学习笔记 – 对象方法消息传递流程

    在Effective Objective-C 2.0 – 52 Specific Ways to Improve Your iOS and OS X Programs一书中,tip 11主要讲述了Ob ...

  6. javascript EcmaScript5 新增对象之Object.freeze

    我们都知道在js里对象是很容易改变的 var obj1 ={ a:'111' } obj1.a = '222'; console.log( obj.a ) //output 222 对象的属性发生了变 ...

  7. Vue动态新增对象属性

    Vue.set( target, key, value ) 参数: {Object | Array} target {string | number} key {any} value 返回值:设置的值 ...

  8. vue双向数据绑定对于数组和新增对象属性不能监听的解决办法

    出现数组不能按照索引进行跟新的原因是处于性能考虑的,但是整体数组的增加删除是可以监听到的:对于对象新增属性不能监听是因为没有在生成vue实例时候放进watcher收集依赖. 首先我们先来了解vue数据 ...

  9. ECMAScript5新增对象语法糖getter和setter

    在新的ECMAScript5中新添加了两个语法糖,这两个语法糖是这样的. var obj = (function(){ var num = 10; return { get n(){ return n ...

随机推荐

  1. Http学习(一)

    HTTP 超文本传输协议 综述: HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从 ...

  2. os.path.dirname(__file__)使用、Python os.path.abspath(__file__)使用

    python中的os.path.dirname(__file__)的使用 - CSDN博客https://blog.csdn.net/u011760056/article/details/469698 ...

  3. openstack各组件介绍

    Nova:计算服务,通过虚拟化技术,实现虚拟机的创建,管理,删除,是openstack中最核心的服务. Neutron:网络服务,为虚拟机提供网络连接服务,就像物理机的交换机和路由器一样 Glance ...

  4. js 删除数组中指定值

    var arr = ['1','2'];delete('1'); function delete(i){ var index = arr.indexOf(i); arr.splice(index, 1 ...

  5. 在Eclipse中修改Jsp页面的新增模板

    打开Eclipse的Preferences页面 路径: Window à Preferences 搜索"jsp",点击"Templates",选择要修改的Jsp ...

  6. virtualbox导入winXP系统OVA文件重启

    1,开启虚拟机 2,按f8进入安全模式,然后修改注册表: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Processor HKEY_LOC ...

  7. php7 mysql_pconnect() 缺失 解决方法

    php7 兼容 MySQL 相关函数 PHP7 废除了 ”mysql.dll” ,推荐使用 mysqli 或者 pdo_mysql http://PHP.net/manual/zh/mysqlinfo ...

  8. leetcode-337-打家劫舍三*

    题目描述: 方法一:递归 # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): ...

  9. CF1166D——数学公式思维题

    #include<bits/stdc++.h> using namespace std; #define ll long long ll ans[],a,b,m; /* b=2^(n-2) ...

  10. Joomla - 优化(时区、google字体、压缩图片、压缩自定义代码)

    Joomla - 优化(时区.google字体.压缩图片.压缩自定义代码) 一.时区 发布文章是往往会发现发布时间和当前时间对不上,原因是 Joomla 用的是国际标准时间,和中国时区大约相差8小时, ...