新闻作业教程

            

        在开始做这个作业之前,请保证能够连接本地数据库和能够运行tomcat,本地数据库账号密码文件在BaseDao.java中——By Benmao


第一步:找到dao包,接口添加代码

        1. 在TopicsDao.java中写入如下代码

    //根据tid查询新闻主题
	public Topic findTopicByTid(String tid);
	
	//根据tid修改新闻主题
	public int modifyTopic(String tname, String tid);
	
	//根据tid删除新闻主题
	public int delTopic(String tid);

        2. 在daoNewsDao.java中写入如下代码

    //根据新闻nid删除新闻对象
	public int delNews(String nid);
	
	//修改新闻信息
	public int modifyNews(News news,String nid);

第二步:找到impl包,接口的实现类添加代码

        1.在TopicsDaoImpl.java中写入如下代码

    //根据tid查询新闻主题
	public Topic findTopicByTid(String tid) {
		Connection con=getConnection();
		PreparedStatement ps=null;
		ResultSet rs=null;
		Topic topic =null;
		String sql = "select * from topic where tid=?";
		try {
			ps = con.prepareStatement(sql);
			ps.setString(1,tid);
			rs = ps.executeQuery();
			if(rs.next()){
				topic = new Topic();
				topic.setTid(String.valueOf(rs.getInt("tid")));
				topic.setTname(rs.getString("tname"));
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}finally{
			closeAll(con, ps,  rs);
		}		
		return topic;
	}
	
	//根据tid修改新闻主题
	public int modifyTopic(String tname, String tid) {
		String sql = "update topic set tname = ? where tid = ?";
		return exceuteUpdate(sql, tname, tid);
	}
	
	//根据tid删除新闻主题
	public int delTopic(String tid) {
		String sql = "delete from topic where tid = ?";
		return exceuteUpdate(sql, tid);
	}

     2. 在NewsDaoImpl.java中写入如下代码

    //根据新闻nid删除新闻对象
    public int delNews(String nid) {
		String sql = "delete from news where nid = ?";
		return exceuteUpdate(sql, nid);
	}

    
	//根据nid修改修改新闻信息
	public int modifyNews(News news,String nid) {
		String sql = "update news set ntid = ?, ntitle = ?, nauthor = ?, nsummary = ?, ncontent = ? where nid = ?";
		return exceuteUpdate(sql, news.getNtid(), news.getNtitle(),news.getNauthor(),news.getNsummary(),news.getNcontent(), nid);
	}

第三步:找到newspaper文件夹

注意:如果下方教程出现不存在的文件,自己创建一下就行

     1. topic_delete.jsp文件代码如下

<%@page import="com.jjzd.news.dao.impl.TopicsDaoImpl"%>
<%@page import="com.jjzd.news.entity.Topic"%>
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.TopicsDao"%>
<%
	request.setCharacterEncoding("UTF-8");
	TopicsDao topicsDao=new TopicsDaoImpl();
	String tid = request.getParameter("tid");
		Topic topic=topicsDao.findTopicByTid(tid);
		if(topic!=null){
			topicsDao.delTopic(tid);%>
			<script type="text/javascript">
			alert("删除成功,点击确认返回主题列表!");
			location.href="../util/do_topic_list.jsp";	
			</script>
			
		<%}else{%>
		    <script type="text/javascript">
			alert("主题不存在,请求的tid有误");
			location.href="../util/do_topic_list.jsp";	
			</script>
<%}%>

        2. topic_modify.jsp文件中请求地址需要指定为util/do_topic_modify.jsp文件

找到from标签,修改代码

 <form action="../util/do_topic_modify.jsp" method="post" οnsubmit="return check()">

        3.news_delte.jsp文件代码如下

<%@page import="com.jjzd.news.dao.impl.NewsDaoImpl"%>
<%@page import="com.jjzd.news.dao.NewsDao"%>
<%@page import="com.jjzd.news.dao.impl.TopicsDaoImpl"%>
<%@page import="com.jjzd.news.entity.Topic"%>
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.TopicsDao"%>
<%
	request.setCharacterEncoding("UTF-8");
	NewsDao newsdao = new NewsDaoImpl();
	String nid = request.getParameter("nid");
		
			newsdao.delNews(nid);%>
			<script type="text/javascript">
			alert("删除成功");
			location.href="admin.jsp";	
			</script>
		
		    <script type="text/javascript">
			alert("新闻不存在,请求的nid有误");
			location.href="admin.jsp";	
			</script>

        4.找到admin.jsp文件,找到ul标签,必须修改为下方代码

 <ul class="classlist">  需要修改的代码  </ul> 中修改

        <%	
      List<News> list=( List<News>)session.getAttribute("list");
      if(list==null){
      	response.sendRedirect("../util/do_news_list.jsp");
      	return;
      }else{
	      session.removeAttribute("list");
		  int n=0;
		  for(News tempNew:list){
		    n++;		
	     %> 
	      <li><%=tempNew.getNtitle() %><span> 作者:<%=tempNew.getNauthor() %> &#160;&#160;&#160;&#160; <a href='news_modify.jsp?author=<%=tempNew.getNauthor() %>&title=<%=tempNew.getNtitle() %>%summary=<%=tempNew.getNsummary() %>&content=<%=tempNew.getNcontent() %>&date=<%=tempNew.getNcreatedate() %>&nid=<%=tempNew.getNid() %>'>修改</a> &#160;&#160;&#160;&#160; <a href='news_delte.jsp?nid=<%=tempNew.getNid() %>' onclick='return clickdel()'>删除</a> </span> </li>
	      <%if(n%5==0){ %>
	      <li class='space'></li>
	      <%}} }%

        5. 在news_modify.jsp文件中写入如下代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.TopicsDao"%>
<%@page import="com.jjzd.news.dao.impl.TopicsDaoImpl"%>
<%@page import="com.jjzd.news.entity.Topic"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>修改主题--管理后台</title>
<link href="../css/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<%@include file="console_element/top.jsp" %>
<div id="main">
  <%@include file="console_element/left.html" %>
  <%
  	TopicsDao dao =new TopicsDaoImpl();
  	List<Topic> topics =dao.getAllTopics();
  	String nid = request.getParameter("nid");//这是修改新闻需要根据nid才可以修改
  %>
  <div id="opt_area">
    <h1 id="opt_type"> Benmao写的修改新闻:当前修改的nid为<%= nid %> </h1>
    <form action="../util/do_news_modify.jsp?nid=<%=nid %>" method="post">
      <p>
        <label> 主题 </label>
        <select  name="ntid">  
            <%
            	for(int i=0;i<topics.size();i++){
            %> 
            <option value="<%=topics.get(i).getTid()%>"><%=topics.get(i).getTname()%></option> 
            <%} %> 
        </select> 
      </p>
      <p>
        <label> 标题 </label>
        <input name="ntitle" type="text" class="opt_input" placeholder="请输入修改后的标题"/>
      </p>
      <p>
        <label> 作者 </label>
        <input name="nauthor" type="text" class="opt_input" placeholder="请输入修改后的作者"/>
      </p>
      <p>
        <label> 摘要 </label>
        <textarea name="nsummary" cols="40" rows="3"></textarea>
      </p>
      <p>
        <label> 内容 </label>
        <textarea name="ncontent" cols="70" rows="10"></textarea>
      </p>
      <!--<p>
        <label> 上传图片 </label>
        <input name="file" type="file" class="opt_input" />
      </p>
      -->
      <input name="action" type="hidden" value="addnews"/>
      <input type="submit" value="修改" class="opt_sub" />
      <input type="reset" value="重置" class="opt_sub" />
    </form>
  </div>
</div>
<div id="footer">
  <%@include file="console_element/bottom.html" %>
</div>
</body>
</html>

第四步:找到util文件夹

         1.在do_news_delte.jsp写入如下代码(忘了这个文件有用还是没有用)

<%@page import="com.jjzd.news.dao.impl.NewsDaoImpl"%>
<%@page import="com.jjzd.news.dao.NewsDao"%>
<%@page import="com.jjzd.news.dao.impl.TopicsDaoImpl"%>
<%@page import="com.jjzd.news.entity.Topic"%>
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.TopicsDao"%>
<%@page import="com.jjzd.news.dao.NewsDao"%>
<%
	request.setCharacterEncoding("UTF-8");
	NewsDao newsdao = new NewsDaoImpl();
	String nid = request.getParameter("nid");
		
	newsdao.delNews(nid);%>
	
<script type="text/javascript">
	alert("删除成功");
	location.href="../util/admin.jsp";	
</script>
<script type="text/javascript">
	alert("新闻不存在,请求的nid有误");
	location.href="../util/admin.jsp";	
</script>

        2.在do_topic_modify.jsp文件写入如下代码

<%@page import="com.jjzd.news.dao.impl.TopicsDaoImpl"%>
<%@page import="com.jjzd.news.entity.Topic"%>
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.TopicsDao"%>
<%
	request.setCharacterEncoding("UTF-8");
	TopicsDao topicsDao=new TopicsDaoImpl();
	String tid = request.getParameter("tid");
	String tname = request.getParameter("tname");
		Topic topic=topicsDao.findTopicByTid(tid);
		if(topic!=null){
			topicsDao.modifyTopic(tname, tid);%>
			<script type="text/javascript">
			alert("修改成功,点击确认返回主题列表!");
			location.href="../util/do_topic_list.jsp";	
			</script>
			
		<%}else{%>
		    <script type="text/javascript">
			alert("主题不存在,请求的tid有误");
			location.href="../util/do_topic_list.jsp";	
			</script>
<%}%>

        3.在do_news_modify.jsp文件写入如下代码

<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%@page import="com.jjzd.news.dao.NewsDao"%>
<%@page import="com.jjzd.news.dao.impl.NewsDaoImpl"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date"%>
<%@page import="com.jjzd.news.entity.News"%>
<%
	request.setCharacterEncoding("utf-8");
	NewsDao dao =new NewsDaoImpl();
	String ntid=request.getParameter("ntid");
	String ntitle=request.getParameter("ntitle");
	String nauthor=request.getParameter("nauthor");
	String nsummary=request.getParameter("nsummary");
	String ncontent=request.getParameter("ncontent");
	String nid = request.getParameter("nid");
	SimpleDateFormat sf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//初始时间benmao感觉不需要修改
	String ncreatedate=sf.format(new Date());
	News news=new News(ntid,ntitle,nauthor,nsummary,ncontent,ncreatedate);
	dao.modifyNews(news, nid);
 %>
 <script type="text/javascript">
			alert("新闻修改成功,点击确认返回新闻 列表!");
			location.href="do_news_list.jsp";	
</script>

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Benmao⁢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值