MVC2專案實踐
阿新 • • 發佈:2020-06-27
1.下載UEditor
2.新聞上傳
package Controller; import Entity.News; import Service.NewsService; import Util.Category; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import java.io.IOException; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; /* 新聞主頁 */ @WebServlet(name = "MainNewsServlet") public class MainNewsServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); }protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); NewsService newsService=new NewsService(); try { List<News> lsNews=newsService.QueryNews(); List<List<News>> lsNews_by_category= new ArrayList<>(); for (int i = 0; i <Category.values().length ; i++) { List<News> temp=new ArrayList<>(); lsNews_by_category.add(temp); } for (News news:lsNews) { if (news.getCategory().equals("圖片新聞") && lsNews_by_category.get(0).size()<6) lsNews_by_category.get(0).add(news); else if (news.getCategory().equals("學術交流") && lsNews_by_category.get(1).size()<6) lsNews_by_category.get(1).add(news); else if (news.getCategory().equals("新聞速遞") && lsNews_by_category.get(2).size()<6) lsNews_by_category.get(2).add(news); else if (news.getCategory().equals("黨建動態") && lsNews_by_category.get(3).size()<6) lsNews_by_category.get(3).add(news); else if (news.getCategory().equals("通知公告") && lsNews_by_category.get(4).size()<6) lsNews_by_category.get(4).add(news); else if (news.getCategory().equals("專題列表") && lsNews_by_category.get(5).size()<6) lsNews_by_category.get(5).add(news); } request.setAttribute("lsNews_by_0",lsNews_by_category.get(0)); request.setAttribute("lsNews_by_1",lsNews_by_category.get(1)); request.setAttribute("lsNews_by_2",lsNews_by_category.get(2)); request.setAttribute("lsNews_by_3",lsNews_by_category.get(3)); request.setAttribute("lsNews_by_4",lsNews_by_category.get(4)); request.setAttribute("lsNews_by_5",lsNews_by_category.get(5)); request.getRequestDispatcher("SWPUnews.jsp").forward(request,response); } catch (SQLException e) { e.printStackTrace(); } } }
效果展示:
簡單填寫一些資料,然後點選新增
可以看到上傳成功
3.新聞刪除:
package Controller; import Service.NewsService; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /* 刪除新聞 */ @WebServlet(name = "DeleteServlet") public class DeleteNewServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); int idnews=Integer.valueOf(request.getParameter("idnews")); System.out.println(request.getParameter("idnews")); NewsService newsService=new NewsService(); newsService.DeleteNews(idnews); request.getRequestDispatcher("ShowNewsListServlet").forward(request,response); } }
效果展示:
可以看到刪除成功:
4.修改新聞:
package Controller; import Entity.News; import Service.NewsService; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.sql.SQLException; /* 編輯新聞 */ @WebServlet(name = "EditServlet") public class EditNewServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); int idnews=Integer.valueOf(request.getParameter("idnews")); NewsService newsService=new NewsService(); try { News news=newsService.GetNews(idnews); String temp=htmlToString(news.getContent()); news.setContent(temp); request.setAttribute("news",news); //request.getRequestDispatcher("AddNews.jsp").forward(request,response); request.getRequestDispatcher("EditNews.jsp").forward(request,response); } catch (SQLException e) { e.printStackTrace(); } } public static String htmlToString(String str) { if(str==null) return ""; if(str.equals("")) return ""; str = str.replaceAll("&", "&"); str = str.replaceAll("<", "<"); str = str.replaceAll(">", ">"); str = str.replaceAll("&amp;", "&"); str = str.replaceAll("&quot;", """); str = str.replaceAll("\"", """); str = str.replaceAll("&lt;", "<"); str = str.replaceAll("&gt;", ">"); str = str.replaceAll("&nbsp;", " "); return str; } }
效果展示:
將每一項進行簡單修改:
可以看到修改成功:
5.檢視新聞:
package Controller; import Entity.News; import Service.NewsService; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.sql.SQLException; import java.util.List; /* 新聞列表 */ @WebServlet(name = "Controller.ShowNewsListServlet") public class ShowNewsListServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); NewsService newsService=new NewsService(); try { List<News> lsNews=newsService.QueryNews(); request.setAttribute("lsNews",lsNews); request.getRequestDispatcher("ShowNewsList.jsp").forward(request,response); } catch (SQLException e) { e.printStackTrace(); } } }
效果展示:
檢視新聞: