亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 第7章(2).txt

?? <jsp實用教程>書中所有例題代碼
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
負責公共留言的beans
PublicWord.java:
package tom.jiafei;
import java.sql.*;
public class PublicWord
{String  logname="",
         message="";
    String backNews;//用來留言是否成功。
    Connection con;
    Statement sql; 
    ResultSet rs;
    public PublicWord()
    {  //加載橋接器:
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
    }
  //設置屬性值、獲取屬性值的方法:
   public void setLogname(String name)
    {  logname=name;
    }
   public String getLogname()
    {return logname;
    }
   public String getMessage()
    {return message;
    } 
   public void setMessage(String m)
    { message=m;
    } 
   public String getBackNews()
    {return backNews;
    }
   public void setBackNews(String s)
    {backNews=s;
    } 
   //添加記錄到數據庫的wordpad表:
   public void addItem()
    {try{
        con=DriverManager.getConnection("jdbc:odbc:friend","","");
        sql=con.createStatement();
        String s="'"+logname+"'"+","+"'"+message+"'";
        String condition="INSERT INTO wordpad VALUES"+"("+s+")";
        sql.executeUpdate(condition);
        backNews="添加成功了";
        con.close();
       }
     catch(SQLException e)
      {//由于表wordpad和member表通過字段logname做了關聯,所以如果輸入的logname
        //不對,就會出現異常
        backNews="你沒有登錄,不能留言";
       }
    }
}

負責私人留言的 beans
SecretWord.java:
package tom.jiafei;
import java.sql.*;
public class SecretWord
{String  logname="",
         time="",      //留言時間。
         message="";
    String backNews;//返回留言是否成功的信息。
    Connection con;
    Statement sql; 
    ResultSet rs;
    public SecretWord()
    {  //加載橋接器:
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
    }
  //設置屬性值、獲取屬性值的方法:
   public void setLogname(String name)
    {  logname=name;
    }
   public String getLogname()
    {return logname;
    }
   public String getMessage()
    {return message;
    } 
   public void setMessage(String m)
    { message=m;
    } 
   public String getBackNews()
    {return backNews;
    }
   public void setBackNews(String s)
    {backNews=s;
    } 
   public void setTime(String t)
    {time=t;
    }
   public String getTime()
    {return time;
    }
   //添加記錄到數據庫的wordpad表:
   //我們要求留言的時間是唯一的,所以下面的方法聲明為synchronized
   public synchronized void addItem()
    {try{
        con=DriverManager.getConnection("jdbc:odbc:friend","","");
        sql=con.createStatement();
        String s="'"+logname+"'"+","+"'"+message+"'"+","+"'"+time+"'";
        String condition="INSERT INTO secretwordpad VALUES"+"("+s+")";
        sql.executeUpdate(condition);
        backNews="添加成功了";
        con.close();
       }
     catch(SQLException e)
       {//由于表wordpad和member表通過字段logname做了關聯,所以如果輸入對方的logname
        //不存在,就會出現異常
        backNews="該會員不存在,不能留言給他(她)";
       }
    }
}

留言板的主頁面(效果如圖7.11所示)
message.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="tom.jiafei.Login" %>
<jsp:useBean id="login" class="tom.jiafei.Login" scope="session" >
</jsp:useBean>
<%!//處理字符串的一個常用方法:
    public String getString(String s)
     { if(s==null) s="";
       try {byte a[]=s.getBytes("ISO-8859-1");
            s=new String(a);
           }
       catch(Exception e)
           {
           }
       return s;
     }
 %>
<% //如果客戶直接進入該頁面將被轉向登錄頁面。
   if(session.isNew())
    {response.sendRedirect("login.jsp"); 
    }
   //如果沒有成功登錄將被轉向登錄頁面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("login.jsp"); 
     }
%>
<HTML>
<BODY ><Font size=1>
<%@ include file="head.txt" %>
<CENTER>
你可以在這里實現公共留言、私人留言。
<%String str=response.encodeURL("leaveword.jsp");
%>
<FORM action="<%=str%>" method=post>
輸入你的會員名字<BR><Input Type=text name=logname value=<%=login.getLogname()%>>
<BR>輸入你的留言:
<BR><TextArea name="message" Rows="8" Cols="50">
    </TextArea>
<BR>公共留言(所有的會員都能查看到):
<BR><Input type=submit name="submit" value="提交為公共留言">
<BR>私人留言(輸入他(她)的會員名)To:
<Input type =text name=person>
<BR><Input type=submit name="submit" value="提交為私人留言">
</FORM>
</CENTER>
</BODY>
</HTML>

進行留言操作的JSP頁面
leaveword.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<jsp:useBean id="login" class="tom.jiafei.Login" scope="session" >
</jsp:useBean>
<jsp:useBean id="publicbean" class="tom.jiafei.PublicWord" scope="page" >
</jsp:useBean>
<jsp:useBean id="secretbean" class="tom.jiafei.SecretWord" scope="page" >
</jsp:useBean>
<%!//處理字符串的一個常用方法:
    public String getString(String s)
     { if(s==null) s="";
       try {byte a[]=s.getBytes("ISO-8859-1");
            s=new String(a);
           }
       catch(Exception e)
           {  }
       return s;
     }
 %>
<HTML>
<BODY bgcolor=pink ><Font size=1>
<% //獲取提交鍵的的串值:
    String s=request.getParameter("submit");
           s=getString(s);
     //根據s的不同情況分開處理:
    if(s.equals("提交為公共留言")) 
       { //獲取提交的留言:
         String ms=request.getParameter("message");
         ms=getString(ms);
         publicbean.setLogname(login.getLogname());
         publicbean.setMessage(""+login.getLogname()+"的留言:"+ms);
        //留言:
         publicbean.addItem(); 
         out.print(publicbean.getBackNews()); 
       }
    else if(s.equals("提交為私人留言"))
       { //獲取會員的名字:
         String name=request.getParameter("person");
           name=getString(name);
         String ms=request.getParameter("message");
         ms=getString(ms);
         if(name.equals(""))
            {out.print("您沒有輸入他(她)的名字,不能留言給人家");
            }
         else
            {  secretbean.setLogname(name);
               secretbean.setMessage(""+login.getLogname()+"留言給你:"+ms);
               //留言時間:
               long n=System.currentTimeMillis();
                String time=String.valueOf(n);
               secretbean.setTime(time);
               //留言:
               secretbean.addItem(); 
               out.print(secretbean.getBackNews()); 
            }
      } 
%>
</FONT>
</BODY>
</HTML>

查看公共留言頁面(效果如圖7.12所示)
publicMessage.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="tom.jiafei.Login" %>
<%@ page import="tom.jiafei.PageNumber" %>
<%@ page import="tom.jiafei.HandleMessage" %>
<jsp:useBean id="handlePage" class="tom.jiafei.PageNumber" scope="session" >
</jsp:useBean>
<jsp:useBean id="login" class="tom.jiafei.Login" scope="session" >
</jsp:useBean>
<jsp:useBean id="handle" class="tom.jiafei.HandleMessage" scope="page" >
</jsp:useBean>
<% //如果客戶直接進入該頁面將被轉向登錄頁面。
   if(session.isNew())
    {response.sendRedirect("login.jsp"); 
    }
   //如果沒有成功登錄將被轉向登錄頁面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("login.jsp"); 
     }
%>
<HTML>
<BODY ><Font size=1>
<%@ include file="head.txt" %>
<P> 公共留言列表:
 <%! //聲明一個共享的連接對象:
    Connection con=null;
    //顯示數據庫記錄的方法:
   public void showList(ResultSet rs,javax.servlet.jsp.JspWriter  out,int n,tom.jiafei.HandleMessage h)
     {try
      { 
        out.print("<Table Border>");
         out.print("<TR>");
          out.print("<TH width=50>"+"<Font size=1>"+"會員名"+"</FONT>");
          out.print("<TH width=70>"+"<Font size=1>"+"留言信息"+"</FONT>");
         out.print("</TR>");
       for(int i=1;i<=n;i++)
       {  
          String logname=rs.getString("logname"); 
          String message=rs.getString("public");  
         if(logname==null)
               {logname="";
               }
            if(message==null)
               {message="";
               }
          //為了能顯示原始的HTML或JSP文件格式的信息,需對信息進行回壓流處理:
           h.setContent(message);
           message=h.getContent();
           //將信息顯示在表格中: 
           out.print("<TR>");
             out.print("<TD >"+logname+"</TD>"); 
             out.print("<TD >"+message+"</TD>");
           out.print("</TR>") ;
            rs.next();    
        }
       out.print("</Table>");
      }
      catch(Exception e1) {}
    }
  %>
 <% Statement sql=null; 
    ResultSet rs=null; 
    int rowCount=0;   //總的記錄數。
    String logname="";
     //第一個客戶負責建立連接對象:
    if(con==null)
      { try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
           }
           catch(ClassNotFoundException e)
           {out.print(e);
           }
        try
          {con=DriverManager.getConnection("jdbc:odbc:friend","","");
           sql=
     con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
           rs=sql.executeQuery("SELECT * FROM wordpad");  //返回可滾動的結果集。
            rs.last();  //將游標移動到最后一行。
           int number=rs.getRow();  //獲取最后一行的行號。
            rowCount=number;  //獲取記錄數。
           handlePage.setPageSize(3);   //設置每頁顯示的記錄數。
           handlePage.setShowPage(1);  //設置欲顯示的頁碼數。
           handlePage.setPageCount(rowCount,handlePage.getPageSize());  //計算總頁數。
           out.print("共有"+handlePage.getPageCount()+"頁,");
           out.print("每頁顯示"+ handlePage.getPageSize()+"條記錄");   
          }
        catch(SQLException e) 
          {out.print(e);
          }
      }
     //其它客戶通過同步塊使用這個連接:
     else
      { synchronized(con)
        {  try {   sql=
    con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
           rs=sql.executeQuery("SELECT * FROM wordpad");  //返回可滾動的結果集。
            rs.last();  //將游標移動到最后一行。
           int number=rs.getRow();  //獲取最后一行的行號。
            rowCount=number;  //獲取記錄數。
           handlePage.setPageSize(3);  //設置每頁顯示的記錄數。
           handlePage.setShowPage(1);   //設置欲顯示的頁碼數。
            handlePage.setPageCount(rowCount,handlePage.getPageSize());  //計算總頁數。
           out.print("共有"+handlePage.getPageCount()+"頁,");  
           out.print("每頁顯示"+ handlePage.getPageSize()+"條記錄"); 
          }
        catch(SQLException e) 
          {out.print(e);
          }
        }
      }
  %> 
  <%--選擇顯示某頁的表單 --%>
 <Form action="" method="post" >
  輸入欲要顯示的頁<Input type="text"  name="ok" value="1">
  <Input type="submit" value="submit">
  </FORM>
 <% //獲取表單提交的信息:
     String s=request.getParameter("ok");
       if(s==null)
          {s="1";
          }
     int m=Integer.parseInt(s);
          handlePage.setShowPage(m);
          out.print("目前顯示第"+handlePage.getShowPage()+"頁");
          int n=handlePage.getShowPage();
           //將游標移到:
          rs.absolute((n-1)*handlePage.getPageSize()+1);
          showList(rs,out,handlePage.getPageSize(),handle);  //顯示該頁的內容
 %>
</FONt>
</BODY>
</HTML>

查看私人留言頁面(效果如圖7.13所示)
secretMessage.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="tom.jiafei.Login" %>
<%@ page import="tom.jiafei.PageNumber" %>
<%@ page import="tom.jiafei.HandleMessage" %>
<jsp:useBean id="handlePage" class="tom.jiafei.PageNumber" scope="session" >
</jsp:useBean>
<jsp:useBean id="login" class="tom.jiafei.Login" scope="session" >
</jsp:useBean>
<jsp:useBean id="handle" class="tom.jiafei.HandleMessage" scope="page" >
</jsp:useBean>
<% //如果客戶直接進入該頁面將被轉向登錄頁面。
   if(session.isNew())
    {response.sendRedirect("login.jsp"); 
    }
   //如果沒有成功登錄將被轉向登錄頁面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("login.jsp"); 
     }
%>
<HTML>
<BODY ><Font size=1>
<%@ include file="head.txt" %>
<P> 公共留言列表:
 <%! //聲明一個共享的連接對象:
    Connection con=null;
    //顯示數據庫記錄的方法:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91精品入口| 欧美一区二区三区精品| 色综合天天天天做夜夜夜夜做| av资源站一区| 欧美日韩黄色一区二区| 精品成a人在线观看| 中文字幕的久久| 一区二区三区资源| 麻豆精品国产91久久久久久| 国产成人精品一区二区三区四区 | 欧美精品在线观看播放| 日韩欧美成人午夜| 国产日韩精品一区二区三区在线| 亚洲欧美日韩国产综合| 欧美aaaaaa午夜精品| 国产成人精品免费视频网站| 欧美在线免费视屏| 久久精品一级爱片| 午夜欧美一区二区三区在线播放| 极品美女销魂一区二区三区| 99re成人精品视频| 精品国内二区三区| 亚洲午夜国产一区99re久久| 国产激情91久久精品导航| 欧美日韩一区二区三区视频| 国产欧美日韩视频一区二区| 亚洲chinese男男1069| 从欧美一区二区三区| 777色狠狠一区二区三区| 中文字幕一区视频| 国产在线视频一区二区| 在线一区二区三区做爰视频网站| 久久综合狠狠综合| 亚洲第一搞黄网站| 99精品久久只有精品| 日韩免费成人网| 亚洲午夜国产一区99re久久| 99在线热播精品免费| 精品国内二区三区| 水蜜桃久久夜色精品一区的特点| 91免费在线看| 国产欧美一区二区精品秋霞影院| 丝袜亚洲另类丝袜在线| 日本丶国产丶欧美色综合| 精品久久久久久久久久久院品网| 久久先锋影音av鲁色资源| 国产成人亚洲综合色影视| 欧美一区二区三区在线| 日本亚洲最大的色成网站www| 狠狠v欧美v日韩v亚洲ⅴ| 欧美日韩一卡二卡三卡 | 麻豆国产精品官网| 欧美亚日韩国产aⅴ精品中极品| 欧美激情艳妇裸体舞| 久久激情五月激情| 欧美日韩国产123区| 亚洲人成网站精品片在线观看| 国产成人精品一区二区三区四区| 欧美不卡123| 奇米影视在线99精品| 欧美视频第二页| 一区二区高清视频在线观看| 99久久精品费精品国产一区二区| 国产欧美日韩三区| 国产成人自拍高清视频在线免费播放| 日韩视频在线一区二区| 奇米影视在线99精品| 91精品中文字幕一区二区三区| 亚洲高清三级视频| 欧美视频第二页| 亚洲国产毛片aaaaa无费看| 91精品福利视频| 一区二区三区鲁丝不卡| 在线观看网站黄不卡| 亚洲午夜免费电影| 欧美久久久久久蜜桃| 日韩中文欧美在线| 欧美一区二区三区精品| 精一区二区三区| 久久亚洲二区三区| 国产成人精品免费一区二区| 亚洲国产成人私人影院tom | 亚洲欧洲美洲综合色网| 成人h动漫精品一区二| 国产精品麻豆欧美日韩ww| av在线综合网| 一区二区欧美在线观看| 欧美日韩亚洲不卡| 琪琪久久久久日韩精品| 久久亚洲综合av| 不卡的av网站| 亚洲综合一二三区| 欧美精品免费视频| 蜜臀av一区二区| 久久精品夜色噜噜亚洲aⅴ| 成人国产精品免费观看| 亚洲欧美日韩电影| 欧美在线你懂的| 青青草视频一区| 久久久久久麻豆| 91麻豆产精品久久久久久| 亚洲.国产.中文慕字在线| 日韩亚洲欧美成人一区| 国产高清精品久久久久| 1024精品合集| 欧美一区二区网站| 国产成人在线影院| 尤物av一区二区| 精品三级在线看| 97se狠狠狠综合亚洲狠狠| 午夜精品一区在线观看| 日韩免费高清av| 91亚洲精品久久久蜜桃网站| 午夜国产不卡在线观看视频| 亚洲精品在线免费观看视频| 99re66热这里只有精品3直播| 三级成人在线视频| 国产拍欧美日韩视频二区| 在线一区二区三区| 美脚の诱脚舐め脚责91| 亚洲欧美日韩国产综合在线| 欧美成人伊人久久综合网| 不卡一二三区首页| 麻豆精品新av中文字幕| 国产精品成人午夜| 日韩免费高清视频| 91福利国产成人精品照片| 精品影视av免费| 一区二区三区成人在线视频| 久久综合999| 欧美在线影院一区二区| 国产成人免费网站| 日韩不卡在线观看日韩不卡视频| 国产精品久久久久久久久免费相片| 91精品国产91久久综合桃花| 本田岬高潮一区二区三区| 麻豆精品在线观看| 一区二区三区在线不卡| 久久精品亚洲一区二区三区浴池| 欧美情侣在线播放| proumb性欧美在线观看| 精品一区二区在线看| 亚洲一二三区不卡| 国产精品国产三级国产普通话99| 精品国产伦一区二区三区观看方式 | 91麻豆自制传媒国产之光| 蜜桃av噜噜一区| 亚洲狠狠爱一区二区三区| 国产精品丝袜久久久久久app| 日韩欧美一级特黄在线播放| 日本高清不卡在线观看| 国产精品12区| 美女视频第一区二区三区免费观看网站| 亚洲欧美电影一区二区| 久久久久久免费| 日韩免费看的电影| 欧美日韩mp4| 在线观看欧美黄色| 99精品黄色片免费大全| 国产盗摄一区二区| 精品写真视频在线观看| 日本不卡在线视频| 亚洲gay无套男同| 亚洲一区二区黄色| 一区二区三区中文在线| 国产精品久久看| 欧美国产日韩亚洲一区| www国产亚洲精品久久麻豆| 日韩一区国产二区欧美三区| 欧美性淫爽ww久久久久无| 色诱亚洲精品久久久久久| 不卡的av在线| thepron国产精品| 成人app在线观看| 成人黄色片在线观看| 国产999精品久久久久久| 国产一区二区三区| 国产在线精品一区二区不卡了| 久久精品噜噜噜成人av农村| 日本不卡一区二区三区| 丝袜亚洲精品中文字幕一区| 日韩成人av影视| 美女一区二区久久| 精品一区二区三区久久久| 久久国产精品99久久久久久老狼 | 精品国产污污免费网站入口| 日韩三级视频在线观看| 欧美一区二区日韩| 日韩欧美中文字幕一区| 精品欧美一区二区久久| 久久你懂得1024| 中文字幕av免费专区久久| 国产精品丝袜黑色高跟| 日韩理论片一区二区| 伊人一区二区三区| 午夜在线电影亚洲一区| 青草国产精品久久久久久| 蜜乳av一区二区| 国产盗摄视频一区二区三区| 91网站在线观看视频|