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

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

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

    jialisoftw

    基于JavaBean,JSP實現登錄并顯示分頁信息的小系統

    不說廢話,首先,建立要連接的數據庫,我的數據庫名稱是collage,要顯示的數據表是students,有六列,要學習并測試的可以自己建立數據庫。
    id:int

    name:varchar

    grade:int

    batch:int

    password:int

    gxqm:varchar

     JSP頁面,有三個,login.jsp,loginhandle.jsp,welcome.jsp。java類有三個,Userbean用于映射數據對象,UserbeanCl用于業務邏輯處理,connDB用于建立數據庫連接。直接上代碼吧

    login.jsp頁面

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
    http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Login in and then enjoy yourself!</title>
    </head>
    <body>
    <center>
    請登錄
    <form name="form1" action="loginhandle.jsp">
    <hr color="cc00aa">
    用戶名: <input type="text" name="user">
    <br>
    密&nbsp;&nbsp;碼: <input type="password" name="password">
    <br>
    <input type="submit" value="登錄">
    <input type="reset" name="重置">
    </form>
    </center>
    </body>
    </html>

    loginhandle頁面:

    <%@ page language="java" import="java.sql.*" import="java.util.*,com.ly.model.UserbeanCl" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
    http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>here</title>

    </head>
    <body>
    <center>
      <br>
      <%
       String u = request.getParameter("user");
       String p = request.getParameter("password");
       
          // 一、普通驗證 
    /*     if(u.equals("Liyong")&&p.equals("woaini")){
        response.sendRedirect("welcome.jsp?user="+u);//跳轉到歡迎界面并傳遞出用戶名user 
        }
        else{  
        response.sendRedirect("login.jsp");
        }
         */
       // 二、直接到數據庫中驗證
       // DriverManager.registerDriver(new com.mysql.jdbc.Driver());
       //  Class.forName("com.mysql.jdbc.Driver");
    /*   
       try {
        Class.forName("com.mysql.jdbc.Driver");
       } catch (ClassNotFoundException e) {
        e.printStackTrace();
       } 
       Connection ct = DriverManager.getConnection(
         "jdbc:mysql://localhost:3306/collage", "root", "");
       Statement st = ct.createStatement();
       ResultSet rs = st.executeQuery("select password from students where name='"
           + u + "'");
       if (rs.next()) {
        //說明用戶名存在
        if (rs.getString(1).equals(p)) {
         //密碼正確
         response.sendRedirect("welcome.jsp?user=" + u);//跳轉到歡迎界面并傳遞出用戶名user 
        } else {
         response.sendRedirect("login.jsp");

        }
       }
       rs.close();
       st.close();
       ct.close();
    */
       // 三、通過userbeanCl對用戶進行驗證
       UserbeanCl ubc=new UserbeanCl();
      
       if(ubc.checkUser(u,p))
       {
        response.sendRedirect("welcome.jsp?user=" + u);
        
       }else {
        
        out.println("<script>alert('密碼或者用戶名錯誤!');</script>");
        Thread.sleep(1000); 
        response.sendRedirect("login.jsp");
        // return;
            
       }

      %>
     </center>
    </body>
    </html>

    welcome頁面:

    <%@ page language="java" import="java.util.*,com.ly.model.*"
     contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
    http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Welcome your mother!</title>
    </head>
    <body>
     <center>
      Hello,world! <br>
      <%=request.getParameter("user")%>
      <br> <a href="login.jsp">返回重新登錄</a>
      <hr color="silver">
      <br> 用戶信息列表 <br>
      <%
      int pageNow=1;
      String u=request.getParameter("user");
      String s_pageNow=request.getParameter("pageNow");
      if(s_pageNow!=null){
       pageNow=Integer.parseInt(s_pageNow);  
       
      }
      // 調用UserbeanCl的方法,完成分頁顯示
      UserbeanCl ubc=new UserbeanCl();
      int pageCount=ubc.pageCount();
      ArrayList al=ubc.getUsersByPage(pageNow);
       
      %>
      <table border="1">
       <tr>
        <td>用戶Id</td>
        <td>姓名</td>
        <td>班級</td>
        <td>批次</td>
        <td>密碼</td>
        <td>個性簽名</td>
       </tr>
       <%
      for(int i=0;i<al.size();i++){
       Userbean usb=(Userbean)al.get(i);
       // System.out.println("-----------------"+usb.getGxqm());
       %>
       <tr>
        <td><%=usb.getId() %></td>
        <td><%=usb.getName() %></td>
        <td><%=usb.getGrade() %></td>
        <td><%=usb.getBatch() %></td>
        <td><%=usb.getPassword() %></td>
        <td><%=usb.getGxqm() %></td>
       </tr>
       <%

       } 
       
       %>
       
      </table>
      <br><hr color="blue"><br>
      <%
      //顯示上一頁
      out.println("<a href=welcome.jsp?pageNow="+1+"&user="+u+">首頁</a>");
      if(pageNow!=1){
       out.println("<a href=welcome.jsp?pageNow="+(pageNow-1)+"&user="+u+">上一頁</a>");
       
      }
      // 顯示頁碼
      for(int i=pageNow;i<=(pageCount<(pageNow+5)?pageCount:(pageNow+5));i++){
       
       out.println("<a href=welcome.jsp?pageNow="+i+"&user="+u+">["+i+"]</a>");
       
      }
      if(pageNow!=pageCount){
       out.println("<a href=welcome.jsp?pageNow="+(pageNow+1)+"&user="+u+">下一頁</a>");
       
      }
      out.println("<a href=welcome.jsp?pageNow="+pageCount+"&user="+u+">尾頁</a>");
      %>
      
     </center>
    </body>
    </html>

    Userbean.java實現數據對象的封裝

    package com.ly.model;

    public class Userbean {
     private int id;
     private String name;
     private int grade;
     private int batch;
     private int password;
     private String gxqm;
     
     public int getId() {
      return id;
     }
     public void setId(int id) {
      this.id = id;
     }
     public String getName() {
      return name;
     }
     public void setName(String name) {
      this.name = name;
     }
     public int getGrade() {
      return grade;
     }
     public void setGrade(int grade) {
      this.grade = grade;
     }
     public int getBatch() {
      return batch;
     }
     public void setBatch(int batch) {
      this.batch = batch;
     }
     public int getPassword() {
      return password;
     }
     public void setPassword(int password) {
      this.password = password;
     }
     public String getGxqm() {
      return gxqm;
     }
     public void setGxqm(String gxqm) {
      this.gxqm = gxqm;
     }
     
    }


    connDB.java實現數據庫的連接//得到數據庫的連接

    //得到數據庫的連接
    package com.ly.model;
    import java.sql.*;
    import java.util.*;
    public class connDB {
     private Connection ct=null;
     
     
     public Connection getConn(){
      
      
       try {
        Class.forName("com.mysql.jdbc.Driver");
        ct=DriverManager.getConnection("jdbc:mysql://localhost:3306/collage", "root", "");
       } catch (Exception e) {
        
        e.printStackTrace();
       }
       
     
      return ct;
     }
    }

    UserbeanCl.java實現業務邏輯的處理

    //這是一個處理類,主要封裝對User表的各種操作,包括增刪改查

    package com.ly.model;

    import java.sql.*;
    import java.util.ArrayList;

    public class UserbeanCl {
     private Statement st = null;
     private ResultSet rs = null;
     private Connection ct = null;
     private int pageSize = 10;
     private int rowCount = 0;
     private int pageCount = 0;

     // 驗證用戶是否存在
     public int pageCount() {
      try {
       // 得到連接
       ct = new connDB().getConn(); 
       st=ct.createStatement();
       rs = st.executeQuery("select count(*) from students");
       //
       if(rs.next()){
        
        rowCount=rs.getInt(1);
       }
       if(rowCount%pageSize==0){
        pageCount=rowCount/pageSize;
        
       }else{
        pageCount=rowCount/pageSize+1;    
       }
       
       
      } catch (Exception e) {
       e.printStackTrace();
      } finally {
       shutup();
      }
      return pageCount;

     }

     public ArrayList getUsersByPage(int PageNow) {
      pageCount = pageCount(); 
      
      ct = new connDB().getConn(); 
      int startRow=(PageNow-1)*pageSize;
      ArrayList al = new ArrayList();
      
      try {
       st = ct.createStatement();
       rs=st.executeQuery("SELECT id,name,grade,batch,password,gxqm FROM `students` LIMIT "+startRow+","+pageSize);
       while(rs.next()){
        
        Userbean ub=new Userbean();
        ub.setId(rs.getInt(1));
        ub.setName(rs.getString(2));
        ub.setGrade(rs.getInt(3));
        ub.setBatch(rs.getInt(4));
        ub.setPassword(rs.getInt(5));
        ub.setGxqm(rs.getString(6));
        
        // System.out.println(rs.getString(6));
        
        
        al.add(ub);
        
       }

      } catch (Exception e) {
        e.printStackTrace();
      } finally {
       shutup();
      }

      return al;

     }

     public boolean checkUser(String u, String p) {
      boolean b = false;
      ct = new connDB().getConn();
      try {
       st = ct.createStatement();
       ResultSet rs = st
         .executeQuery("select password from students where name='"
           + u + "'");
       if (rs.next()) {
        // 說明用戶名存在
        if (rs.getString(1).equals(p)) {
         // 密碼正確
         b = true;
        } else {
         return false;
        }
       }

      } catch (Exception e) {
       e.printStackTrace();
      } finally {
       shutup();
      }
      return b;

     }

     public void shutup() {

      try {
       if (rs != null)
        rs.close();
      } catch (SQLException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      } finally {
       try {
        if (st != null)
         st.close();
       } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
       } finally {
        try {
         if (ct != null)
          ct.close();
        } catch (SQLException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }
       }
      }

     }

    }

    最終現實的簡單分頁效果如圖

    好了,基本效果就這樣,當然怎么改善就隨你自己的意愿了!

    posted on 2012-10-13 11:54 飛豬一號 閱讀(2283) 評論(1)  編輯  收藏

    評論

    # re: 基于JavaBean,JSP實現登錄并顯示分頁信息的小系統 2015-03-26 17:34 kad

    十分感謝??!太有用了!  回復  更多評論   


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


    網站導航:
     

    導航

    <2012年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統計

    常用鏈接

    留言簿

    隨筆檔案

    友情鏈接

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日韩免费无砖专区2020狼| WWW国产成人免费观看视频| 亚洲中文字幕在线无码一区二区| 久久亚洲一区二区| 亚洲成A∨人片在线观看不卡| 亚洲综合AV在线在线播放| 亚洲国产成人手机在线观看| wwwxxx亚洲| 亚洲色最新高清av网站| 亚洲老熟女五十路老熟女bbw| 亚洲夂夂婷婷色拍WW47| 亚洲精品无码久久久久YW| 老湿机一区午夜精品免费福利 | 四虎影院在线免费播放| 麻豆国产VA免费精品高清在线| 国产亚洲精品免费视频播放| 久久www免费人成精品香蕉| 你懂得的在线观看免费视频| 久热免费在线视频| 2021免费日韩视频网| 国内外成人免费视频| 免费一级成人毛片| 亚洲人成人一区二区三区| 亚洲国产一区二区a毛片| 91亚洲视频在线观看| 国产偷v国产偷v亚洲高清| 亚洲国产二区三区久久| 亚洲人成网网址在线看| 亚洲成AV人影片在线观看| 国产精品无码永久免费888| 国产精品免费无遮挡无码永久视频| xxxxwww免费| 国产性生交xxxxx免费| 国产亚洲AV手机在线观看 | 国外成人免费高清激情视频| 国产无遮挡又黄又爽免费视频| AV在线播放日韩亚洲欧| 在线免费观看一级片| 亚洲天堂在线视频| 久久精品国产亚洲精品2020| 亚洲av无码成人影院一区|