⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginvalidata.java

📁 Ajax实现POST方式注册登录
💻 JAVA
字号:
package pack;

import java.io.IOException;

import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.*;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import javax.xml.parsers.DocumentBuilder;


public class LoginValidata extends HttpServlet {
    
	public void init(ServletConfig config) throws ServletException {
    }
    
    
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    	//设置接收信息的字符集
    	request.setCharacterEncoding("UTF-8");

		//将传过来的XML读取到缓冲区中
		StringBuffer buf = new StringBuffer();
		String line = null;
		try {
			BufferedReader reader = request.getReader();
			while((line = reader.readLine()) != null) {
				buf.append(line);
			}
	    }
	    catch (Exception ex) {
	    	ex.printStackTrace();
	    }
	    String xml = buf.toString();
	    //创建Document对象
	    Document dom = null;
	    try {
	    	dom = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new ByteArrayInputStream(xml.getBytes()));
	    	
	    	//上面这步相当于下面三步
	    	/*
	    	DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
	    	DocumentBuilder bulider = factory.newDocumentBuilder();
	    	dom = bulider.parse(new ByteArrayInputStream(xml.getBytes()));
	    	*/
	    }
	    catch (ParserConfigurationException ex) {
	    	System.out.println ("a");
	    	ex.printStackTrace();
	    } catch(SAXException ex) {
	    	System.out.println ("b");
	    	ex.printStackTrace();
	    }
	    
		//解析XML
		String name = dom.getElementsByTagName("name").item(0).getFirstChild().getNodeValue();
		String password = dom.getElementsByTagName("password").item(0).getFirstChild().getNodeValue();
		String responseText="";
        //依据验证用户名是否存在
		DataAccess da = new DataAccess();
		ResultSet rs = da.query("select * from Users where Name='" + name + "' and Password='" + password + "'");
		try {
			if(rs.next()) {//验证通过
				responseText = "ok";
			} else {
				responseText = "用户名与密码不匹配";
			}
	    }
	    catch (Exception ex) {
	    	ex.printStackTrace();
	    }
	    //设置输出信息的格式及字符集,注意必须为UTF-8才可以正确解析动态生成的XML文件
        response.setContentType("text/xml; charset=UTF-8");
        response.setHeader("Cache-Control", "no-cache");
        response.getWriter().print(responseText);
    }
    /*
     *  处理<POST> 请求方法.
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
       doPost(request, response);
    }
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -