国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

新聞管理系統(tǒng)(ssm+jsp+mysql)

這篇具有很好參考價值的文章主要介紹了新聞管理系統(tǒng)(ssm+jsp+mysql)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

摘要

一、系統(tǒng)開發(fā)環(huán)境

二、數(shù)據(jù)庫設(shè)計

三、實現(xiàn)的功能

四、詳細(xì)設(shè)計

五、效果展示


摘要

  • 游客可以瀏覽新聞,也可以通過新聞類別或新聞標(biāo)題對新聞進(jìn)行查找;
  • 管理員可以增加新聞、修改新聞、根據(jù)新聞類別查找新聞、刪除新聞,也可以增加類別、修改類別、刪除類別;在刪除類別時,該類別的新聞會被同時刪除。

一、系統(tǒng)開發(fā)環(huán)境

Eclipse2021.03

jdk1.8.0

Tomcat9.0

Mysql8.0.26

二、數(shù)據(jù)庫設(shè)計

新聞表t_news

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

類型表t_type

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

用戶表t_user

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

三、實現(xiàn)的功能

普通用戶(游客):

(1)顯示所有新聞

(2)瀏覽新聞

(3)根據(jù)新聞類型對新聞進(jìn)行查找

(4)根據(jù)新聞標(biāo)題對新聞進(jìn)行查找

管理員用戶:

(1)顯示所有新聞

(2)增加新聞

(3)修改新聞

(4)根據(jù)新聞類型對新聞進(jìn)行查找

(5)刪除新聞

(6)顯示所有類別

(7)增加新聞類別

(8)修改新聞類別

(9)刪除新聞類別

四、詳細(xì)設(shè)計

  • 開發(fā)步驟和主要代碼

撰寫流程:從dao —> service —> controller —> 視圖

NewsDao.java

package?zsls.news.dao;



import?org.apache.ibatis.annotations.Param;

import?zsls.news.pojo.News;

import?java.util.List;



public?interface?NewsDao {

????List<News> queryALL(@Param("tid") Integer tid,@Param("title") String title,@Param("num") int?num?);

????News queryById(Integer id);

????int?save(News news);

????int?update(News news);

????int?deleteById(Integer id);

????int?deleteByTid(Integer tid);

}

TypeDao.java

package zsls.news.dao;

import org.apache.ibatis.annotations.Param;
import zsls.news.pojo.Type;
import java.util.List;

public interface TypeDao {
    public List<Type> queryAllTypes();
    public List<Type> queryType(@Param("name")String name);
    public int insertType(@Param("name")String name);
    public int deleteByRecid(String id);
    Type queryById(Integer id);
    int update(Type type);
}

UserDao.java

package zsls.news.dao;

import org.apache.ibatis.annotations.Param;
import zsls.news.pojo.User;
public interface UserDao {
    public User queryUserByUsernameAndPassword(@Param("name")String username, @Param("pass")String password);
}

NewsService.java

package zsls.news.service;

import zsls.news.pojo.News;
import java.util.List;

public interface NewsService {
    List<News> queryALL(Integer tid,String title,Integer pageNo);
    News queryById(Integer id);
    int save(News news);
    int update(News news);
    int deleteById(Integer id);
}

NewsServiceImpl.java

package zsls.news.service;

import zsls.news.dao.NewsDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import zsls.news.pojo.News;
import java.util.List;

@Service
public class NewsServiceImpl implements NewsService {
    @Autowired
    private NewsDao newsDao;
    @Override
    public List<News> queryALL(Integer tid,String title,Integer pageNo) {
        if(title != null && !"".equals(title.trim())){
            title = "%"+title+"%";
        }
       int num = (pageNo - 1) * 10;
        return newsDao.queryALL(tid,title,num);
    }
    @Override
    public News queryById(Integer id) {
        return newsDao.queryById(id);
    }
    @Override
    public int save(News news) {
        return newsDao.save(news);
    }
    @Override
    public int update(News news) {
        return newsDao.update(news);
    }
    @Override
    public int deleteById(Integer id) {
        return newsDao.deleteById(id);
    }
}

TypeService.java

package zsls.news.service;

import zsls.news.pojo.Type;
import java.util.List;

public interface TypeService {
    public List<Type> queryAllTypes();
    public int deleteByRecid(String recid);
    int addType(String name);
    Type queryById(Integer id);
    int update(Type type);
}

TypeServiceImpl.java

package zsls.news.service;

import zsls.news.dao.NewsDao;
import zsls.news.dao.TypeDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import zsls.news.pojo.Type;
import java.util.List;

@Service
public class TypeServiceImpl implements TypeService {
    @Autowired
    private TypeDao typeDao;
    @Autowired
    private NewsDao newsDao;
    @Override
    public List<Type> queryAllTypes() {
        // TODO Auto-generated method stub
        return typeDao.queryAllTypes();
    }
    @Override
    public int deleteByRecid(String recid) {
        // TODO Auto-generated method stub
        int i=typeDao.deleteByRecid(recid);
        // 刪除類型,把同類的新聞也全部刪除
         int deleteByTid = newsDao.deleteByTid(Integer.valueOf(recid));
        return i;
    }
    @Override
    public int addType(String name) {
        return typeDao.insertType(name);
    }
    @Override
    public Type queryById(Integer id) {
        return typeDao.queryById(id);
    }
    @Override
    public int update(Type type) {
        return typeDao.update(type);
    }
}

UserService.java

package zsls.news.service;

import zsls.news.pojo.User;

public interface UserService {
    public User queryUserByUsernameAndPassword(String username, String password);
}

UserServiceImpl.java

package zsls.news.service;

import zsls.news.dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import zsls.news.pojo.User;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserDao userDao;
    @Override
    public User queryUserByUsernameAndPassword(String username, String password) {
        // TODO Auto-generated method stub
        return userDao.queryUserByUsernameAndPassword(username, password);
    }
}

AdminController.java

package zsls.news.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import zsls.news.pojo.News;
import zsls.news.pojo.Type;
import zsls.news.pojo.User;
import zsls.news.service.NewsService;
import zsls.news.service.TypeService;
import zsls.news.service.UserService;
import javax.servlet.http.HttpSession;
import java.util.Date;
import java.util.List;

@Controller
public class AdminController {
    @Autowired
    private UserService userService;
    @Autowired
    private TypeService typeService;
    @Autowired
    private NewsService newsService;
    @RequestMapping("login.do")
    public String login(String username, String password, HttpSession session, Model model){
        User user=userService.queryUserByUsernameAndPassword(username, password);
        System.out.println("當(dāng)前正在執(zhí)行控制器方法login...");
        if(user!=null){
            session.setAttribute("loginUser",user);
            return "/manager/index";
        }else{
            model.addAttribute("msg","登錄失敗,請重新登錄!");
            return "/login";
        }
    }
    @RequestMapping("logout.do")
    public String logout(HttpSession session){
        session.invalidate();
        return "/login";
    }
    @RequestMapping("toLogin.do")
    public String toLogin(){
        return "/login";
    }
    @RequestMapping("admin/toIndex.do")
    public String toIndex(){
        return "/manager/index";
    }
    @RequestMapping("admin/queryAllTypes.do")   //管理員方法
    public String AdminQueryAllTypes(Model model){
        List<Type> typelist=typeService.queryAllTypes();
        model.addAttribute("typelist",typelist);
        return "/manager/categoryList";
    }
    @RequestMapping("admin/toAddType.do")
    public String toAddType(){
        return "/manager/categoryAdd";
    }
    @RequestMapping("admin/addType.do")
    public String addType(String name,Model model){
        int i=typeService.addType(name);
        if(i>0){
            return "redirect:queryAllTypes.do";
        }else{
            model.addAttribute("msg","添加類型不成功!");
            return "/error";
        }
    }
    @RequestMapping("admin/toModifyType.do")
    public String toModifyType(Integer recid,Model model){
        Type type = typeService.queryById(recid);
        model.addAttribute("type",type);
        return "/manager/categoryModify";
    }
    @RequestMapping("admin/modifyType.do")
    public String modifyType(Type type,Model model){
        int i=typeService.update(type);
        if(i>0){
            return "redirect:queryAllTypes.do";
        }else{
            model.addAttribute("msg","修改類型不成功!");
            return "/error";
        }
    }
    @RequestMapping("admin/delete.do")   //管理員方法
    public String deleteByRecid(String recid,Model model){
        int i=typeService.deleteByRecid(recid);
        if(i>0){
            return "redirect:queryAllTypes.do";
        }else{
            model.addAttribute("msg","刪除類型不成功!");
            return "/error";
        }
    }
    @RequestMapping("admin/queryAllNews.do")   //管理員方法
    public String AdminQueryAllNews(Integer tid,Integer pageNo,Model model){
        if(pageNo == null || pageNo < 1){
            pageNo = 1;
        }
        List<News> newsList = newsService.queryALL(tid,null,pageNo);
        model.addAttribute("newsList",newsList);
        List<Type> typelist=typeService.queryAllTypes();
        model.addAttribute("typelist",typelist);
        model.addAttribute("pageNo1",pageNo-1);
        model.addAttribute("pageNo",pageNo);
        model.addAttribute("pageNo2",pageNo+1);
        model.addAttribute("tid",tid);
        return "/manager/newsList";
    }
    @RequestMapping("admin/toAddNews.do")
    public String toAddNews(Model model){
        List<Type> typelist=typeService.queryAllTypes();
        model.addAttribute("typelist",typelist);
        return "/manager/newsAdd";
    }
    @RequestMapping("admin/addNews.do")
    public String addNews(News news,Model model){
        if(news.getTid() == null ){
            model.addAttribute("msg","添加新聞類型不能為空!");
            return "/error";
        }
        if(news.getTitle() == null || "".equals(news.getTitle())  || news.getContent() == null || "".equals(news.getContent())){
            model.addAttribute("msg","添加新聞標(biāo)題或內(nèi)容不能為空!");
            return "/error";
        }
        news.setDate(new Date());
        int i=newsService.save(news);
        if(i>0){
            return "redirect:queryAllNews.do";
        }else{
            model.addAttribute("msg","添加新聞不成功!");
            return "/error";
        }
    }
    @RequestMapping("admin/deleteNews.do")
    public String deleteNews(Integer id,Model model){
        int i=newsService.deleteById(id);
        if(i>0){
            return "redirect:queryAllNews.do";
        }else{
            model.addAttribute("msg","刪除新聞不成功!");
            return "/error";
        }
    }
    @RequestMapping("admin/toModifyNews.do")
    public String toModifyNews(Integer id,Model model){
        News news = newsService.queryById(id);
        model.addAttribute("news",news);
        return "/manager/newsModify";
    }
    @RequestMapping("admin/modifyNews.do")
    public String modifyNews(News news,Model model){
        news.setDate(new Date());
        int i=  newsService.update(news);
        if(i>0){
            return "redirect:queryAllNews.do";
        }else{
            model.addAttribute("msg","修改新聞不成功!");
            return "/error";
        }
    }
    @RequestMapping("queryAllTypes.do")
    public String queryAllBooks(Model model){
        List<Type> typelist=typeService.queryAllTypes();
        model.addAttribute("typelist",typelist);
        return "index";
    }

}

VisitorController.java

package zsls.news.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import zsls.news.pojo.News;
import zsls.news.pojo.Type;
import zsls.news.service.NewsService;
import zsls.news.service.TypeService;
import java.util.List;

@Controller
public class VisitorController {
    @Autowired
    private TypeService typeService;
    @Autowired
    private NewsService newsService;
    @RequestMapping("visitor/toIndex.do")
    public String toIndex(){
        return "/index";
    }
    @RequestMapping("visitor/queryAllNews.do")
    public String queryAllNews(Integer tid,String title,Integer pageNo, Model model){
        if(pageNo == null || pageNo < 1){
            pageNo = 1;
        }
        List<News> newsList = newsService.queryALL(tid,title,pageNo);
        model.addAttribute("newsList",newsList);
        List<Type> typelist=typeService.queryAllTypes();
        model.addAttribute("typelist",typelist);
        model.addAttribute("pageNo1",pageNo-1);
        model.addAttribute("pageNo",pageNo);
        model.addAttribute("pageNo2",pageNo+1);
        model.addAttribute("tid",tid);
        model.addAttribute("title",title);
        return "/search";
    }
    @RequestMapping("visitor/queryNews.do")
    public String queryNews(Integer id, Model model){
        News news = newsService.queryById(id);
        model.addAttribute("news",news);
        Type type = typeService.queryById(news.getTid());
        model.addAttribute("type",type);
        return "/info";
    }
}

index.jsp (管理員)

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 40%">
    <p>&nbsp;&nbsp;&nbsp;&nbsp;歡迎來到</p>
    <p>系統(tǒng)的后臺管理</p>
</div>
</body>
</html>

index.jsp (游客)

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/login.jsp">登錄</a>
<hr>
<br/>
<div style="margin-left: 40%">
    <p>歡迎來瀏覽新聞</p>
</div>
</body>
</html>

LoginInterceptor.java (登錄攔截器)

package zsls.news.interceptor;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class LoginInterceptor implements HandlerInterceptor {
	@Override
	public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
			throws Exception {
		// 該方法是在整個請求執(zhí)行即渲染結(jié)束后執(zhí)行,通過此方法實現(xiàn)一些資源清理,記錄日志信息等工作
		System.out.println("執(zhí)行afterCompletion....");
	}
	@Override
	public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView mv)
			throws Exception {
		該方法是在控制器方法調(diào)用之后,且視圖解析還沒進(jìn)行之前
		System.out.println("執(zhí)行postHandle....");
	}
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object arg2) throws Exception {
		// 該方法是在控制器方法執(zhí)行前執(zhí)行,如果為真,則繼續(xù)下一步的操作,也就是接著執(zhí)行控制器方法或調(diào)用下一個攔截器;為假,則中斷
		System.out.println("執(zhí)行preHandle....");
		//獲取當(dāng)前請求的地址
		String uri=request.getRequestURI();
		if(uri.indexOf("login")>0) {   //當(dāng)前你的請求是login,放行
			return true;
		}
		HttpSession session=request.getSession();
		if(session.getAttribute("loginUser")!=null) {
			return true;
		}
		session.setAttribute("errorMsg","您還沒有登錄,請先登錄!");
		request.getRequestDispatcher("/login.jsp").forward(request, response);
		return false;
	}	
}

login.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body>
${sessionScope.errorMsg}
<form action="${pageContext.request.contextPath}/login.do" method="post">
    username:<input type="text" name="username"><br>
    password:<input type="password" name="password"><br>
    <input type="submit" value="login"/>
</form>
<div>
<br/>
    <a href="${pageContext.request.contextPath}/visitor/toIndex.do" style="font-size: 24px;">游客主頁</a>
</div>
</body>
</html>

categoryAdd.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 50%">

    <form action="${pageContext.request.contextPath}/admin/addType.do" method="post">
        <label>類型名稱:</label><input type="text" name="name">
        <br/>
        <button type="submit">添加</button>
    </form>
</div>
</body>
</html>

categoryList.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 50%">
    <a href="${pageContext.request.contextPath}/admin/toAddType.do">添加類型</a>
    <br/>
    <table border="1" style="width: 80%">
        <thead>
            <th>類別編號</th>
            <th>類別名稱</th>
            <th>刪除</th>
            <th>編輯</th>
        </thead>
        <c:forEach items="${typelist}" var="type">
            <tr>
                <td>${type.id}</td>
                <td>${type.name}</td>
                <td><a href="${pageContext.request.contextPath}/admin/delete.do?recid=${type.id }">刪除</a></td>
                <td><a href="${pageContext.request.contextPath}/admin/toModifyType.do?recid=${type.id }">編輯</a></td>
            </tr>
        </c:forEach>
    </table>
</div>
</body>
</html>

categoryModify.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 50%">
    <form action="${pageContext.request.contextPath}/admin/modifyType.do" method="post">
        <label>類型編號:</label><input type="text" name="id" value="${type.id}" readonly>
        <br/>
        <label>類型名稱:</label><input type="text" name="name" value="${type.name}">
        <br/>
        <button type="submit">修改</button>
    </form>
</div>
</body>
</html>

newsAdd.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 50%">
    <form action="${pageContext.request.contextPath}/admin/addNews.do" method="post">
        <label>類型:</label>
        <select name="tid">
            <c:forEach items="${typelist}" var="type">
                <option value="${type.id}" label="${type.name}">${type.name}</option>
            </c:forEach>
        </select>
        <br/>
        <label>標(biāo)題:</label><input type="text" name="title">
        <br/>
        <label>內(nèi)容:</label>
        <textarea rows="8" cols="40" name="content"></textarea>
        <br/>
        <button type="submit">添加</button>
    </form>
</div>
</body>
</html>

newsList.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 85%">
    <div>
        <form action="${pageContext.request.contextPath}/admin/queryAllNews.do">
            <label>新聞類型:</label>
            <select name="tid">
                <option value="" label="">全部</option>
                <c:forEach items="${typelist}" var="type">
                    <option value="${type.id}" label="${type.name}">${type.name}</option>
                </c:forEach>
            </select>
            <button type="submit">查詢</button>
        </form>
    </div>
    <a href="${pageContext.request.contextPath}/admin/toAddNews.do">添加新聞</a>
    <br/>
    <table border="1" style="width: 70%">
        <thead>
            <th style="width: 50px;">序號</th>
            <th>標(biāo)題</th>
            <th style="width: 150px;">日期</th>
            <th style="width: 50px;">編輯</th>
            <th style="width: 50px;">刪除</th>
        </thead>
        <c:forEach items="${newsList}" var="news">
            <tr>
                <td>${news.id}</td>
                <td>${news.title}</td>
                <td>
                    <fmt:formatDate value="${news.date}"></fmt:formatDate>
                </td>
                <td><a href="${pageContext.request.contextPath}/admin/toModifyNews.do?id=${news.id }">編輯</a></td>
                <td><a href="${pageContext.request.contextPath}/admin/deleteNews.do?id=${news.id }">刪除</a></td>
            </tr>
        </c:forEach>
    </table>
    <div style="margin-left: 30%">
        <span>當(dāng)前是第${pageNo}頁</span>&nbsp;&nbsp;&nbsp;&nbsp;
        <a href="${pageContext.request.contextPath}/admin/queryAllNews.do?pageNo=${pageNo1}&tid=${tid}">上一頁</a>
        <a href="${pageContext.request.contextPath}/admin/queryAllNews.do?pageNo=${pageNo2}&tid=${tid}">下一頁</a>
    </div>
</div>
</body>
</html>

newsModify.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您,${loginUser.name}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/admin/queryAllTypes.do">類型列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/logout.do">注銷</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 50%">
    <form action="${pageContext.request.contextPath}/admin/modifyNews.do" method="post">
        <label>新聞編號:</label><input type="text" name="id" value="${news.id}" readonly>
        <br/>
        <label>類型編號:</label><input type="text" name="tid" value="${news.tid}" readonly>
        <br/>
        <label>新聞標(biāo)題:</label><input type="text" name="title" value="${news.title}" >
        <br/>
        <label>新聞內(nèi)容:</label>
        <textarea name="content" rows="8" cols="40">${news.content}</textarea>
        <br/>
        <button type="submit">修改</button>
    </form>
</div>
</body>
</html>

info.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/login.jsp">登錄</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 60%" >
    <h4>${news.title}</h4>
    <span>${type.name} &nbsp; &nbsp;&nbsp;&nbsp;</span>
    <span>
          <fmt:formatDate value="${news.date}"></fmt:formatDate>
    </span>
    <br/>
    <p>${news.content}</p>
</div>
</body>
</html>

search.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
</head>
<body background="${pageContext.request.contextPath}/images/bg.jpg">
歡迎您
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/toIndex.do">主頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/visitor/queryAllNews.do">新聞列表</a>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="${pageContext.request.contextPath}/login.jsp">登錄</a>
<hr>
<br/>
<div style="margin-left: 20%;width: 85%">
    <div>
        <form action="${pageContext.request.contextPath}/visitor/queryAllNews.do" method="post">
            <label>新聞類型:</label>
            <select name="tid">
                <option value="" label="">全部</option>
                <c:forEach items="${typelist}" var="type">
                    <option value="${type.id}" label="${type.name}">${type.name}</option>
                </c:forEach>
            </select>
            <label>標(biāo)題:</label><input type="text" name="title">
            <button type="submit">搜索</button>
        </form>
    </div>
    <br/>
    <table border="1" style="width: 70%">
        <thead>
            <th style="width: 50px;">序號</th>
            <th>標(biāo)題</th>
            <th style="width: 150px;">日期</th>
            <th style="width: 50px;">詳情</th>
        </thead>
        <c:forEach items="${newsList}" var="news">
            <tr>
                <td>${news.id}</td>
                <td>${news.title}</td>
                <td>
                    <fmt:formatDate value="${news.date}"></fmt:formatDate>
                </td>
                <td><a href="${pageContext.request.contextPath}/visitor/queryNews.do?id=${news.id }">詳情</a></td>
            </tr>
        </c:forEach>
    </table>
    <div style="margin-left: 30%">
        <span>當(dāng)前是第${pageNo}頁</span>&nbsp;&nbsp;&nbsp;&nbsp;
        <a href="${pageContext.request.contextPath}/visitor/queryAllNews.do?pageNo=${pageNo1}&tid=${tid}&title=${title}">上一頁</a>
        <a href="${pageContext.request.contextPath}/visitor/queryAllNews.do?pageNo=${pageNo2}&tid=${tid}&title=${title}">下一頁</a>
    </div>
</div>
</body>
</html>

五、效果展示

普通用戶(游客)

(1)顯示所有新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?文章來源地址http://www.zghlxwxcb.cn/news/detail-763518.html

(2)瀏覽新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(3)根據(jù)新聞類別對新聞進(jìn)行查找

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(4)根據(jù)新聞標(biāo)題對新聞進(jìn)行查找

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

管理員用戶

(1)顯示所有新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(2)增加新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat?

?(3)修改新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat?

?(4)根據(jù)新聞類型對新聞進(jìn)行查找

?

(5)刪除新聞

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(6)顯示所有類別

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(7)增加新聞類別

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat?

?(8)修改新聞類別

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat

?

(9)刪除新聞類別

新聞管理系統(tǒng),mysql,數(shù)據(jù)庫,eclipse,java,tomcat?

?

到了這里,關(guān)于新聞管理系統(tǒng)(ssm+jsp+mysql)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包