——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明






基于javaweb的JSP+Servlet新闻消息发布系统(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项目
技术栈
- 后端:servlet 2. 前端:JSP+css+javascript
使用说明
- 使用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
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
public class NewsTypeServlet extends HttpServlet{
private static final long serialVersionUID = 1L; DbUtil dbUtil=new DbUtil(); NewsDao newsDao=new NewsDao(); NewsTypeDao newsTypeDao=new NewsTypeDao(); @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); }
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String action=request.getParameter("action"); if("preSave".equals(action)){ this.newsTypePreSave(request, response); }else if("save".equals(action)){ this.newsTypeSave(request, response);
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| e.printStackTrace(); }finally{ try { dbUtil.closeCon(con); } catch (Exception e) { e.printStackTrace(); } } } private void commentDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String commentIds=request.getParameter("commentIds"); Connection con=null; try{ con=dbUtil.getCon(); JSONObject result=new JSONObject(); int delNums=commentDao.commentDelete(con, commentIds); if(delNums>0){ result.put("success", true); result.put("delNums", delNums); }else{ result.put("errorMsg", "删除失败"); } ResponseUtil.write(result, response); }catch(Exception e){ e.printStackTrace(); }finally{ try { dbUtil.closeCon(con); } catch (Exception e) { e.printStackTrace(); } } } } package com.demo.web;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| try { dbUtil.closeCon(con); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
private String genUpAndDownPageCode(List<News> upAndDownPage){ News upNews=upAndDownPage.get(0); News downNews=upAndDownPage.get(1); StringBuffer pageCode=new StringBuffer(); if(upNews.getNewsId()==-1){ pageCode.append("<p>上一篇:没有了</p>"); }else{ pageCode.append("<p>上一篇:<a href='news?action=show&newsId="+upNews.getNewsId()+"'>"+upNews.getTitle()+"</a></p>"); } if(downNews.getNewsId()==-1){ pageCode.append("<p>下一篇:没有了</p>"); }else{ pageCode.append("<p>下一篇:<a href='news?action=show&newsId="+downNews.getNewsId()+"'>"+downNews.getTitle()+"</a></p>"); } return pageCode.toString(); }
private void newsPreSave(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String newsId=request.getParameter("newsId"); Connection con=null; try{ con=dbUtil.getCon(); if(StringUtil.isNotEmpty(newsId)){ News news=newsDao.getNewsById(con, newsId); request.setAttribute("news", news); } List<NewsType> newsTypeList=newsTypeDao.newsTypeList(con); request.setAttribute("newsTypeList", newsTypeList); if(StringUtil.isNotEmpty(newsId)){ request.setAttribute("navCode", NavUtil.genNewsManageNavigation("新闻管理", "新闻修改")); }else{ request.setAttribute("navCode", NavUtil.genNewsManageNavigation("新闻管理", "新闻添加")); } request.setAttribute("mainPage", "/background/news/newsSave.jsp"); request.getRequestDispatcher("/background/mainTemp.jsp").forward(request, response); }catch(Exception e){ e.printStackTrace(); }finally{ try { dbUtil.closeCon(con); } catch (Exception e) { // TODO Auto-generated catch block
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| throws ServletException, IOException { String newsId=request.getParameter("newsId"); Connection con=null; try{ con=dbUtil.getCon(); if(StringUtil.isNotEmpty(newsId)){ News news=newsDao.getNewsById(con, newsId); request.setAttribute("news", news); } List<NewsType> newsTypeList=newsTypeDao.newsTypeList(con); request.setAttribute("newsTypeList", newsTypeList); if(StringUtil.isNotEmpty(newsId)){ request.setAttribute("navCode", NavUtil.genNewsManageNavigation("新闻管理", "新闻修改")); }else{ request.setAttribute("navCode", NavUtil.genNewsManageNavigation("新闻管理", "新闻添加")); } request.setAttribute("mainPage", "/background/news/newsSave.jsp"); request.getRequestDispatcher("/background/mainTemp.jsp").forward(request, response); }catch(Exception e){ e.printStackTrace(); }finally{ try { dbUtil.closeCon(con); } catch (Exception e) { e.printStackTrace(); } } }
private void newsSave(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { FileItemFactory factory=new DiskFileItemFactory(); ServletFileUpload upload=new ServletFileUpload(factory); List<FileItem> items=null; try { items=upload.parseRequest(request); } catch (Exception e) { e.printStackTrace(); } Iterator itr=items.iterator(); News news=new News(); while(itr.hasNext()){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| } catch (Exception e) { e.printStackTrace(); } } } } package com.demo.web;
public class LinkServlet extends HttpServlet{
private static final long serialVersionUID = 1L; DbUtil dbUtil=new DbUtil(); LinkDao linkDao=new LinkDao();
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); }
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String action=request.getParameter("action"); if("preSave".equals(action)){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| String newPath = PropertiesUtil.getValue("imageFile") + "/" + imageName + "." + fileItem.getName().split("\\.")[1]; fileItem.write(file); String callback = request.getParameter("CKEditorFuncNum"); out.println("<script type=\"text/javascript\">"); out.println("window.parent.CKEDITOR.tools.callFunction(" + callback + ",'" + newPath + "',''" + ")"); out.println("</script>"); out.flush(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } package com.demo.web;
public class UserServlet extends HttpServlet{
/** * */ private static final long serialVersionUID = 1L; DbUtil dbUtil=new DbUtil(); UserDao userDao=new UserDao(); protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); }
@Override
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=061122582008200us
https://javayms.pages.dev?id=061122582008200us