tomcat服务器端: public class LoginOrRegServlet extends HttpServlet { //登录和注册服务器 private static final long serialVersionUID = 1L; private static final String Driver = "com.mysql.jdbc.Driver"; //mysql驱动 private static final String ConnectUrl = "jdbc:MySQL://localhost:3306/itosystem";//连接数据库的URL private String User = "root"; //登录数据库的用户名和密码 private String Password = "num12369"; @Override protected void service(HttpServletRequest request,HttpServletResponse response) { String connUserName; //取得请求中的用户名和密码 String connPassword; String Action; //判断请求中是登录还是注册 boolean isNull = false; //根据用户名查询数据库是否查到 Connection conn = null; DataOutputStream dos = null; Statement statement = null; ResultSet rs = null; connUserName = request.getParameter("userName");//取得请求中的各种值 connPassword = request.getParameter("password"); Action = request.getParameter("action"); System.out.println(connUserName + "-" + connPassword+"-"+Action); try { //设置驱动和连接数据库 Class.forName(Driver); conn = DriverManager.getConnection(ConnectUrl, User, Password); } catch (Exception e1) { e1.printStackTrace(); } if(Action.equals("reg")){ //if请求为注册 try { if (conn != null) { //if数据库连接成功 statement = conn.createStatement(); //取得对数据库的操作对象 rs = statement.executeQuery("select password from user where name='" + connUserName + "'"); //根据请求中的用户名使用mysql语句对数据库的查询操作 dos = new DataOutputStream(response.getOutputStream()); //对请求做出回应的对象 if(!rs.next()){ //如果没有查到记录,表明用户名可以使用 statement.executeUpdate("insert into user values('"+connUserName+"','"+connPassword+"')"); //执行插入操作 dos.writeInt(5); //回应给客户端的值(值可以随意),5表示成功 }else{ dos.writeInt(10); //10表示用户已存在 } dos.flush(); //关闭各种对象 dos.close(); rs.close(); statement.close(); conn.close(); }else{ System.out.println("数据库连接失败"); } } catch (Exception e) { System.out.println("产生异常"); e.printStackTrace(); } //注册结束 }else if(Action.equals("login")){//if请求为登录 try { if (conn != null) { statement = conn.createStatement(); rs = statement.executeQuery("select password from user where name='"+ connUserName + "'"); //查询数据库 dos = new DataOutputStream(response.getOutputStream()); while(rs.next()){//if查询到有这个用户名的记录 String backPassword; backPassword = rs.getString("password"); //从数据库获得这个用户名的密码 if (backPassword.equals(connPassword)) { //用数据库返回的密码和连接请求中的密码对比 dos.writeInt(10); //如果相等,返回值,登录成功 }else{ dos.writeInt(0); //否则登录失败 } isNull = true; //查到有记录,将其赋值为true } if(!isNull){ //if没查到记录 dos.writeInt(5); //返回5,表示用户不存在 } dos.flush(); //关闭各种对象 dos.close(); rs.close(); statement.close(); conn.close(); } else { System.out.println("数据库连接失败"); } } catch (Exception e) { e.printStackTrace(); } } }//登录操作结束 }
android 做登陆与mysql数据库交互
最新推荐文章于 2023-07-14 15:17:16 发布