<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    RiKeR

    本博客停止更新,最新內容請訪問--> http://blog.csdn.net/shuailee

    統計

    留言簿(3)

    積分與排名

    閱讀排行榜

    評論排行榜

    我做的第二個MVC項目的小結(完結篇)

     

           1list.jsp==>新建一個ServletDeleteServlet.java,此時仍用doPost方法接收(點擊按鈕)

    package org.riker.news.control;

     

    import java.io.IOException;

    import java.io.PrintWriter;

     

    import javax.servlet.ServletException;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

     

    import org.riker.news.data.NewsDataBean;

    import org.riker.news.logic.NewsLogicBean;

     

    public class DetailServlet extends HttpServlet {

     

           /**

            * Constructor of the object.

            */

           public DetailServlet() {

                  super();

           }

     

           /**

            * Destruction of the servlet. <br>

            */

           public void destroy() {

                  super.destroy(); // Just puts "destroy" string in log

                  // Put your code here

           }

     

           /**

            * The doPost method of the servlet. <br>

            *

            * This method is called when a form has its tag value method equals to post.

            *

            * @param request the request send by the client to the server

            * @param response the response send by the server to the client

            * @throws ServletException if an error occurred

            * @throws IOException if an error occurred

            */

           public void doPost(HttpServletRequest request, HttpServletResponse response)

                         throws ServletException, IOException {

     

                  String newsid = request.getParameter("newsid");

                  NewsDataBean bean = new NewsLogicBean().detail(newsid);

                  if(bean!=null) {

                         request.setAttribute("bean",bean);

                         request.getRequestDispatcher("main/detail.jsp").forward(request, response);

                  } else {

                         request.getRequestDispatcher("main/error.jsp").forward(request, response);

                  }

                 

           }

     

           /**

            * Initialization of the servlet. <br>

            *

            * @throws ServletException if an error occure

            */

           public void init() throws ServletException {

                  // Put your code here

           }

     

    }

     

    2NewsLogicBean.java,寫公共的,修改relevant,寫deleteNews()方法

    package org.riker.news.logic;

     

    import java.sql.Connection;

    import java.sql.ResultSet;

    import java.sql.SQLException;

    import java.sql.Statement;

    import java.util.ArrayList;

    import java.util.List;

     

    import org.riker.news.comm.DataSource;

    import org.riker.news.data.NewsDataBean;

     

    public class NewsLogicBean {

           private int allRows;

           private int curPage = 1;

           private int rowPerPage = 5;

           private int allPages;

     

           public List findAll() {

                  List list = new ArrayList();

                  Statement st = null;

                  ResultSet rs = null;

                  try {

                         st = DataSource.getConnection().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

                         rs = st.executeQuery("select newsid, newstitle, newscontent, newscount, newsdate from news order by newsdate desc");

                         rs.last();

                         this.allRows = rs.getRow();

                         if(this.allRows%this.rowPerPage==0) {

                                this.allPages = this.allRows/this.rowPerPage;

                         } else {

                                this.allPages = this.allRows/this.rowPerPage + 1;

                         }

                         if(this.curPage == 1) {

                                rs.beforeFirst();

                         } else {

                                rs.absolute((this.curPage - 1) * this.rowPerPage);

                         }

                         int i = 0;

                         while(rs.next() && i < this.rowPerPage) {

                                NewsDataBean bean = new NewsDataBean();

                                bean.setNewsid(rs.getString(1));

                                bean.setNewstitle(rs.getString(2));

                                bean.setNewscontent(rs.getString(3));

                                bean.setNewscount(rs.getString(4));

                                bean.setNewsdate(rs.getString(5));

                                list.add(bean);

                                i++;

                         }

                  } catch (SQLException e) {

                         e.printStackTrace();

                  }

                  return list;

           }

          

           public int insertNews(String newsTitle, String newsContent) {

                 

                  return modify("insert into news(newstitle, newscontent, newscount, newsdate) values ('"+newsTitle+"', '"+newsContent+"', 0, now()");

     

           }

          

           public int modify(String sql) {

                  int result = 0;

                  Statement st = null;

                  try {

                         st = DataSource.getConnection().createStatement();

                         result = st

                                       .executeUpdate(sql);

     

                  } catch (Exception e) {

                         // TODO: handle exception

                  } finally {

                         try {

                                st.close();

                         } catch (SQLException e) {

                                // TODO Auto-generated catch block

                                e.printStackTrace();

                         }

                  }

                 

                  return result;

           }

          

           public int deleteId(String newsid) {

                  return modify("delete from news where newsid="+newsid);

           }

          

           public int updateNews(String newsid, String newsTitle, String newsContent) {

                  return modify("update news set newstitle='"+newsTitle+"', newscontent='"+newsContent+"' where newsid="+newsid);

           }

          

           public NewsDataBean findById(String newsid) {

                  NewsDataBean bean = new NewsDataBean();

                  Statement st = null;

                  ResultSet rs = null;

                  try {

                         st = DataSource.getConnection().createStatement();

                         rs = st.executeQuery("select newsid, newstitle, newscontent, newscount, newsdate from news where newsid=" + newsid);

                         rs.last();

                        

                         if(rs.next() ) {

                                bean.setNewsid(rs.getString(1));

                                bean.setNewstitle(rs.getString(2));

                                bean.setNewscontent(rs.getString(3));

                                bean.setNewscount(rs.getString(4));

                                bean.setNewsdate(rs.getString(5));

                         }

                  } catch (SQLException e) {

                         e.printStackTrace();

                  }

                  return bean;

           }

          

           public NewsDataBean detail(String newsid) {

                  NewsDataBean bean = new NewsDataBean();

                  Statement st = null;

                  ResultSet rs = null;

                  try {

                         st = DataSource.getConnection().createStatement();

                         st.executeUpdate("update news set newscount=newscount+1 where newsid="+newsid);

                         rs = st.executeQuery("select newsid, newstitle, newscontent, newscount, newsdate from news where newsid=" + newsid);

                         rs.last();

                        

                         if(rs.next() ) {

                                bean.setNewsid(rs.getString(1));

                                bean.setNewstitle(rs.getString(2));

                                bean.setNewscontent(rs.getString(3));

                                bean.setNewscount(rs.getString(4));

                                bean.setNewsdate(rs.getString(5));

                         }

                  } catch (SQLException e) {

                         e.printStackTrace();

                  }

                  return bean;

           }

          

           public static void main(String[] args) {

                  List list = new NewsLogicBean().findAll();

                  System.out.println(list.size());

           }

     

           public int getCurPage() {

                  return curPage;

           }

     

           public void setCurPage(int curPage) {

                  this.curPage = curPage;

           }

     

           public int getAllPages() {

                  return allPages;

           }

     

           public int getAllRows() {

                  return allRows;

           }

     

           public int getRowPerPage() {

                  return rowPerPage;

           }

     

    }

     

           3DeleteServlet.java,去COPY過來跳轉的語

     

    句。==>查看新聞詳細,中間,新建DetailServlet.java,注意此時為doGet

     

    地址欄的提交)==>NewsLogicBean.javaCOPY上面Insertpublic

     

    NewsDataBean detail(String newsid) {}==>DetailServlet.javaCOPY過來

     

    FindByIdServlet.javaNewsDataBean bean = new NewsLogicBean

     

    ().findById(newsid)modified it==>

    package org.riker.news.control;

     

    import java.io.IOException;

    import java.io.PrintWriter;

     

    import javax.servlet.ServletException;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

     

    import org.riker.news.data.NewsDataBean;

    import org.riker.news.logic.NewsLogicBean;

     

    public class DetailServlet extends HttpServlet {

     

           /**

            * Constructor of the object.

            */

           public DetailServlet() {

                  super();

           }

     

           /**

            * Destruction of the servlet. <br>

            */

           public void destroy() {

                  super.destroy(); // Just puts "destroy" string in log

                  // Put your code here

           }

     

           /**

            * The doPost method of the servlet. <br>

            *

            * This method is called when a form has its tag value method equals to post.

            *

            * @param request the request send by the client to the server

            * @param response the response send by the server to the client

            * @throws ServletException if an error occurred

            * @throws IOException if an error occurred

            */

           public void doPost(HttpServletRequest request, HttpServletResponse response)

                         throws ServletException, IOException {

     

                  String newsid = request.getParameter("newsid");

                  NewsDataBean bean = new NewsLogicBean().detail(newsid);

                  if(bean!=null) {

                         request.setAttribute("bean",bean);

                         request.getRequestDispatcher("main/detail.jsp").forward(request, response);

                  } else {

                         request.getRequestDispatcher("main/error.jsp").forward(request, response);

                  }

                 

           }

     

           /**

            * Initialization of the servlet. <br>

            *

            * @throws ServletException if an error occure

            */

           public void init() throws ServletException {

                  // Put your code here

           }

     

    }

     

           4、用insert.jsp復制新建detail.jsp,引

     

    NewsDataBean Package,寫標簽 <jsp:useBean id="news"

     

    class="org.riker.news.logic.NewsLogicBean"/>,這么做沒必要!!WHY

    因為DetailServlet.javarequest.setAttribute("bean",bean);已經放入

     

    bean了,所以直接NewsDataBean bean = (NewsDataBean)

     

    request.getAttribute("bean");注意request.getAttribute("bean"),然后格

     

    式化,更美觀些,用JavaScript返回,<a href="javascript:history.back

     

    ()">返回</a>

     

    <%@ page contentType="text/html;charset=GBK" import="org.riker.news.data.*"%>

     

    <html>

     <head>

       

        <title></title>

       

     </head>

     <body>

     <%

      NewsDataBean bean = (NewsDataBean)request.getAttribute("bean");

     %>

      <h2 align="center">

      <%=bean.getNewstitle()%>               發布時間:<%=bean.getNewsdate()%>

      </h2>

      <%=bean.getNewscontent()%>點擊的次數:<%=bean.getNewscount()%>

     <hr>

     

        <a href="javascript:history.back()">返回</a>

     

     

     </div>

     </body>

    </html>

     

    posted on 2007-08-28 18:37 RiKeR 閱讀(281) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费黄网站在线观看| 免费a级毛片高清视频不卡| 亚洲免费视频在线观看| 四虎在线成人免费网站| 在线观看亚洲电影| 亚洲中文字幕在线第六区| www.亚洲色图| 国产精品区免费视频| 亚洲日本一线产区和二线产区对比| 啊v在线免费观看| 免费人妻无码不卡中文字幕系| 亚洲中文字幕无码久久2020| 国产日产亚洲系列最新| 成年午夜视频免费观看视频| a视频在线观看免费| 亚洲熟妇AV日韩熟妇在线| 亚洲午夜未满十八勿入网站2| 日韩av无码成人无码免费| 久青草视频在线观看免费| 亚洲色偷偷综合亚洲av78| 亚洲情综合五月天| 日本免费无遮挡吸乳视频电影| 叮咚影视在线观看免费完整版| 亚洲日韩精品无码专区| 亚洲第一中文字幕| 亚洲精品A在线观看| 午夜爱爱免费视频| 91福利免费体验区观看区| 本道天堂成在人线av无码免费| 亚洲1234区乱码| 亚洲成人在线电影| 精品亚洲视频在线观看| 国产高清视频在线免费观看| 16女性下面扒开无遮挡免费| 久青草视频在线观看免费| 美女视频黄频a免费观看| 亚洲香蕉久久一区二区| 亚洲人成电影福利在线播放| 国产AV无码专区亚洲AWWW| 国产无遮挡色视频免费视频| 免费一本色道久久一区|