77范文网 - 专业文章范例文档资料分享平台

Jeecms开发学习笔记(2)

来源:网络收集 时间:2019-04-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Jeecms开发学习笔记

3.1.3从Act到Mng

依然是参考guestbook,我们看guestbookAct中这样一段代码:

@RequestMapping(value = \ public void submit(Integer siteId, Integer ctgId, String title, String content, String email, String phone, String qq, String captcha, HttpServletRequest request,

HttpServletResponse

response,

ModelMap

model)

JSONException {

CmsSite site = CmsUtils.getSite(request); CmsUser member = CmsUtils.getUser(request); if (siteId == null) { siteId = site.getId();

}

JSONObject json = new JSONObject(); try { if (!imageCaptchaService.validateResponseForID(session .getSessionId(request, response), captcha)) {

json.put(\ json.put(\

ResponseUtils.renderJson(response, json.toString()); return;

}

第 6 页 共 18 页

throws

Jeecms开发学习笔记

}

} catch (CaptchaServiceException e) { }

String ip = RequestUtils.getIpAddr(request);

cmsGuestbookMng.save(member, siteId, ctgId, ip, title, content, email,

phone, qq);

json.put(\json.put(\

ResponseUtils.renderJson(response, json.toString()); log.warn(\return;

json.put(\json.put(\

ResponseUtils.renderJson(response, json.toString());

@Autowired

private CmsGuestbookCtgMng cmsGuestbookCtgMng; @Autowired

private CmsGuestbookMng cmsGuestbookMng; @Autowired

private SessionProvider session; @Autowired

private ImageCaptchaService imageCaptchaService;

第 7 页 共 18 页

Jeecms开发学习笔记

Json我们不多做介绍,在Jeecms框架下,想要处理带有验证码提交的数据时,我们可以复制之后稍作修改,方法是平凡的,重点看红色框的部分。

第一个红色框框中用到了cmsGuestbookMng的save方法,下面的 json.put(\json.put(\

是关于验证码的信息,在html中的ajax提交方法有如下的判断:

if(data.status==0) {

alert(\留言成功\

location.href=location.href; } else if(data.status==1) { alert(\验证码错误\

$(\ }

显然地,status==0,提交就成功了。

第二个红色框框中用到了@Autowired注解,作用是数据在走Mng接口时bytype自动注入,与@Resource注解的byname形成对照。

这就实现了从Act到Mng,注入后可以使用Mng的save方法。

3.2Mng和MngImpl

3.2.1什么是Mng和MngImpl?

也就是manager接口和实现类,是业务逻辑层的重要的类。在Jeecms中,guestbook是特殊的,他有前端guestbook_index.html存入,有后端guestbook文件夹下3个页面的查询。这就意味着有两个Act会走这个Mng接口,相对的,guestbook的业务逻辑也会比较复杂。

第 8 页 共 18 页

Jeecms开发学习笔记

3.2.2Mng

仍然是guestbook,看它的代码:

public interface CmsGuestbookMng {

public Pagination getPage(Integer siteId, Integer ctgId,Integer userId, Boolean

recommend,

第 9 页 共 18 页

Boolean checked, boolean desc, boolean cacheable, int pageNo, int pageSize);

@Transactional(readOnly = true)

public List getList(Integer siteId, Integer ctgId,

Boolean recommend, Boolean checked, boolean desc, boolean cacheable, int first, int max);

public CmsGuestbook findById(Integer id);

public CmsGuestbook save(CmsGuestbook bean, CmsGuestbookExt ext,

Integer ctgId, String ip);

public CmsGuestbook save(CmsUser member, Integer siteId, Integer ctgId,

String ip, String title, String content, String email, String phone, String qq);

Jeecms开发学习笔记

public CmsGuestbook update(CmsGuestbook bean, CmsGuestbookExt ext,

Integer ctgId);

public CmsGuestbook deleteById(Integer id);

public CmsGuestbook[] deleteByIds(Integer[] ids);

public CmsGuestbook[] checkByIds(Integer[] ids,CmsUser checkUser,Boolean

checkStatus); }

这里没什么好说的,就是接口而已,我们不多看重点是下面的实现类。

3.2.3从MngImpl到Dao

Mng红色框框内对应的实现代码如下:

public CmsGuestbook save(CmsGuestbook bean, CmsGuestbookExt ext,

Integer ctgId, String ip) {

bean.setCtg(cmsGuestbookCtgMng.findById(ctgId)); bean.setIp(ip);

bean.setCreateTime(new Timestamp(System.currentTimeMillis())); bean.init(); dao.save(bean);

cmsGuestbookExtMng.save(ext, bean); return bean;

第 10 页 共 18 页

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Jeecms开发学习笔记(2)在线全文阅读。

Jeecms开发学习笔记(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/621657.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: