內(nèi)容
Ⅰ搭建html
Ⅱas代碼
具體內(nèi)容
Ⅰ搭建html
1.html網(wǎng)頁搭建
<!DOCTYPE html>
<html>
<head>
<title>登錄</title>
</head>
<body background="1.bmp">
<!-- 表單的內(nèi)容 -->
<!--
action:
內(nèi)容提交到服務器的哪個文件中
提交的內(nèi)容由服務器的哪個文件來處理
method:
提交的方式 get/post
-->
<form action="login.php" method="get">
<center>用戶名:<input type="text" name="user_name">
<br><br><br>
密 碼:<input type="password" name="user_pwd">
<br><br><input type="submit" name="提交">
</center>
</form>
</body>
</html>
2.數(shù)據(jù)的提交的兩種方式
get/GET
向服務器提交數(shù)據(jù) 并且獲取服務器返回的結(jié)果
特點:提交的數(shù)據(jù)都在url里面體現(xiàn)出來
不安全
當提交的數(shù)據(jù)比較多的時候就無法使用
數(shù)據(jù)不是特別重要并且少量數(shù)據(jù)使用get
post/POST
向服務器提交數(shù)據(jù) 并且獲取服務器返回的結(jié)果
特點:提交的數(shù)據(jù)不會在url里面體現(xiàn)出來
安全
可以提交大量數(shù)據(jù)
3.php的搭建
<?php
//獲取提交的用戶名 get_&_GET
$name = $_POST["user_name"];
$password = $_POST["user_pwd"];
//查詢數(shù)據(jù)庫
//返回結(jié)果
echo "success";
//echo"用戶名:".$name."密碼:".$password;
?>
Ⅱas代碼
1.使用post上傳數(shù)據(jù)
//使用post上傳簡單數(shù)據(jù)(不是文件)
public static void post() throws IOException {
//1.創(chuàng)建url
URL url = new URL("http://127.0.0.1/login.php");
//2.獲取connection對象
//URLConnection
//HttpURLConnection 自己需要設(shè)定請求的內(nèi)容
//請求的方式 上傳的內(nèi)容
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//3.設(shè)置請求方式為post
connection.setRequestMethod("POST");
//設(shè)置有輸出流 需要上傳
connection.setDoOutput(true);
//設(shè)置有輸入流 需要下載
connection.setDoInput(true);
//4.準備上傳的數(shù)據(jù)
String data = "user_name = jack&user_pwd = 123";
//5.開始上傳 輸出流對象
OutputStream os = connection.getOutputStream();
os.write(data.getBytes());
os.flush();//刷新輸出流 寫完了
//6.接收服務器端返回的數(shù)據(jù)
InputStream is = connection.getInputStream();
byte[] buf = new byte[1024];
int len;
while ((len = is.read(buf)) != -1) {
System.out.println(new String(buf, 0, len));
}
}
2.使用getImage下載數(shù)據(jù)
public static void getImage() throws IOException {
//URL
URL url = new URL("http://127.0.0.1/1.bmp");
//獲取與服務器連接的對象
URLConnection connection = url.openConnection();
//讀取下載的內(nèi)容 - 獲取輸入流
InputStream is = connection.getInputStream();
//創(chuàng)建文件保存的位置
FileOutputStream fos = new FileOutputStream("D:\\Android\\Javahellp\\java\\src\\main\\java\\Day14\\1.jpeg");
byte[] buf = new byte[1024];
int len;
while ((len = is.read(buf)) != -1) {
fos.write(buf, 0, len);
}
}
3.帶參數(shù)的get請求
public static void getParams() throws IOException {
//使用代碼訪問(提交/下載)服務器數(shù)據(jù)
//URL
//http://127.0.0.1/login.php?n=jack&p=123
//1.創(chuàng)建URL
String path = "http://127.0.0.1/login.php?" + "user_name=jack&user_pwd=123";
URL url = new URL(path);
//2.請求方式默認是get
//獲取連接的對象 URLConnection封裝了Socekt
URLConnection connection = url.openConnection();
//設(shè)置請求方式
HttpURLConnection httpURLConnection = (HttpURLConnection) connection;
httpURLConnection.setRequestMethod("GET");
//3.接受服務器端的數(shù)據(jù)
BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
System.out.println(br.readLine());
}