android-servlet-mysql servlet代码实现用户登陆 (结合上一篇jdbc封装里面的方法)

package servlet;

import java.io.DataOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

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 net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import com.Jdbcutil.JdbcUtils;

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

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        //response.setContentType("charset=utf-8");
        PrintWriter out = response.getWriter();
        JdbcUtils jdbcUtils = new JdbcUtils();//上一篇jdbc封装类
        jdbcUtils.getConnection();
        String sql = "select*from userinfo";
        List<Object> params = new ArrayList<Object>();
        try {
            List<Map<String, Object>> list = jdbcUtils.findMoreResult(sql, params);
            System.out.println(jdbcUtils.findMoreResult(sql, params));
            
            for(int i=0;i<list.size();i++){
                Map<String,Object> map = new HashMap<String,Object>();
                map.put("username", list.get(i).get("username"));
                map.put("password", list.get(i).get("pswd"));
                //获得客户端提交该用户名密码
                String username = request.getParameter("username");
                String password = request.getParameter("password");
    
                //判断请求用户名和密码是否与数据库存储的用户名密码匹配
                //匹配返回1,不匹配返回0
                if(map.get("username").equals(username)
                        &&map.get("password").equals(password)){
                    out.print("success");                    
                    System.out.println("seccess!");
                    return;
                }
            }
            out.print("failure");
            
            //用JSON封装结果传给手机
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("success", 1);
            jsonObject.put("failure", 0);
            JSONArray ja = new JSONArray();
            ja.add(jsonObject);
//            JSONArray ja = JSONArray.fromObject(list);
            out.write(ja.toString());
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            jdbcUtils.releaseConn();//关闭数据库
        }
         out.flush();   
         out.close();
    }
}

posted @ 2013-05-28 14:50  缥缈川  阅读(487)  评论(0)    收藏  举报