这学期期末要结束了,翻开博客园发现好多内容都没有写,也没有学完全,所以这次的博客园是补充之前的多选项查询的代码。

1.这次我在<青年志愿服务网>的项目的基础上,对信息的多功能查询进行说明和学习

在上节博客中的基础上增加了VagueServlet.java

package com.servlet;

import java.io.IOException;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.bean.Bean;
import com.dao.Dao;

/**
 * Servlet implementation class VagueServlet
 */
@WebServlet("/VagueServlet")
public class VagueServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public VagueServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        
        
        
        
        Dao dao=new Dao();
        java.util.List<Bean> list= new ArrayList<Bean>();
        String p[] = new String[5];
        String s[] = new String[5];
        String g[] = new String[5];
        String f[] = new String[5];
        String number = null;

        //String number1 = null;
        number=request.getParameter("number1");
        //number1=request.getParameter("number2");
        int n = Integer.parseInt(number);for(int i=1;i<=n;i++)
        {
            p[i]= (String) request.getParameter("s"+i);
            s[i]=(String)request.getParameter("shuru"+i);
            f[i]=(String)request.getParameter("c"+i);if(p[i].equals("姓名")){
                p[i] = "name";
            }else if(p[i].equals("姓别")){
                p[i] = "sex";
            }else if(p[i].equals("民族")){
                p[i] = "nation";
            }else if(p[i].equals("时间")){
                p[i] = "time";
            }else if(p[i].equals("年龄")){
                p[i] = "age";
            }
            
            
            
        }
        
        for(int i=1;i<n;i++)
        {
            g[i]=(String) request.getParameter("g"+i);
            if(g[i].equals("且")) {
                g[i]="and";
            }else if(g[i].equals("或")) {
                g[i]="or";
            }
        }
        
        String sql="where ";
        for(int i=1;i<n;i++)
        {
            if(s[i].equals(""))
            {
                continue;
            }
            if(f[i].equals("精确"))
            {
                sql=sql+p[i]+"='"+s[i]+"'"+" "+g[i]+" ";
            }else if(f[i].equals("模糊"))
            {
                sql=sql+p[i]+" "+"LIKE"+" "+"'%"+s[i]+"%'"+" "+g[i]+" ";
            }
            
        }
        if(f[n].equals("精确")) {
            sql = sql + p[n]+"="+"'"+s[n]+"'";    
        }else {
            sql = sql + p[n]+" "+"LIKE"+" "+"'%"+s[n]+"%'";    
        }
//    }
        if(n==1&&s[1].equals(""))
        {
            sql="";
        }
        list = dao.loadview(sql);
            
            if(list.size()!=0) {
            request.setAttribute("course11",list); 
            request.setAttribute("message", "查找成功");
            System.out.print("查找成功");
            request.getRequestDispatcher("selectmore_show.jsp").forward(request,response);
            }
            else {
                request.setAttribute("message", "查找失败");
                request.getRequestDispatcher("select.jsp").forward(request,response);
            }
//        HttpSession session = request.getSession();
//        session.setAttribute("tiaojian", list);
////            int servletid=1;
////            request.setAttribute("list", list);
////            request.setAttribute("servletid", servletid);
//        try {
////            request.getRequestDispatcher("/admin/123.jsp").forward(request, response);
//            response.sendRedirect(request.getContextPath()+"/show.jsp");
//        } catch (IOException e) {//            e.printStackTrace();
//        } 
        
        
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

select.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>查询页面</title>

<script>
var i=1;
var j=1;
document.getElementById('number1').value=i;
document.getElementById('number2').value=j;
function demoDisplay(){
    if(document.getElementById("p2").style.display=="none"){
        i++;
        j++;
        document.getElementById("p2").style.display="inline";
        document.getElementById('number1').value=i;
        document.getElementById('number2').value=j;
//         alert(i);
//         alert(j);
        return;
    }else if(document.getElementById("p3").style.display=="none")
        {
            i++;
            j++;
            document.getElementById("p3").style.display="inline";
            document.getElementById('number1').value=i;
            document.getElementById('number2').value=j;
//             alert(i);
//             alert(j);
            return;
        }else if(document.getElementById("p4").style.display=="none")
        {
            i++;
            j++;
            document.getElementById("p4").style.display="inline";
            document.getElementById('number1').value=i;
            document.getElementById('number2').value=j;
//             alert(i);
//             alert(j);
            return;
        }else if(document.getElementById("p5").style.display=="none")
        {
            i++;
            j++;
            document.getElementById("p5").style.display="inline";
            document.getElementById('number1').value=i;
            document.getElementById('number2').value=j;
//             alert(i);
//             alert(j);
            return;
        }
}
function demoVisibility(){
    if(document.getElementById("p5").style.display=="inline")
    {
        i--;
        j--;
        document.getElementById("p5").style.display="none";
        document.getElementById('number1').value=i;
        document.getElementById('number2').value=j;
        //System.out.println("i:"+i+"j"+j);
        return;
    }else if(document.getElementById("p4").style.display=="inline")
    {
        i--;
        j--;
        document.getElementById("p4").style.display="none";
        document.getElementById('number1').value=i;
        document.getElementById('number2').value=j;
        //System.out.println("i:"+i+"j"+j);
        return;
    }else if(document.getElementById("p3").style.display=="inline")
    {
        i--;
        j--;
        document.getElementById("p3").style.display="none";
        document.getElementById('number1').value=i;
        document.getElementById('number2').value=j;
        //System.out.println("i:"+i+"j"+j);
        return;
    }else if(document.getElementById("p2").style.display=="inline")
    {
        i--;
        j--;
        document.getElementById("p2").style.display="none";
        document.getElementById('number1').value=i;
        document.getElementById('number2').value=j;
        //System.out.println("i:"+i+"j"+j);
        return;
    }
}
</script>

</head>
<body>
<%
    Object message=request.getAttribute("message");
    if(message!=null&&!"".equals(message)){
        %>
    
    <script type="text/javascript">
        alert("<%=request.getAttribute("message")%>");
    </script>
 <%}%>
<form  action="VagueServlet" method="post">
<br>
&nbsp;&nbsp;
<button type="button" onclick="demoDisplay()" class="layui-btn layui-btn-primary layui-btn-sm"><i class="layui-icon">+</i></button>
<button type="button" onclick="demoVisibility()" class="layui-btn layui-btn-primary layui-btn-sm"><i class="layui-icon">-</i></button><br>

&nbsp;&nbsp;
<div id="p1">
&nbsp;&nbsp;
    <select name="g22" style="visibility:hidden">
    <option value="且"></option>
    <option value="或"></option>
    </select>
    <select name="s1" >
    <option>名字</option>
    <option>性别</option>
    <option>民族</option>
    <option>注册日期</option>
    <option>年龄</option>
    </select>
    <input type="text" name="shuru1" value="" />
    <select name="c1">
    <option>精确</option>
    <option>模糊</option>
    </select>
    <br>
</div>

<div id="p2" style="display:none">
&nbsp;&nbsp;
    <select name="g1" >
    <option value="且"></option>
    <option value="或"></option>
    </select>
    <select name="s2">
    <option>名字</option>
    <option>性别</option>
    <option>民族</option>
    <option>注册日期</option>
    <option>年龄</option>
    </select>
    <input type="text" name="shuru2" value="" />
    <select name="c2">
    <option>精确</option>
    <option>模糊</option>
    </select>
    <br>
</div>

<div id="p3" style="display:none">
&nbsp;&nbsp;
<select name="g2">
    <option value="且"></option>
    <option value="或"></option>
    </select>
    <select name="s3">
    <option>名字</option>
    <option>性别</option>
    <option>民族</option>
    <option>注册日期</option>
    <option>年龄</option>
    </select>
    <input type="text" name="shuru3" value="" />
    <select name="c3">
    <option>精确</option>
    <option>模糊</option>
    </select>
    <br>
</div>

<div id="p4" style="display:none">
&nbsp;&nbsp;
<select name="g3">
    <option value="且"></option>
    <option value="或"></option>
    </select>
    <select name="s4">
    <option>名字</option>
    <option>性别</option>
    <option>民族</option>
    <option>注册日期</option>
    <option>年龄</option>
    </select>
    <input type="text" name="shuru4" value="" />
    <select name="c4">
    <option>精确</option>
    <option>模糊</option>
    </select>
    <br>
</div>

<div id="p5" style="display:none">
&nbsp;&nbsp;
<select name="g4">
    <option value="且"></option>
    <option value="或"></option>
    </select>
    <select name="s5">
    <option>名字</option>
    <option>性别</option>
    <option>民族</option>
    <option>注册日期</option>
    <option>年龄</option>
    </select>
    <input type="text" name="shuru5" value="" />
    <select name="c5">
    <option>精确</option>
    <option>模糊</option>
    </select>
</div>
<p hidden>
<input type="text" value="1" id="number1" name="number1">
<input type="text" value="1" id="number2" name="number2">
</p>
<br>
    <input type="submit" name="submit" value="查询" >
  </form>
  <br>
<h4 align="left">
<%--  一共查询到了<span style="color:red"><%=list.size() %></span>条数据  --%>
</h4>
<table class="table table-striped">
    <thead>
    </thead>
 </table>

</body>
</html>

显示页面:(同时可以进行精确和模糊查询)

 

 selectmore_show.jsp:

<%@ page language="java" contentType="text/html; charse=tUTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>信息显示页面</title>
</head>
<body>
<a href="denglu.jsp">返回主界面</a>
<%
    Object message=request.getAttribute("message");
    if(message!=null&&!"".equals(message)){
        %>
    
    <script type="text/javascript">
        alert("<%=request.getAttribute("message")%>");
    </script>
 <%}%>
<table>
    <tr>
        <td>姓名</td>
        <td>性别</td>
        <td>民族</td>
        <td>注册日期</td>
        <td>年龄</td>
        <td>政治面貌</td>
        <td>服务类别</td>
    </tr>
<c:forEach items="${course11}" var="course1">
    <tr>
        <td>${course1.name}</td>
        <td>${course1.sex}</td>
        <td>${course1.nation}</td>
        <td>${course1.time}</td>
        <td>${course1.age}</td>
        <td>${course1.kind}</td>
        <td>${course1.serve}</td>
        
    </tr>
        </c:forEach>
</table>
</body>
</html>

最后显示查询的结果。

posted on 2019-12-23 14:52  阡陌祁画  阅读(275)  评论(0编辑  收藏  举报