无法通过servlet中的javascript获得甜蜜警报
(我在使用Intellij)我想在签入数据库后,通过servlet的sweet alert向用户显示登录成功与否的消息,代码如下无法通过servlet中的javascript获得甜蜜警报,javascript,java,servlets,jakarta-ee,sweetalert,Javascript,Java,Servlets,Jakarta Ee,Sweetalert,(我在使用Intellij)我想在签入数据库后,通过servlet的sweet alert向用户显示登录成功与否的消息,代码如下 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out=response.getWriter(); // Conne
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out=response.getWriter();
// Connect to mysql and verify username password
try {String un=request.getParameter("username");
String pw=request.getParameter("password");
Class.forName("com.mysql.jdbc.Driver");
// loads driver
Connection c = DriverManager.getConnection("jdbc:mysql://localhost/esofinal", "root", "admin"); // gets a new connection
PreparedStatement ps = c.prepareStatement("select username,password,type from maincord where username=? and password=?");
ps.setString(1, un);
ps.setString(2, pw);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
HttpSession session = request.getSession();
session.setAttribute("username", un);
String type=rs.getString("type");
if (type.equals("cord")) {
out.println("<script src='https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.11.4/sweetalert2.all.js'></script>");
out.println("<script src='https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js'></script>");
out.println("<script src='https://unpkg.com/sweetalert/dist/sweetalert.min.js'></script>");
out.println("<script language=JavaScript>");
out.println("$(document).ready(function(){");
out.println("swal('welcome','successful!','success');");
out.println("});");
out.println("</script>");
RequestDispatcher rd=request.getRequestDispatcher("cord.jsp");
rd.include(request,response);
}else{
response.sendRedirect("river.jsp");
return;
}
//request.setAttribute("username",un);
//RequestDispatcher dispatcher = request.getRequestDispatcher("success.jsp");
// dispatcher.forward(request,response);
}
response.sendRedirect("Login.jsp");
return;
} catch (ClassNotFoundException | SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
PrintWriter out=response.getWriter();
//连接到mysql并验证用户名和密码
试试{String un=request.getParameter(“用户名”);
字符串pw=request.getParameter(“密码”);
Class.forName(“com.mysql.jdbc.Driver”);
//加载驱动器
连接c=DriverManager.getConnection(“jdbc:mysql://localhost/esofinal“,”根“,”管理“;//获取新连接
PreparedStatement ps=c.prepareStatement(“选择用户名、密码,从主记录中键入用户名=?和密码=?”;
ps.setString(1,un);
ps.setString(2,pw);
结果集rs=ps.executeQuery();
while(rs.next()){
HttpSession session=request.getSession();
session.setAttribute(“用户名”,un);
字符串类型=rs.getString(“类型”);
if(类型等于(“跳线”)){
out.println(“”);
out.println(“”);
out.println(“”);
out.println(“”);
out.println(“$(document).ready(function(){”);
println(“swal('welcome','successful!','successful');”;
out.println(“}”);”;
out.println(“”);
RequestDispatcher rd=request.getRequestDispatcher(“cord.jsp”);
包括(请求、响应);
}否则{
sendRedirect(“river.jsp”);
返回;
}
//setAttribute(“用户名”,un);
//RequestDispatcher=request.getRequestDispatcher(“success.jsp”);
//转发(请求、响应);
}
sendRedirect(“Login.jsp”);
返回;
}catch(ClassNotFoundException | SQLException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
}
}
数据库部分很清楚。它做得很好。登录成功后,我希望显示该警报,但在这里它只是在控制台中打印Java脚本代码。(甚至我尝试将它们放在html和head标记中),但它只是在控制台中打印行。工作正常,错误是我导入了System.out for out(“”),而不是Printwriter out=response.getWriter();我纠正了这一点,现在它的工作良好。多谢各位