Jquery });

Jquery });,jquery,json,ajax,jsp,servlets,Jquery,Json,Ajax,Jsp,Servlets,它也不会在控制台中打印任何内容 这是我的servlet import com.google.gson.gson; 导入com.google.gson.gson; 导入javax.servlet.annotation.WebServlet; 导入javax.servlet.http.HttpServlet; 导入javax.servlet.http.HttpServletRequest; 导入javax.servlet.http.HttpServletResponse; 导入java.io.IOE

它也不会在控制台中打印任何内容

这是我的servlet

import com.google.gson.gson;
导入com.google.gson.gson;
导入javax.servlet.annotation.WebServlet;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入java.io.IOException;
导入java.io.PrintWriter;
导入java.sql.*;
导入java.util.ArrayList;
@WebServlet(“/PaymentCandidates”)
公共类PaymentApprovals扩展了HttpServlet{
Gson Gson=新的Gson();
@凌驾
受保护的void doGet(HttpServletRequest-req、HttpServletResponse-resp)引发IOException{
字符串org_name=req.getParameter(“org_name”);
System.out.println(“组织名称:”+ORG\u名称);
//从数据库中提取候选项
ArrayList CandidateList=新的ArrayList();
PrintWriter pw=resp.getWriter();
试一试{
Class.forName(“com.mysql.jdbc.Driver”);
连接connpardidate=null,connpresit=null;
System.out.println(“::连接到候选数据库:”;
connCandidate=DriverManager.getConnection(“jdbc:mysql://localhost:3306/candidate_db“,”根“,”);
System.out.println(“连接到候选数据库进行支付::$$$$”;
语句stmt=connCandidate.createStatement();
ResultSet rs=stmt.executeQuery(“从'candidate\u details'中选择*,其中isPayment\u received=\'尚未');
while(rs.next()){
if(rs.getString(6.toLowerCase().contains(org_name.toLowerCase())){
候选人cd=新候选人();
System.out.println(“名称:+rs.getString(2));
connDeposit=DriverManager.getConnection(“jdbc:mysql://localhost:3306/deposit_db“,”根“,”);
语句st1=connDeposit.createStatement();
ResultSet ResultSet=st1.executeQuery(“从存款详细信息中选择*”;
while(resultSet.next()){
if(resultSet.getString(1).equals(rs.getString(5))){
setBalance(resultSet.getString(2));
}
}
if(cd.getBalance()==null){
cd.设定余额(“0”);
}
resultSet.close();
st1.close();
conn.close();
cd.setId(rs.getString(1));
cd.setName(rs.getString(2));
cd.setStream(rs.getString(7));
cd.setPhase(rs.getString(8));
cd.setExamtype(rs.getString(15));
cd.setExamdate(rs.getString(17));
cd.setTrainingfromdate(rs.getString(18));
cd.setTrainingtodate(rs.getString(19));
候选名单。添加(cd);
}
}
如果(!(candidatesList.size()>1)){
pw.println(“”);
pw.println(“警报(‘未找到候选者’);”;
println(“location='fillPayment.jsp';”;
pw.println(“”);
}
System.out.println(“GSON Done:”;
字符串jsonString=gson.toJson(候选列表);
System.out.println(“JSON元素完成:”;
System.out.println(“JSON数组::”+jsonString);
分别为setContentType(“应用程序/json”);
resp.getWriter().write(jsonString);
System.out.println(“JSON数组写入!!!”;
}
catch(SQLException | ClassNotFoundException){
pw.println(“----处理付款时出错------”);
println(“错误为:”+ce.getMessage());
}
}
}
***Servlet输出***
组织名称:邪恶公司
::连接到候选数据库:::
已连接到候选人数据库进行付款::$$$$$
姓名:Kaival Patel
GSON已完成:::
JSON元素完成::
JSON数组:::
[{“id”:“1”,“名称”:“KaivalPatel”,
“流”:“艾哈迈达巴德”,“阶段”:“21”,“考试类型”:“8”,“考试日期”:“考试”,
“培训日期起”:“否”,“培训日期起”:“-”,“余额”:“0”}]
JSON数组写的!!!

由于
json数组中只有一个元素
您不需要在
$之间循环。每个
循环都可以使用
responseJson[0]['keyname']
直接访问所有元素。在您以前使用
responseJson[0]时的代码中也是如此
$中的
。每个
循环的所有值都得到了
未定义的
,因为jquery无法识别
。相反,您可以执行以下操作(我已删除了所有不相关的代码):

var responseJson=[{
“id”:“1”,
“名称”:“KaivalPatel”,
“溪流”:“艾哈迈达巴德”,
“阶段”:“21”,
“examtype”:“8”,
“考试”:“考试”,
“培训开始日期”:“否”,
“培训截止日期”:“—”,
“余额”:“0”
}];
log(“嗨,响应来了!!!:”+responseJson);
var str='\n'+
'选择\n'+
'名称\n'+
'流\n'+
'阶段\n'+
'ExamType\n'+
“ExamDate\n”+
'培训日期(从)\n'+
'培训日期(至)\n'+
'费用\n'+
'查看\n'+
'';
log(“从PaymentCandidates:收集响应”);
如果(responseJson.length>0){
$(“#加载区域”).hide();
log(“总条目数::”+responseJson.length);
var表1=$(“#countrytable”);
if(responseJson.length==1){
examtype=(responseJson[0]['examtype']);
stream=(responseJson[0]['stream']);
选定的_name=(responseJson[0]['name'].toString());
如果(examtype==“考试”){
成本=1000;
}否则如果(examtype==“培训”){
如果(流==“PCB”){
成本=20000;
}否则{
成本=60000;
}
}否则{
成本=0;
}
str+='';
str+=''+(responseJson[0]['name'])+'';
str+=''+(responseJson[0]['stream'])+'';
str+=''+(responseJson[0]['phase'])+'';
str+=''+(responseJson[0]['examtype'])+'';
str+=''+(responseJson[0]['examdate'])+'';
str+=''+(responseJson[0]['training\u from\u date'])+'';
str+=''+(responseJson[0]['training_to_date'])+'';
str+=''+成本+'';
str+='';
$(“#countrytable”)。追加(str);
}否则{
$(“#lo
$("#searchbtn").click(function(event) {
            $('#loadingarea').show();
            arr.length = 0;
            names = "";
            total_fees = 0;
            $("#paymentForm").hide();
            $("#idbox").val("");
            $("#name").val("");
            $("#totalcostbox").val("");
            $("#countrytable").empty();
            var org_name = $("#org_name").val();
                jQuery.get('PaymentCandidates',
                    {org_name:org_name}, function(responseJson)
                {
                    console.log("HI Response is coming!!! :::"+responseJson);
                    var str = '<tr>\n' +
                        '<th>Select</th>\n' +
                        '<th>Name</th>\n' +
                        '<th>Stream</th>\n' +
                        '<th>Phase</th>\n' +
                        '<th>ExamType</th>\n' +
                        '<th>ExamDate</th>\n' +
                        '<th>Training Date (from)</th>\n' +
                        '<th>Training Date (to)</th>\n' +
                        '<th>Fees</th>\n' +
                        '<th>View</th>\n'+
                        '</tr>';
                    console.log("Collecting reponse from PaymentCandidates::::");
                    if(responseJson.length>0) {
                        $("#loadingarea").hide();
                        console.log("Total Entries::::" + responseJson.length);
                        //$("#countrytable").empty();
                        var table1 = $("#countrytable");
                        if (responseJson.length===1) {
                            $.each(responseJson[0], function (key, value) {
                                var json = JSON.parse(JSON.stringify(responseJson.toString()));
                                examtype = (value['examtype']);
                                stream = (value['stream']);
                                selected_name = (value['name'].toString());
                                if (examtype === "Exam") {
                                    cost = 1000;
                                } else if (examtype === "Training") {
                                    if (stream === "PCB") {
                                        cost = 20000;
                                    } else {
                                        cost = 60000;
                                    }
                                } else {
                                    cost = 0;
                                }
                                str += '<tr><td style="font-size: 25px"><input name=' + selected_name + ' type="checkbox" id=' + (value['id']) + ' value=' + cost + ' onchange="onCheckBoxChanged(this.id,this.value,this.name)"></td>';
                                str += '<td>' + (value['name']) + '</td>';
                                str += '<td>' + (value['stream']) + '</td>';
                                str += '<td>' + (value['phase']) + '</td>';
                                str += '<td>' + (value['examtype']) + '</td>';
                                str += '<td>' + (value['examdate']) + '</td>';
                                str += '<td>' + (value['training_from_date']) + '</td>';
                                str += '<td>' + (value['training_to_date']) + '</td>';
                                str += '<td>' + cost + '</td>';
                                str += '<td> <a class="button view" target="_blank" href=viewDetailedCandidate.jsp?' + (value['id']) + '>View Candidate Details</a></td></tr>';
                                $("#countrytable").append(str);
                            });

                        } else {
                            $("#loadingarea").hide();
                            $.each(responseJson, function (key, value) {
                                var json = JSON.parse(JSON.stringify(responseJson.toString()));
                                depositbal=(value['balance']);
                                if(depositbal>0){
                                    $("#usethisbal").show();
                                }
                                else{
                                    $("#usethisbal").hide();
                                }
                                $("#balancebox").val(depositbal);
                                examtype = (value['examtype']);
                                stream = (value['stream']);
                                selected_name = (value['name'].toString());
                                if (examtype === "Exam") {
                                    cost = 1000;
                                } else if (examtype === "Training") {
                                    if (stream === "PCB") {
                                        cost = 20000;
                                    } else {
                                        cost = 60000;
                                    }
                                } else {
                                    cost = 0;
                                }
                                str += '<tr><td style="font-size: 25px"><input name=' + selected_name + ' type="checkbox" id=' + (value['id']) + ' value=' + cost + ' onchange="onCheckBoxChanged(this.id,this.value,this.name)"></td>';
                                str += '<td>' + (value['name']) + '</td>';
                                str += '<td>' + (value['stream']) + '</td>';
                                str += '<td>' + (value['phase']) + '</td>';
                                str += '<td>' + (value['examtype']) + '</td>';
                                str += '<td>' + (value['examdate']) + '</td>';
                                str += '<td>' + (value['training_from_date']) + '</td>';
                                str += '<td>' + (value['training_to_date']) + '</td>';
                                str += '<td>' + cost + '</td>';
                                str += '<td> <a class="button view" target="_blank" href=viewDetailedCandidate.jsp?' + (value['id']) + '>View Candidate Details</a></td></tr>';
                            });
                            $("#countrytable").append(str);
                        }
                    }
                    else{
                        console.log("JSON Array Fetch Null....");
                    }

                });
                $("#tablediv").show();
            });
        });
import com.google.gson.Gson;
import com.google.gson.Gson;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;
import java.util.ArrayList;

@WebServlet("/PaymentCandidates")
public class PaymentCandidates extends HttpServlet {
Gson gson = new Gson();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    String org_name=req.getParameter("org_name");
    System.out.println("ORG_NAME:"+org_name);
    //fetch Candidates from db
    ArrayList<Candidates> candidatesList = new ArrayList<>();
    PrintWriter pw=resp.getWriter();
    try{
        Class.forName("com.mysql.jdbc.Driver");
        Connection connCandidate = null,connDeposit=null;
        System.out.println(":::CONNECTING TO CANDIDATES DB::::");
        connCandidate = DriverManager.getConnection("jdbc:mysql://localhost:3306/candidate_db", "root", "");
        System.out.println("Connected to Candidates DB for PAYMENT::::$$$$$");
        Statement stmt=connCandidate.createStatement();
        ResultSet rs = stmt.executeQuery("SELECT * FROM `candidate_details` WHERE isPayment_received=\"Not Yet\" ");
        while(rs.next()){
            if(rs.getString(6).toLowerCase().contains(org_name.toLowerCase())) {
                Candidates cd = new Candidates();
                System.out.println("NAME:" + rs.getString(2));
                connDeposit = DriverManager.getConnection("jdbc:mysql://localhost:3306/deposit_db", "root", "");
                Statement st1=connDeposit.createStatement();
                ResultSet resultSet=st1.executeQuery("SELECT * FROM deposit_details;");
                while(resultSet.next()) {
                    if (resultSet.getString(1).equals(rs.getString(5))) {
                        cd.setBalance(resultSet.getString(2));
                    }
                }
                if(cd.getBalance()==null){
                    cd.setBalance("0");
                }
                resultSet.close();
                st1.close();
                connDeposit.close();
                cd.setId(rs.getString(1));
                cd.setName(rs.getString(2));
                cd.setStream(rs.getString(7));
                cd.setPhase(rs.getString(8));
                cd.setExamtype(rs.getString(15));
                cd.setExamdate(rs.getString(17));
                cd.setTrainingfromdate(rs.getString(18));
                cd.setTrainingtodate(rs.getString(19));
                candidatesList.add(cd);
            }
        }
        if(!(candidatesList.size() > 1)){
            pw.println("<script type=\"text/javascript\">");
            pw.println("alert('No Candidates Found');");
            pw.println("location='fillPayment.jsp';");
            pw.println("</script>");
        }
        System.out.println("GSON Done:::");
        String jsonString=gson.toJson(candidatesList);
        System.out.println("JSON ELEMENT DONE::");
        System.out.println("JSON ARRAY:::"+jsonString);
        resp.setContentType("application/json");
        resp.getWriter().write(jsonString);
        System.out.println("JSON ARRAY WRITTEN!!!");
    }
    catch(SQLException | ClassNotFoundException ce){
        pw.println("-------ERROR IN PROCESSING PAYMENT-----");
        pw.println("Error is:"+ ce.getMessage());
    }

  }

}



***Servlet Output***
ORG_NAME:Evil Corporation
:::CONNECTING TO CANDIDATES DB::::
Connected to Candidates DB for PAYMENT::::$$$$$
NAME:Kaival Patel
GSON Done:::
JSON ELEMENT DONE::
JSON ARRAY::: 
[{"id":"1","name":"KaivalPatel",
"stream":"Ahmedabad","phase":"21","examtype":"8","examdate":"Exam",
"training_from_date":"No","training_to_date":"-","balance":"0"}]
JSON ARRAY WRITTEN!!!