Java项目:SSM企业门户网站
创始人
2024-03-15 15:19:20
0次

作者主页:源码空间站2022

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

本项目分为前后台,前台主要用于官网展示,后台主要为管理员管理,

管理员角色包含以下功能:
管理员登录,文章分类管理,文章列表管理,友情链接管理,招聘管理,留言管理,滚动图片管理,联系我们,关于我们,网站管理员管理,日志管理等功能。

用户角色包含以下功能:

用户首页,关于我们,服务领域发布,新闻动态,诚聘英才,在线留言,联系我们等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 

5.数据库:MySql 5.7版本;

6.是否Maven项目:是;

技术栈

1. 后端:Spring+SpringMVC+Mybatis

2. 前端:JSP+CSS+JavaScript+bootstrap+jquery

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

3. 将项目中conf.properties配置文件中的数据库配置改为自己的配置;

4. 运行项目,输入localhost:8080/ 登录

运行截图

前台界面

管理端页面

代码相关

文章管理控制器

@Controller("frontArticleController")
@RequestMapping("/")
public class ArticleAction extends BaseController
{private static final String page_toList = "/front/article/articleList";private static final String page_toEdit = "/front/article/articleInfo";@Autowiredprivate ArticleService articleService;@Overridepublic Services
getService() {return articleService;}public ArticleAction(){super.page_toList = page_toList;super.page_toEdit = page_toEdit;}/*** 跳转到文章列表* @param request* @param article* @return* @throws Exception*/@RequestMapping("article")public String article(HttpServletRequest request, @ModelAttribute("e") Article article) throws Exception {this.initPageSelect();setParamWhenInitQuery(article);int offset = 0;if(request.getParameter("pager.offset")!=null){offset = Integer.parseInt(request.getParameter("pager.offset"));}if(offset < 0){offset=0;}article.setOffset(offset);PageModel page = getService().selectPageList(article);if(page == null){page = new PageModel();}page.setPageSize(10); //设置单页数据为10page.setPagerSize((page.getTotal() + page.getPageSize() - 1)/ page.getPageSize());selectListAfter(page);page.setPagerUrl("article");request.setAttribute("pager", page);return page_toList;}/*** 文章详情* @param code* @param model* @return* @throws Exception*/@RequestMapping("article/{code}")public String selectOne(HttpServletRequest request,@ModelAttribute("code")@PathVariable("code") String code,@ModelAttribute("e") Article article, ModelMap model) throws Exception {if(isInteger(code)) { //如果是数字 则为id 按id进行文章查询Article e = articleService.selectById(Integer.parseInt(code));e.setHit(String.valueOf(Integer.parseInt(e.getHit())+1));articleService.update(e); //更新浏览量 --优化建议:可使用缓存或者redis暂存 然后再刷入数据库Article next = articleService.selectNext(Integer.parseInt(code));if(next==null){next = new Article();}Article previous = articleService.selectPrevious(Integer.parseInt(code));if(previous==null){previous = new Article();}model.addAttribute("e", e);model.addAttribute("next", next);model.addAttribute("previous", previous);return page_toEdit;}else{//不是数字,则为分类编码for(ArticleCategory item: SystemManage.getInstance().getArticleCategory()){ //遍历分类缓存if(code.equals(item.getCode())){ //当编码相等时article.setCategoryId(String.valueOf(item.getId())); //把相等编码里的分类id值赋予文章中catagroyId中break; //跳出循环}}setParamWhenInitQuery(article);int offset = 0;if(request.getParameter("pager.offset")!=null){offset = Integer.parseInt(request.getParameter("pager.offset"));}if(offset < 0){offset=0;}article.setOffset(offset);PageModel page = getService().selectPageList(article);if(page == null){page = new PageModel();}page.setPageSize(10); //设置单页数据为10page.setPagerSize((page.getTotal() + page.getPageSize() - 1)/ page.getPageSize());selectListAfter(page);page.setPagerUrl(code);request.setAttribute("pager", page);request.setAttribute("code", code);return page_toList;}}/***判断是不是数字* @param code* @return*/public static boolean isInteger(String code){try {Integer.parseInt(code);return true;}catch (NumberFormatException e){return false;}} }

如果也想学习本系统,下面领取。关注并回复:069ssm 

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...