日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

瀏覽:18日期:2022-09-18 16:45:00
一、Android 項(xiàng)目當(dāng)中設(shè)置明文傳輸

1、設(shè)置明文傳輸?shù)膞ml

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

<?xml version='1.0' encoding='UTF-8'?><network-security-config> <base-config cleartextTrafficPermitted='true'/></network-security-config>2、引入上述創(chuàng)建的xml

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

android:networkSecurityConfig='@xml/network_security_config'二、在MyEclipse當(dāng)中創(chuàng)建Web項(xiàng)目

1、創(chuàng)建項(xiàng)目

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

引入MySQL的驅(qū)動(dòng)包

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

2、創(chuàng)建實(shí)體類User

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package entity;public class User { private int id; private String name; private String username; private String password; private int age; private String phone; public User() { } public User(int id, String name, String username, String password, int age, String phone) {this.id = id;this.name = name;this.username = username;this.password = password;this.age = age;this.phone = phone; } public int getId() {return id; } public void setId(int id) {this.id = id; } public String getName() {return name; } public void setName(String name) {this.name = name; } public String getUsername() {return username; } public void setUsername(String username) {this.username = username; } public String getPassword() {return password; } public void setPassword(String password) {this.password = password; } public int getAge() {return age; } public void setAge(int age) {this.age = age; } public String getPhone() {return phone; } public void setPhone(String phone) {this.phone = phone; }}

3、創(chuàng)建JDBCUtils工具類

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class JDBCUtils { static {try { Class.forName('com.mysql.jdbc.Driver');} catch (ClassNotFoundException e) { e.printStackTrace();} } public static Connection getConn() {Connection conn = null;try { conn=DriverManager.getConnection('jdbc:mysql://127.0.0.1:3306/test','root','root');}catch (Exception exception){ exception.printStackTrace();}return conn; } public static void close(Connection conn){try { conn.close();} catch (SQLException throwables) { throwables.printStackTrace();} }}

4、創(chuàng)建UserDao類

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import entity.User;public class UserDao { public boolean login(String name,String password){String sql = 'select * from users where name = ? and password = ?';Connection con = JDBCUtils.getConn();try { PreparedStatement pst=con.prepareStatement(sql); pst.setString(1,name); pst.setString(2,password); if(pst.executeQuery().next()){return true; }} catch (SQLException throwables) { throwables.printStackTrace();}finally { JDBCUtils.close(con);}return false; } public boolean register(User user){String sql = 'insert into users(name,username,password,age,phone) values (?,?,?,?,?)';Connection con = JDBCUtils.getConn();try { PreparedStatement pst=con.prepareStatement(sql); pst.setString(1,user.getName()); pst.setString(2,user.getUsername()); pst.setString(3,user.getPassword()); pst.setInt(4,user.getAge()); pst.setString(5,user.getPhone()); int value = pst.executeUpdate(); if(value>0){return true; }} catch (SQLException throwables) { throwables.printStackTrace();}finally { JDBCUtils.close(con);}return false; } public User findUser(String name){String sql = 'select * from users where name = ?';Connection con = JDBCUtils.getConn();User user = null;try { PreparedStatement pst=con.prepareStatement(sql); pst.setString(1,name); ResultSet rs = pst.executeQuery(); while (rs.next()){ int id = rs.getInt(1); String namedb = rs.getString(2); String username = rs.getString(3); String passworddb = rs.getString(4); int age = rs.getInt(5);String phone = rs.getString(6); user = new User(id,namedb,username,passworddb,age,phone); }} catch (SQLException throwables) { throwables.printStackTrace();}finally { JDBCUtils.close(con);}return user; }}

5、創(chuàng)建對(duì)應(yīng)的LoginServlet

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import dao.UserDao;public class LoginServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String name = request.getParameter('name');String password = request.getParameter('password');response.setCharacterEncoding('UTF-8');UserDao dao = new UserDao();boolean login = dao.login(name, password);String msg = '';if(login){msg = '成功';}else{msg = '失敗';}PrintWriter out = response.getWriter();out.println(msg);out.flush();out.close();}}三、在Android Studio當(dāng)中調(diào)用Servlet(一)實(shí)現(xiàn)登錄功能

1、創(chuàng)建連接Servlet的工具類(PostUtil)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package com.example.application01.utils;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;import java.net.URLEncoder;//訪問servletpublic class PostUtil { //訪問的serlver不一樣 //傳遞的參數(shù)不一樣 public static String Post(String url,String data) {String msg = '';try{ //http://ms-yffprtappszi:8080/AndroidWeb/LoginServlet HttpURLConnection conn = (HttpURLConnection) new URL('http://10.0.2.2:8080/AndroidWeb/'+url).openConnection(); //設(shè)置請(qǐng)求方式,請(qǐng)求超時(shí)信息 conn.setRequestMethod('POST'); conn.setReadTimeout(5000); conn.setConnectTimeout(5000); //設(shè)置運(yùn)行輸入,輸出: conn.setDoOutput(true); conn.setDoInput(true); //Post方式不能緩存,需手動(dòng)設(shè)置為false conn.setUseCaches(false); //我們請(qǐng)求的數(shù)據(jù): //獲取輸出流 OutputStream out = conn.getOutputStream(); out.write(data.getBytes()); out.flush(); if (conn.getResponseCode() == 200) {// 獲取響應(yīng)的輸入流對(duì)象InputStream is = conn.getInputStream();BufferedReader reader = new BufferedReader(new InputStreamReader(is));StringBuffer response = new StringBuffer();String line=null;while ((line = reader.readLine()) != null) { response.append(line);}msg=response.toString(); }}catch(Exception e){ e.printStackTrace();}return msg; }}

2、在MainActivity調(diào)用這個(gè)類

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package com.example.application01;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.widget.EditText;import android.widget.Toast;import com.example.application01.dao.UserDao;import com.example.application01.utils.PostUtil;import java.io.UnsupportedEncodingException;import java.net.URLEncoder;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); } public void reg(View view){startActivity(new Intent(getApplicationContext(),RegisterActivity.class)); } public void login(View view){EditText EditTextname = (EditText)findViewById(R.id.name);EditText EditTextpassword = (EditText)findViewById(R.id.password);new Thread(){ @Override public void run() {String data='';try { data = 'name='+ URLEncoder.encode(EditTextname.getText().toString(), 'UTF-8')+ '&password='+ URLEncoder.encode(EditTextpassword.getText().toString(), 'UTF-8');} catch (UnsupportedEncodingException e) { e.printStackTrace();}String request = PostUtil.Post('LoginServlet',data);int msg = 0;if(request.equals('成功')){ msg = 1;}hand1.sendEmptyMessage(msg); }}.start(); } final Handler hand1 = new Handler() {@Overridepublic void handleMessage(Message msg) { if(msg.what == 1) {Toast.makeText(getApplicationContext(),'登錄成功',Toast.LENGTH_LONG).show(); } else {Toast.makeText(getApplicationContext(),'登錄失敗',Toast.LENGTH_LONG).show(); }} };}

在開啟web項(xiàng)目的情況下運(yùn)行Android項(xiàng)目

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

(二)實(shí)現(xiàn)注冊(cè)功能

1、在web工程當(dāng)中創(chuàng)建RegisterServlet

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import dao.UserDao;import entity.User;public class RegisterServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println('-----------------');response.setCharacterEncoding('UTF-8');String name = request.getParameter('name');String username = request.getParameter('username');String password = request.getParameter('password');String phone = request.getParameter('phone');int age = Integer.parseInt(request.getParameter('age'));User user = new User();user.setName(name);user.setUsername(username);user.setPassword(password);user.setAge(age);user.setPhone(phone);String msg = '';UserDao userDao = null;User uu = null;userDao = new UserDao(); uu = userDao.findUser(user.getName());boolean flag = false;if(uu == null){flag = userDao.register(user); }if(flag){ msg = '成功';}else{msg = '失敗';} if(uu != null) {msg = '已存在'; }PrintWriter out = response.getWriter();out.println(msg);out.flush();out.close();}}

2、在Android當(dāng)中的RegisterActivity訪問Servlet

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

package com.example.application01;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.widget.EditText;import android.widget.Toast;import com.example.application01.dao.UserDao;import com.example.application01.entity.User;import com.example.application01.utils.PostUtil;import java.io.UnsupportedEncodingException;import java.net.URLEncoder;public class RegisterActivity extends AppCompatActivity { EditText name = null; EditText username = null; EditText password = null; EditText phone = null; EditText age = null; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_register); name = findViewById(R.id.name); username = findViewById(R.id.username); password = findViewById(R.id.password); phone = findViewById(R.id.phone); age = findViewById(R.id.age); } public void register(View view){String cname = name.getText().toString();String cusername = username.getText().toString();String cpassword = password.getText().toString();System.out.println(phone.getText().toString());String cphone = phone.getText().toString();int cgae = Integer.parseInt(age.getText().toString());if(cname.length() < 2 || cusername.length() < 2 || cpassword.length() < 2 ){ Toast.makeText(getApplicationContext(),'輸入信息不符合要求請(qǐng)重新輸入',Toast.LENGTH_LONG).show(); return;}User user = new User();user.setName(cname);user.setUsername(cusername);user.setPassword(cpassword);user.setAge(cgae);user.setPhone(cphone);new Thread(){ @Override public void run() {String data='';try { data = '&name='+ URLEncoder.encode(user.getName(), 'UTF-8')+ '&username='+ URLEncoder.encode(user.getUsername(), 'UTF-8')+ '&password='+ URLEncoder.encode(user.getPassword(), 'UTF-8')+ '&age='+ URLEncoder.encode(user.getAge()+'', 'UTF-8')+ '&phone='+ URLEncoder.encode(user.getPhone(), 'UTF-8');} catch (UnsupportedEncodingException e) { e.printStackTrace();}String request = PostUtil.Post('RegisterServlet',data);int msg = 0;if(request.equals('成功')){ msg = 2;}//已存在if(request.equals('已存在')){ msg = 1;}hand.sendEmptyMessage(msg); }}.start(); } final Handler hand = new Handler() {@Overridepublic void handleMessage(Message msg) { if(msg.what == 0) {Toast.makeText(getApplicationContext(),'注冊(cè)失敗',Toast.LENGTH_LONG).show(); } if(msg.what == 1) {Toast.makeText(getApplicationContext(),'該賬號(hào)已經(jīng)存在,請(qǐng)換一個(gè)賬號(hào)',Toast.LENGTH_LONG).show(); } if(msg.what == 2) {//startActivity(new Intent(getApplication(),MainActivity.class));Intent intent = new Intent();//將想要傳遞的數(shù)據(jù)用putExtra封裝在intent中intent.putExtra('a','???);setResult(RESULT_CANCELED,intent);finish(); }} };}

Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè)

到此這篇關(guān)于Android Studio+Servlet+MySql實(shí)現(xiàn)登錄注冊(cè) 的文章就介紹到這了,更多相關(guān)Android Studio 登錄注冊(cè) 內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Android
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区二区精品| 日韩在线卡一卡二| 午夜久久福利| 中文字幕日韩高清在线| 亚洲www免费| 欧美a级片一区| 欧美日本三区| 国产精品久一| 91精品蜜臀一区二区三区在线| 久久精品欧美一区| 尹人成人综合网| 美女尤物国产一区| 国产精品老牛| 中国字幕a在线看韩国电影| 99久久www免费| 中文字幕亚洲影视| 久久久久91| 国产女人18毛片水真多18精品| 日韩精品影视| 美腿丝袜亚洲一区| 国产欧美一区二区三区米奇| 免费欧美日韩| 亚洲综合在线电影| 国产精品多人| 在线免费观看亚洲| 91精品一区二区三区综合| 国产精品网址| 精精国产xxxx视频在线播放| 久久只有精品| 日日夜夜免费精品视频| 久久婷婷一区| av免费不卡国产观看| 麻豆久久久久久| 亚洲一区久久| 国产模特精品视频久久久久| 久久中文字幕av| 日本免费一区二区三区四区| 日韩精彩视频在线观看| 亚洲va在线| 国产综合亚洲精品一区二| 色偷偷色偷偷色偷偷在线视频| 国产精品久久久久久久久久妞妞| 亚洲伦乱视频| 黄色国产精品| 亚洲精品自拍| 在线国产日韩| 国产精品主播在线观看| 国产乱人伦精品一区| 国产日韩免费| 国产极品嫩模在线观看91精品| 国产日韩电影| 精品视频黄色| 久久精品国产999大香线蕉| 久久一区二区中文字幕| 久久久精品久久久久久96| 尤物tv在线精品| 欧美精品国产一区| 蜜桃久久精品一区二区| 亚洲一区二区网站| 久久国产中文字幕| 亚洲精品乱码日韩| 久久精品一区二区不卡| 国产日韩亚洲欧美精品| 亚洲精品在线观看91| 精品国产精品国产偷麻豆| 综合国产在线| 一区在线免费观看| 久久麻豆精品| 麻豆成人91精品二区三区| 亚洲一区日韩| 精品中文字幕一区二区三区av| 99久久99久久精品国产片果冰| 麻豆国产欧美日韩综合精品二区| 欧美中文字幕一区二区| 日韩欧美一区免费| 精品国产不卡一区二区| 欧美韩日一区| 亚洲精品乱码| www.com.cn成人| 国产91久久精品一区二区| 亚洲一级黄色| 日韩精品五月天| 久久久久久久久成人| 亚洲ww精品| 亚洲资源网站| 国产精品黑丝在线播放| 综合一区二区三区| 亚洲天堂免费电影| 国产成人久久精品麻豆二区| 欧美日韩99| 久久成人亚洲| 麻豆91精品视频| 日韩午夜精品| 亚洲二区三区不卡| 麻豆理论在线观看| 亚洲不卡系列| 日韩精品视频中文字幕| 久久婷婷亚洲| 免费日韩一区二区三区| 久久国产日本精品| 日韩在线中文| 久久久久久久欧美精品| 国产一在线精品一区在线观看| sm久久捆绑调教精品一区| 精品一级视频| 国产在线不卡一区二区三区| 国产精品一区高清| 午夜影院一区| 国产精品一线| 欧美一级网址| 日韩在线观看一区二区| 国产一区欧美| 四季av一区二区凹凸精品| 国产欧美精品| 精品少妇一区| www成人在线视频| 欧美激情 亚洲a∨综合| 国产精品精品国产一区二区| 午夜欧美精品久久久久久久| 日本综合精品一区| 久久国产尿小便嘘嘘| 久久99高清| 伊伊综合在线| 亚洲综合二区| 国产精品日本一区二区不卡视频| 婷婷综合六月| 另类小说一区二区三区| 亚洲欧美日本国产| 四虎884aa成人精品最新| 日本国产精品| 日韩高清不卡在线| 亚洲精品乱码| 国产videos久久| 亚洲精品日韩久久| 中文字幕一区二区三区四区久久 | а√天堂8资源中文在线| 一区二区三区网站| 丝袜av一区| 成人在线免费观看网站| 国产aⅴ精品一区二区三区久久 | 亚洲二区免费| 91精品精品| 国产精品夜夜夜| 国产精品久久久久毛片大屁完整版 | 午夜av一区| 国产成人1区| 日韩天堂在线| 中文精品视频| 欧美日韩伊人| 国产精品网站在线看| 国产成人免费视频网站视频社区| 久久精品色播| 九九久久婷婷| 国产日本久久| 影院欧美亚洲| 五月激情久久| 欧美日韩午夜| 日韩精品一区二区三区中文在线| 视频一区在线视频| 日韩视频二区| 亚洲一区二区三区免费在线观看 | 亚洲视频电影在线| 国产精品最新自拍| 91综合视频| 蜜臀久久99精品久久一区二区| 久久久久久美女精品| 久久激情五月婷婷| 麻豆国产精品一区二区三区| 亚洲综合国产| 国产激情精品一区二区三区| 国产一区二区三区不卡视频网站 | 中文字幕日韩亚洲| 亚洲性色av| 日本aⅴ精品一区二区三区| 国产综合色产| 伊人久久亚洲影院| 成人精品天堂一区二区三区| 国产精品久久国产愉拍| 国产九一精品| 成人看片网站| 夜鲁夜鲁夜鲁视频在线播放| 自拍自偷一区二区三区| 久久香蕉国产| 久久夜夜操妹子| 久久亚洲资源中文字| 日本天堂一区| 婷婷亚洲成人| 亚洲人成精品久久久| 亚洲一二av| 日韩精品导航| 日韩伦理一区| 亚洲福利专区| 久久精品中文| 亚洲开心激情| 久久三级福利| 国产欧美日韩在线一区二区| 精品国产乱码久久久| 精品久久亚洲| 国产一区二区精品久| 国产一区二区三区亚洲综合|