项目背景
说说项目背景吧,之所以会用到这个开源项目呢,是因为我们公司要做一个自己的门户网站。要求速度和质量。所以了在众多因素下我们选择了这个开源的项目。
下载项目及项目相关资料
https://git.oschina.net/sanluan/PublicCMS-lib
http://www.publiccms.com/
项目结构
可以说这个项目的项目目录结构还是比较清晰的大概就是我们说的mvc模式了
快速上手及二次开发
1.首先将项目启动起来,进入这个页面。
2. 后台的一些东西。和创建模板的东西自己百度看看哇这里就不介绍了。基本就是拿到前端给的html页面后在后台配置一个基本就出来了。重点是需要进行二次开发的东西这里就重点讲一下了。并且配上代码。
3.我们讲一下如何提交表单数据到后台。和后台页面产生表格查看吧
这里我们需要提交询价信息。
4.代码实现
1.控制器
package com.publiccms.controller.admin.message;
import static com.sanluan.common.tools.JsonUtils.getString;
import static com.sanluan.common.tools.RequestUtils.getIpAddress;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import com.publiccms.common.base.AbstractController;
import com.publiccms.entities.log.LogOperate;
import com.publiccms.entities.message.EnquiryMessage;
import com.publiccms.entities.sys.SysSite;
import com.publiccms.logic.service.log.LogLoginService;
import com.publiccms.logic.service.message.EnquiryMessageService;
import com.publiccms.logic.service.sys.SysDomainService;
/**
*
* @ClassName: EnquiryAdminMessageController
* @Description:(项目询价)
* @author Sirius_KP
* @date 2017-3-8 下午5:41:33
*/
@Controller
@RequestMapping("enquiryMessage")
public class EnquiryAdminMessageController extends AbstractController {
@Autowired
private EnquiryMessageService service;
private String[] ignoreProperties = new String[] { "id" };
@RequestMapping("save")
public String save(EnquiryMessage entity, HttpServletRequest request, HttpSession session) {
try {
if (notEmpty(entity.getId())) {
entity = service.update(entity.getId(), entity, ignoreProperties);
} else {
entity.setCreate_time(new Date());
service.save(entity);
}
} catch (Exception e) {
e.printStackTrace();
return TEMPLATE_ERROR;
}
return TEMPLATE_DONE;
}
@SuppressWarnings("unchecked")
@RequestMapping("delete")
public String delete(Integer id, HttpServletRequest request, HttpSession session, ModelMap model) {
SysSite site = getSite(request);
if (verifyCustom("noright", !siteComponent.isMaster(site.getId()), model)) {
return TEMPLATE_ERROR;
}
EnquiryMessage entity = service.getEntity(id);
if (null != entity) {
service.delete(id);
//记录日志
Long userId = getAdminFromSession(session).getId();
Date now = getDate();
String ip = getIpAddress(request);
logOperateService.save(new LogOperate(site.getId(), userId, LogLoginService.CHANNEL_WEB_MANAGER, "delete.site", ip,
now, getString(entity)));
}
return TEMPLATE_DONE;
}
}
package com.publiccms.controller.web.message;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.publiccms.common.base.AbstractController;
import com.publiccms.entities.message.EnquiryMessage;
import com.publiccms.logic.service.message.EnquiryMessageService;
/**
*
* @ClassName: EnquiryMessageController
* @Description:(项目询价)
* @author Sirius_KP
* @date 2017-3-8 下午5:43:04
*/
@Controller
@RequestMapping("enquiryMessage")
public class EnquiryMessageController extends AbstractController {
@Autowired
private EnquiryMessageService service;
private String[] ignoreProperties = new String[] { "id" };
@RequestMapping("save")
@ResponseBody
public String save(EnquiryMessage entity, HttpServletRequest request, HttpSession session) {
try {
if (notEmpty(entity.getId())) {
entity