jsp原生实现查询数据列表

使用jsp原生实现查询数据列表,用到以下几个文件:

/WebRoot/admin-login.jsp JSP页面

/src/db/DBHelper.java 数据库连接类

/src/model/LoginModel.java 数据库模型类

/src/table/LoginTable.java 数据库表类

代码如下:

/WebRoot/admin-login.jsp

<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" %>
<%@ page import="model.LoginModel"%>
<%@ page import="table.LoginTable"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户管理</title>
</head>

<body>
    <%
        LoginModel loginModel = new LoginModel();
        ArrayList<LoginTable> logins = loginModel.getAllLogin();
    %>
    <table>
        <tr>
            <td>编号</td>
            <td>用户名</td>
            <td>密码</td>
        <tr>
        <% 
        for(int i=0;i<logins.size();i++){
        %>
        <tr>
            <td><%=logins.get(i).getId()%></td>
            <td><%=logins.get(i).getUserName()%></td>
            <td><%=logins.get(i).getPassWord()%></td>
        <tr>
        <% 
        }
        %>
    </table>
</body>
</html>

/src/db/DBHelper.java

package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * 数据库助手类
 * @author y
 *
 */
public class DBHelper {

    /**
     * 数据库配置
     */
    private static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    private static final String DB_URL = "jdbc:mysql://127.0.0.1:3306/ceshi1";
    private static final String DB_USER = "ceshi1";
    private static final String DB_PASSWORD = "wL8xxeijkZ3bFY4L";
    private static Connection conn = null; //数据库连接对象
    
    /**
     * 连接操作
     */
    static{
        try{
            //注册JDBC驱动
            Class.forName(JDBC_DRIVER);
            //连接数据库
            DBHelper.go();
        }
        catch(SQLException e){
            e.printStackTrace();
        }
        catch(Exception e){
            e.printStackTrace();
        }
    }
    
    /**
     * 连接数据库
     * @return
     */
    public static Connection go() throws Exception{
        if(conn==null){
            conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PASSWORD);
        }
        return conn;
    }
    
    /**
     * 获取数据库连接对象
     * @return
     */
    public static Connection getConn(){
        return conn;
    }
    
    public static void main(String[] args){
        
        
    }
    
}

/src/model/LoginModel.java

package model;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import atg.taglib.json.util.JSONException;
import atg.taglib.json.util.JSONObject;

import db.DBHelper;
import table.LoginTable;

public class LoginModel {
    
    /**
     * 获取全部列表
     * @return
     */
    public ArrayList<LoginTable> getAllLogin(){
        Connection conn = null; //数据库对象
        PreparedStatement stmt = null; //语句对象
        ResultSet rs = null; //数据集对象
        ArrayList<LoginTable> logins = new ArrayList<LoginTable>(); //数据集合
        
        try{
            String sql = "select * from login";
            conn = DBHelper.getConn();
            stmt = conn.prepareStatement(sql);
            rs = stmt.executeQuery();
            //遍历数据
            while(rs.next()){
                //创建数据对象
                LoginTable login = new LoginTable();
                login.setId(rs.getInt("id"));
                login.setUserName(rs.getString("userName"));
                login.setPassWord(rs.getString("passWord"));
                //加入集合
                logins.add(login);
            }
        }
        catch(Exception e){
            e.printStackTrace();
        }
        finally{
            //释放数据集对象
            if(rs!=null){
                try {
                    rs.close();
                    rs = null;
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            //释放语句对象
            if(stmt!=null){
                try {
                    stmt.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
        return logins;
    }
    
    public static void main(String[] args){
        
        LoginModel loginModel = new LoginModel();
        ArrayList<LoginTable> logins = loginModel.getAllLogin();
        
        System.out.println(logins.size());
        
        /**
         * json使用
         */
        JSONObject jsonObject = new JSONObject();
        try {
            
            JSONObject adc = new JSONObject();
            adc.put("a", "你好");
            adc.put("b", 2);
            
            jsonObject.put("age", adc);
            jsonObject.put("sex", "男");
            jsonObject.put("school", "在职");
            String jsonStr = jsonObject.toString();
            System.out.println(jsonStr);
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        
    }

}

/src/table/LoginTable.java

package table;

public class LoginTable {

    private int id; // id
    private String userName; // 用户名
    private String passWord; // 密码

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

}

编辑器采用MyEclipse 10构建。

posted on 2021-11-09 09:14  鱼塘总裁  阅读(645)  评论(0)    收藏  举报