Java项目:新闻消息发布系统(java+JSP+javascript+Servlet+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版本;
6.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目


技术栈

1. 后端:servlet
2. 前端:JSP+css+javascript


使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中news.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入http://localhost:8080/News
后台地址:http://localhost:8080/News/user?action=login
用户名:admin,密码:123456

 

 

 

 

 

品类控制层:

@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")
    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")));
        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
@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");

        Users users = (Users) request.getSession().getAttribute("loginUsers");
        Integer usersId = users.getId();

        Integer deptid = users.getDeptid();

        News news = new News();
        news.setCategoryid(Integer.parseInt(categoryid));
        news.setClicks(0);
        news.setContent(content);
        news.setPbdate(new Date());
        news.setPbdeptid(deptid);
        news.setPublisher(usersId);
        news.setCategoryid(Integer.parseInt(categoryid));
        news.setTitle(title);
        newsDao.save(news);
        return "redirect:listforadmin";
    }


    @RequestMapping("/listforadmin")
    public String listforadmin(){
        List<News> newsList = newsDao.queryAll();
        request.setAttribute("list", newsList);
        return "listnews";
    }





    @RequestMapping("/toaddnews")
    public String toaddnews(){
        List<News> newsList = newsDao.queryAll();
        request.setAttribute("list", newsList);
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("categoryList", categoryList);
        return "addnews";
    }


    @RequestMapping("/edit")
    public String edit(){
        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);
        return "editnews";
    }


    @RequestMapping("/queryByType")
    public String queryByType(){
        String categoryid = request.getParameter("categoryid");

        List<News> newsList = newsDao.queryAll();
        request.setAttribute("list", newsList.stream()
                .filter(x -> x.getCategoryid().equals(Integer.parseInt(categoryid))).collect(Collectors.toList()));
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("categoryList",
                categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));

        return "typenews";
    }


    @RequestMapping("/detail")
    public String detail(){
        //测试
        String id =  request.getParameter("id");
        if(id.contains(".jsp"))
        {
           id= request.getParameter("id").replaceAll(".jsp","");

        }

        News news = newsDao.queryByid(Integer.parseInt(id));

        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";
    }

    @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];

				}
			}else{
				title=split[0]+"<font color='red'>"+search+"</font>";
			}*/
            title=title.replace(search, "<font color='red'>"+search+"</font>");


            System.out.println(title);

            x.setTitle(title);

            return x;
        }).collect(Collectors.toList());

        request.setAttribute("list",newsList
        );
        List<Category> categoryList = categoryDao.queryAll();
        request.setAttribute("categoryList",
                categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));

        return "searchnews";
    }

}

源码获取:俺的博客首页 "资源" 里下载!

猜你喜欢

转载自blog.csdn.net/m0_66863468/article/details/125343000