1. 程式人生 > 實用技巧 >MVC2專案實踐

MVC2專案實踐

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("&", "&amp;");
        str = str.replaceAll("<", "&lt;");
        str = str.replaceAll(">", "&gt;");
        str = str.replaceAll("&amp;amp;", "&amp;");
        str = str.replaceAll("&amp;quot;", "&quot;");
        str = str.replaceAll("\"", "&quot;");
        str = str.replaceAll("&amp;lt;", "&lt;");
        str = str.replaceAll("&amp;gt;", "&gt;");
        str = str.replaceAll("&amp;nbsp;", "&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();
        }
    }
}

效果展示:

檢視新聞:

7.碼雲地址:https://gitee.com/chenxingxin123/WEB.git