アンドロイド・ウェブ・MySQLの接続------- WebサーバーのMySQLデータベースの接続テスト(ログイン機能の実現のために)

クイズをログに記録するWebサーバーの接続MySQLのクエリ機能

ツールが必要

MySQLの、EclipseのIDE、Tomcatの(プロジェクト必要なjarパッケージ:mysqlのコネクタ-javaの-8.0.19.jar)

私のMySQLは、ダウンロードの8.0.19バージョンは、それがバージョン5の始まりであるならば、それは瓶の最初の5バージョンをダウンロードするのが最善の方法ですので、これをですので、ブロガーはまた、オンラインリソースを大量に使用され、このために間違いを何回も失敗しますミスがありました。特定のメソッドを追加し、ブログの参照リンクを

必要なJARプライベートリソースは、私が[email protected]することができます| [email protected]

データベースの構成:図を参照してください。

MYDBデータベーステーブル名:ユーザテーブルの内容(ユーザ名、パスワード)
ここに画像を挿入説明

第二に、データベースは書き込みプログラムを起動するように設定された後、

以下は、ディレクトリの作成するプロジェクトである
ここに画像を挿入説明
過剰私は直接コードに、言うことはありません

コンテンツMyServlet.java

package cdu.nls.login;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
 * Servlet implementation class MyServlet
 */
@WebServlet("/MyServlet")
public class MyServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	
		
		 String ID = request.getParameter("ID"); 
	     String PW= request.getParameter("PW");
	 
	     boolean type=false;
	     response.setContentType("text/html; charset=UTF-8");
	     PrintWriter out = response.getWriter();    
	     try {
	    	 Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到管理器
	    	 String url = "jdbc:mysql://localhost:3306/mydb?serverTimezone= UTC&characterEncoding=utf-8";
	    	 Connection con = DriverManager.getConnection(url,ID,PW);
	    	 if(con != null) {
	    		 out.println("mysql connection successful!");
	    		 con.close();
	    		 request.getRequestDispatcher("user_login.jsp").forward(request,response);
	    		 System.out.print("login_mysql_successful\n");
	    		 out.print("haha");
	    		
	    	 }
	    	 else {
	    		 out.println("mysql connection failture!");
	    	 }
	    	 
	     }   catch(ClassNotFoundException e) {
	    	 e.printStackTrace();
	     }catch (SQLException e) {
	    	 e.printStackTrace();
	     }
		              out.println(type);
		              
		              out.flush();
		              out.close();
		              
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		          		doGet(request, response);
	}

}

コンテンツMyservlet1.java:この機能は、接続とMySQLクエリの一部であります

package cdu.nls.login;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.ResultSet;
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 java.sql.Connection;

@WebServlet("/MyServlet1")
public class MyServlet1 extends HttpServlet {
	private static final long serialVersionUID = 1L;
     

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	  String user2 = request.getParameter("username"); 
	  String pass2= request.getParameter("password");
	  boolean type= false;
	  PrintWriter out = response.getWriter(); 
	  java.sql.Statement stmt = null;//设置stmt全局变量
	  System.out.print("获取jsp界面的:");
	  System.out.print("  "+user2);
	  System.out.print("  ");
	  System.out.print("length:"+user2.length());
	  System.out.print("  "+pass2);
	  System.out.print("  ");
	  System.out.print("length:"+pass2.length());
	  
	  try
      {
		 Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到管理器
	     String url = "jdbc:mysql://localhost:3306/mydb?serverTimezone= UTC&characterEncoding=utf-8";
	     Connection con = DriverManager.getConnection(url,"root","123456");//此处
	     stmt = con.createStatement();//实例化Statement对象,用stmt接收
         String sql;//定义一个string类型的数据变量sql
         sql = "SELECT username, password FROM user";//用sql接收数据库语句
         ResultSet rs = stmt.executeQuery(sql); //执行sql
     
         // 展开结果集数据库
         while(rs.next()){
             // 通过字段检索
             String use1  = rs.getString("username");
             String pass1 = rs.getString("password");
      
             System.out.print("\nmysql中获取的内容:\nmysql_username: " + use1);
             System.out.print("  ");System.out.print("length:"+use1.length());
             System.out.print(" mysql_password: " + pass1);System.out.print("  ");
             System.out.print("length:"+pass1.length());
            if(use1.contentEquals(user2) &&pass1.contentEquals(pass2))
             { 
            	 type=true;
            	 System.out.print("\nlogin mysql successful!");
            	 out.print("\nlogin mysql successful!");
             }
  
         }
         // 完成后关闭
         rs.close();
         stmt.close();
         con.close();
	}
        catch(Exception ex)
       {
            ex.printStackTrace();
       }
        finally
        {
        //	con.Close();
            out.print(type);
            out.flush();
            out.close();
        }
	
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		doGet(request, response);
	}

}

index.jspの(ホーム:ログMySQLユーザ名とパスワード、user_login.jspに成功したジャンプ)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
  <%@ page import = "java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>hello(此页登录您的数据库用户名和密码)</h1>
<form id="from1" action="MyServlet" method="post">
<table>
<tr><td>用户名</td><td><input type="text"  name="ID"></td></tr>
<tr><td>密码</td><td><input type="password"  name="PW"></td></tr>

<tr><td colspan = "3" align = "center"><input type = "submit" value = "login_mysql" id = "btnde1" onclick="del(id)"/></td></tr>


</table>
</form>

</body>
</html>

user_login.jsp(テーブルに格納されているログイン・データ・コンテンツ、機能はクエリデータベース情報です)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

<td colspan = "3" align = "center">
<h1>user login(此页是您数据库中数据表中存的内容)</h1></td>
<form id="from1" action="MyServlet1" method="post">
<table>
<tr><td>username</td><td><input type="text"  name="username"></td></tr>
<tr><td>password</td><td><input type="password"  name="password"></td></tr>

<tr><td colspan = "3" align = "center"><input type = "submit" value = "login" id = "btnde2" onclick="del(id)"/></td></tr>

</table>
</form>
</body>
</html>

成功した操作

1.index.jsp(データベースのユーザー名とパスワードを入力します)

ここに画像を挿入説明

成功したジャンプインタフェースuser_login.jsp後2.(現在ユーザテーブルに格納されたコンテンツを入力)

ここに画像を挿入説明

3.成功したリターン情報(以下の情報を印刷して、MySQLのクエリを入力してください)

ここに画像を挿入説明

これ行われ、前後にピットに次々に、同じピットを繰り返し、コードが後続の更新(変更して再検索への追加や削除、インターフェイスデザインなど)を改善していきます

ソースアドレスのリンク

公開された14元の記事 ウォン称賛23 ビュー3287

おすすめ

転載: blog.csdn.net/sf9090/article/details/104847003