基于javaweb+mysql的新闻管理系统(java+SSM+HTML+JS+jsp+mysql)

项目介绍
管理员角色包含以下功能:
管理员登录,新闻管理,类别管理,用户管理,管理员管理,广告管理等功能。
用户角色包含以下功能:
新闻主页,新闻分类查看,查看新闻细节,用户登录,评论新闻等功能。

环境需要
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版本;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis
  2. 前端:HTML+CSS+JavaScript+jsp

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
  2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
  3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
  4. 运行项目,输入localhost:8080/ 登录请添加图片描述
    请添加图片描述
    请添加图片描述
    请添加图片描述
    请添加图片描述
    请添加图片描述

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

        request.setAttribute("categoryList",
                categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));
        return "detailnews";
    }
    @RequestMapping("/search")
    public String search(){
        String search = request.getParameter("search");
        request.setAttribute("searchStr", search);
        List<News> newsList = newsDao.queryAll();
        newsList=newsList.stream().filter(x -> x.getTitle().contains(search)).collect(Collectors.toList());
        newsList=	newsList.stream().map(x->{
            String title = x.getTitle();
            /*			String[] split = title.split(search);
             */
			/*if(split.length>=2){
				for(int i=0;i<split.length-1;i++){
			title=split[i]+"<font color='red'>"+search+"</font>"+split[i+1];
    }
}
类别管理控制层: 
@Controller
@RequestMapping("CategoryServlet")
public class CategoryController {
    @Autowired
    private HttpServletRequest request;
    private CategoryDao categoryDao=new CategoryDao();
    @RequestMapping("/listforadmin")
    public String listforadmin(){
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("list", categoryList);
        return "listcategory";
    }
    @RequestMapping("/show")
        news.setClicks(news.getClicks() + 1);
        newsDao.setClicksIncrement(news);
        NewsDetail detail = new NewsDetail();
        detail.setNews(news);
        Category category = categoryDao.queryById(news.getCategoryid());
        detail.setCategory(category);
        String content = news.getContent();
        int length = content.length();
        length = length / 60;
        length = length * 27 + 10;
        request.setAttribute("length", length);
        request.setAttribute("v", detail);
        List<Category> categoryList = categoryDao.queryAll();
        List<Comments> commentsList = commentsDao.getByNewsId(news.getId());
        request.setAttribute("commentsList", commentsList);
        request.setAttribute("contentstr", content);
        request.setAttribute("categoryList",
                categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));
        return "detailnews";
    }
        List<Comments> commentsList = commentsDao.getByNewsId(news.getId());
        request.setAttribute("commentsList", commentsList);
        request.setAttribute("contentstr", content);
        request.setAttribute("categoryList",
                categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));
        return "detailnews";
    }
    @RequestMapping("/search")
    public String search(){
        String search = request.getParameter("search");
        request.setAttribute("searchStr", search);
        List<News> newsList = newsDao.queryAll();
        newsList=newsList.stream().filter(x -> x.getTitle().contains(search)).collect(Collectors.toList());
        newsList=	newsList.stream().map(x->{
            String title = x.getTitle();
            /*			String[] split = title.split(search);
             */
        String title = request.getParameter("title");
        String content = request.getParameter("content");
        String categoryid = request.getParameter("categoryid");
        News news = new News();
        news.setCategoryid(Integer.parseInt(categoryid));
        news.setContent(content);
        news.setPbdate(new Date());
        news.setId(Integer.parseInt(request.getParameter("id")));
        news.setTitle(title);
        newsDao.edit(news);
        return "redirect:listforadmin";
    }
    @RequestMapping("/del")
    public String del(){
        newsDao.deleteById(Integer.parseInt(request.getParameter("id")));
        List<News> newsList = newsDao.queryAll();
        request.setAttribute("list", newsList);
        return "listnews";
    }
    @RequestMapping("/toeditnews")
    public String toeditnews(){
        News news = newsDao.queryByid(Integer.parseInt(request.getParameter("id")));
        request.setAttribute("v", news);
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("categoryList", categoryList);
    }
    @RequestMapping("/del")
    public String del(Integer id) {
        usersDao.del(id);
        List<Users> list = usersDao.getUsers();
        request.setAttribute("list", list);
        return "listusers";
    }
}
新闻管理控制层:
@Controller
@RequestMapping("NewsServlet")
public class NewsController {
    @Autowired
    private HttpServletRequest request;
    private NewsDao newsDao = new NewsDao();
    private CategoryDao categoryDao = new CategoryDao();
    private CommentsDao commentsDao = new CommentsDao();
    @RequestMapping("/publish")
    public String publish(){
        String title = request.getParameter("title");
        String content = request.getParameter("content");
        String categoryid = request.getParameter("categoryid");
    @RequestMapping("/hidden")
    public String hidden(){
        categoryDao.hidden(Integer.parseInt(request.getParameter("id")));
        return "redirect:listforadmin";
    }
    @RequestMapping("/add")
    public String add(){
        String name=request.getParameter("name");
        String state=request.getParameter("state");
        Category category=new Category();
        category.setName(name);
        category.setState(state);
        categoryDao.save(category);
        return "redirect:listforadmin";
    }
}
    }
    @RequestMapping("/search")
    public String search(){
        String search = request.getParameter("search");
        request.setAttribute("searchStr", search);
        List<News> newsList = newsDao.queryAll();
        newsList=newsList.stream().filter(x -> x.getTitle().contains(search)).collect(Collectors.toList());
        newsList=	newsList.stream().map(x->{
            String title = x.getTitle();
            /*			String[] split = title.split(search);
             */
			/*if(split.length>=2){
				for(int i=0;i<split.length-1;i++){
			title=split[i]+"<font color='red'>"+search+"</font>"+split[i+1];
        }
    }
    @RequestMapping("/hidden")
    public String hidden(){
        categoryDao.hidden(Integer.parseInt(request.getParameter("id")));
        return "redirect:listforadmin";
    }
    @RequestMapping("/add")
    public String add(){
        String name=request.getParameter("name");
        String state=request.getParameter("state");
        Category category=new Category();
        category.setName(name);
        category.setState(state);
        categoryDao.save(category);
        return "redirect:listforadmin";
    }
}
用户管理控制层:
@Controller
    @Autowired
    private HttpServletRequest request;
    @RequestMapping("/loginadmin")
    public String loginadmin() {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        Users users = usersDao.login(username, password);
        if (users != null) {
            request.getSession().setAttribute("loginUsers", users);
            return "admin_index";
        } else {
            request.setAttribute("msg", "登录失败,账号密码不匹配");
            return "admin_login";
        }
    }
    @RequestMapping("/userlogin")
    public String userlogin() {
        String userName = request.getParameter("username");
        String password = request.getParameter("password");
        String clientCheckcode = request.getParameter("validateCode");
        String serverCheckcode = (String) request.getSession().getAttribute("checkcode");
        if (clientCheckcode.equals(serverCheckcode)) {
            // 2. 去访问dao , 看看是否满足登录。
            Users Users = usersDao.userlogin(userName, password);
            // 3. 针对dao的返回结果,做出响应
    private HttpServletRequest request;
    private CategoryDao categoryDao=new CategoryDao();
    @RequestMapping("/listforadmin")
    public String listforadmin(){
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("list", categoryList);
        return "listcategory";
    }
    @RequestMapping("/show")
    public String show(){
        List<Category> categoryList = categoryDao.queryAll();
        categoryList=categoryList.stream().filter(x->x.getState().equals("1")).collect(Collectors.toList());
        if(categoryList.size()>=5)
        {
            request.setAttribute("list", categoryDao.queryAll());
            request.setAttribute("msg","设置栏目显示失败,前台栏目最多显示5个");
            return "listcategory";
        }else {
            categoryDao.show(Integer.parseInt(request.getParameter("id")));
            return "redirect:listforadmin";
        }
    }
    @RequestMapping("/hidden")
    public String hidden(){
        categoryDao.hidden(Integer.parseInt(request.getParameter("id")));

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值