目录
项目简介
项目技术栈
项目运行环境
项目截图
代码截取
源码获取
项目简介
新闻发布系统是一款基于Servlet+jsp+jdbc的网站应用程序,旨在提供一个全面且高效的新闻发布平台。该系统主要包括后台管理和前台新闻展示两个平台,涵盖了新闻稿件的撰写、审核、发布以及用户浏览等功能。
后台管理平台是系统的核心,分为三个角色:编辑、主编和管理员。编辑角色负责新闻稿件的撰写,通过界面友好的编辑器,编辑人员可以方便地输入新闻内容、上传图片、设置关键词等。主编则负责对编辑用户的新闻稿进行审核,确保新闻稿的准确性和合规性。一旦新闻稿通过审核,管理员将负责将其发布到前台展示平台上。
前台新闻展示平台是系统向用户展示新闻内容的界面,用户可以根据自己的兴趣和需求选择不同类别的新闻进行浏览。该平台支持按照时间、热度、关键词等进行排序和搜索,以便用户快速找到感兴趣的内容。此外,用户还可以通过分享、评论等功能与其他用户互动,增加用户参与度和社交性。
JSP新闻发布系统的技术实现基于Servlet+jsp+jdbc,这种组合能够有效地实现动态网页的生成和数据库的操作。通过Servlet技术,系统能够响应用户请求、处理业务逻辑,并返回生成的动态网页;jsp技术则提供了简化界面开发的便利,使得页面的呈现更加灵活、易于维护;jdbc技术则实现了与MySQL数据库的连接和交互,确保数据的安全存储。
项目技术栈
-
Servlet:用于响应用户请求、处理业务逻辑,并返回生成的动态网页。
-
JSP:提供了简化界面开发的便利,使得页面的呈现更加灵活、易于维护。
-
JDBC:实现了与MySQL数据库的连接和交互,确保数据的安全存储。
-
MySQL:作为系统底层数据库,保证了数据的存储安全和可靠性。
-
JSTL(JSP Standard Tag Library):JSTL是一组自定义标签,用于简化在JSP页面中的常见任务,如迭代、条件判断、格式化等。它提供了一种简洁、可重用的方式来编写和管理JSP页面的逻辑。
项目运行环境
-
操作系统:Windows、Linux、Unix等。
-
Web服务器:Tomcat、Jetty等。
-
JDK版本:JDK 1.8或以上。
-
数据库:MySQL数据库。
-
浏览器:IE9及以上、Chrome、Firefox等现代浏览器。
项目截图
代码截取
package com.news.controller;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Timestamp;
import java.util.List;
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 org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.democxyso.utils.Page;
import org.democxyso.utils.PropertiesUtil;
import com.news.bean.NewsType;
import com.news.dao.NewsTypeDao;
import com.news.service.NewsTypeService;
import com.news.service.impl.NewsTypeServiceImpl;
@WebServlet("/newsType")
public class NewsTypeController extends HttpServlet {
private static final long serialVersionUID = 1L;
private String contextPath = "";
NewsTypeDao newsTypeDao=new NewsTypeDao();
NewsTypeService newsTypeService = new NewsTypeServiceImpl();
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
contextPath = request.getServletContext().getContextPath();
String method = request.getParameter("method");
if ("save".equals(method)) {
save(request,response);
}else if ("delete".equals(method)) {
delete(request, response);
}else if ("list".equals(method)) {
list(request, response);
}else if ("form".equals(method)) {
form(request, response);
}
}
//删除
private void delete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = request.getParameter("id");
newsTypeService.delete(id);
response.sendRedirect(contextPath+"/newsType?method=list");
}
//修改
private void save(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = request.getParameter("id");
String name = request.getParameter("name");
String sort = request.getParameter("sort");
String remark = request.getParameter("remark");
NewsType newsType = new NewsType();
newsType.setId(id);
newsType.setName(name);
newsType.setSort(Integer.parseInt(sort));
newsType.setRemark(remark);
if (newsType.getId()!=null && !"".equals(newsType.getId())) {
newsTypeService.update(newsType);
}else{
newsTypeService.add(newsType);
}
response.sendRedirect(contextPath+"/newsType?method=list");
}
//列表查询
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.err.println("---开始查询---");
NewsType newsType = new NewsType();
//分页有关
Page<NewsType> page = new Page<NewsType>();
//设置查询页
String pageNoStr = request.getParameter("pageNo");
if (pageNoStr != null && pageNoStr != "") {
page.setPageNo(Integer.parseInt(pageNoStr));
}
//设置查询条件
String name = request.getParameter("name");
if (name != null && name != "") {
newsType.setName(name);
request.setAttribute("name", name);
}
//判断提示信息
Object msg = request.getSession().getAttribute("msg");
if (msg != null) {
request.setAttribute("msg", msg.toString());
request.getSession().removeAttribute("msg");
}
page = newsTypeService.page(newsType, page);
request.setAttribute("page", page);
request.getRequestDispatcher("/views/system/newsTypeList.jsp").forward(request, response);
}
//form跳转页面
private void form(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = request.getParameter("id");
NewsType newsType = new NewsType();
if (id!=null && id!="") {
newsType = newsTypeService.getById(id);
}
request.setAttribute("newsType", newsType);
request.getRequestDispatcher("/views/system/newsTypeForm.jsp").forward(request, response);
}
}
源码获取
https://download.csdn.net/download/qinluyu111/88801283
源码19.9元一份,在我的资源里下载,与文章标题一模一样,非诚勿扰。如需搭建视频40元一份,远程搭建+源码修改指导100元一次,压缩包的解压密码(S019010101)