JavaBean专题

带参数的数据查询

2018-08-19  本文已影响0人  神坛下的我

Util.java

import java.sql.*;

public class Util {
    private Connection conn;
    private Statement stm;
    private ResultSet rs;
    private String classname="com.mysql.jdbc.Driver";
    private String url="jdbc:mysql://localhost:3306/test";
    public Util(){
        try {
            Class.forName(classname);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
    /*获取连接*/
    public Connection getConn() {
        try {
            conn=DriverManager.getConnection(url,"root","123456");
        } catch (SQLException e) {
            e.printStackTrace(System.err);
            conn=null;
        }
        return conn;
    }
    /*关闭连接*/
    public void closed(){
        
            try {
                if (rs!=null) {
                    rs.close();
                }
                if (stm!=null) {
                    stm.close();
                }
                if(conn!=null){
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
    }
    
    
    public void setConn(Connection conn) {
        this.conn = conn;
    }
    /*执行语句*/
    public Statement getStm() {
        
        try {
            conn=getConn();
            stm=conn.createStatement();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return stm;
    }
    public Statement getStmed(){
        
        try {
            conn=getConn();
            stm=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return stm;
    }
    public ResultSet getAllRs(){
        String sql="select * from u";
        
        try {
            stm=getStmed();
            rs=stm.executeQuery(sql);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rs;
    }
    public ResultSet getPartRs(String subsql,String subsqlvalue){
        if(subsql==null){
            subsql="";
        }
        if(subsqlvalue==null){
            subsqlvalue="";
        }
        String sql= "select * from u where "+subsql+" ='"+subsqlvalue+"'";
        
        try {
            stm=getStmed();
            rs=stm.executeQuery(sql);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rs;
    }

index.jsp

<body>
    <form action="result.jsp" method="post">
        <table>
            <tr bgcolor="lightgrey" height="25">
                <td align="center">Id</td>
                <td align="center">用户名</td>
                <td align="center">密码</td>
            </tr>
            <jsp:useBean id="db" class="com.count.Util" scope="page"></jsp:useBean>
            <%
                ResultSet rsall = db.getAllRs();
                while(rsall.next()){
            %>
                <tr>
                    <td align="center"><%=rsall.getString("id") %></td>
                    <td align="center"><%=rsall.getString("name") %></td>
                    <td align="center"><%=rsall.getString("pwd") %></td>
                </tr>
            <%
                }
            %>
                <tr bgcolor="lightgrey">
                    <td align="center" colspan="5">
                    查询类型:
                    <select name="subsql">
                        <option value="id">Id</option>
                        <option value="name">用户名</option>
                        <option value="pwd">密码</option> 
                    </select>
                    <input type="text" name="subsqlvalue" size="17">
                    <input type="submit" name="searchpart" value="查询" onclick="return check()">
                    </td>
                </tr>
        </table>
    </form>
    
    <table>
        <tr bgcolor="skyblue">
            <td align="center">生成的版权信息</td>
        </tr>
        <tr>
            <td>
                <jsp:useBean id="copyright" class="com.count.Copyright"></jsp:useBean>
                <jsp:getProperty property="copyrightStr" name="copyright"/>
            </td>
        </tr>
    </table>
</body>

result.jsp

<body>
    <jsp:useBean id="db" class="com.count.Util" scope="page"></jsp:useBean>
    <%
        ResultSet rs = null;
        boolean mark=true;
        String mess="";
        String subsql= request.getParameter("subsql");
        String subsqlvalue=request.getParameter("subsqlvalue");
    %>
    <table>
        <tr>
            <td align="center" colspan="5"><%=mess %></td>
        </tr>
        <tr bgcolor="lightgrey" height="20">
            <td align="center">Id</td>
            <td align="center">用户名</td>
            <td align="center">密码</td>
        </tr>
        <%
            rs=db.getPartRs(subsql, subsqlvalue);
            if(!rs.next()){
        %>
        <tr>
            <td align="center" colspan="5">没有记录显示!</td>
        </tr>
        <%
            }else{
                rs.previous();
                while(rs.next()){
        %>
            <tr>
                <td align="center"><%=rs.getString(1) %></td>
                <td align="center"><%=rs.getString(2) %></td>
                <td align="center"><%=rs.getString(3) %></td>
            </tr>
        <%
                }
            }
        %>
    </table>
</body>
3.PNG 4.PNG
上一篇下一篇

猜你喜欢

热点阅读