導航:首頁 > 編程語言 > java怎麼接收

java怎麼接收

發布時間:2023-12-30 04:01:24

A. java後端怎麼接收前端的非同步請求

前端提交

POST /api/test HTTP/1.1

Host: 192.168.135.69:81

Connection: keep-alive

Content-Length: 18

Origin: http://192.168.135.69:81

User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1

Content-Type: application/x-www-form-urlencoded

Accept: */*

Referer: http://192.168.135.69:81/

Accept-Encoding: gzip, deflate

Accept-Language: zh-CN,zh;q=0.9

數據類型

{"phone":"222222"}

後台代碼

@At

@Ok("json")

@Filters

@POST

@AdaptBy(type= JsonAdaptor.class)

public Object test(@Param("..") NutMap nutMap, HttpServletRequest req) {undefined

System.out.println("nutMap::" + nutMap);

System.out.println("longin ::" + req);

return Result.success("system.success");

}

報錯信息

2019-01-05 20:02:20,560 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(portalGlobalsNavService) in AnnotationIocLoader(packages=[com.yunqi])

2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'portalGlobalsNavService'

2019-01-05 20:02:20,560 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'portalGlobalsNavService' to [app]

2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get ''<>

2019-01-05 20:02:20,560 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class com.yunqi.moles.service.portal.PortalGlobalsNavService without AOP

2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get ''<>

2019-01-05 20:02:20,561 org.nutz.service.EntityService.(EntityService.java:41) DEBUG - Get TypeParams for self : com.yunqi.moles.models.portal.Portal_Globals_navnutMap::null

longin ::org.apache.shiro.web.servlet.ShiroHttpServletRequest@334e3d74

2019-01-05 20:02:20,572 com.yunqi.common.processor.LogTimeProcessor.process(LogTimeProcessor.java:24) DEBUG - [POST]URI=/app/test 60ms

————————————————

版權聲明:本文為CSDN博主「weixin_39657249」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/weixin_39657249/article/details/114925997

B. Java怎麼接收用戶輸入的整數

使用java的Scanner類,能夠接受用戶的輸入(包括整數和字元串)。有如下用法:

1.用Scanner類封裝system.in輸入流;

2.用sc.hasNext()判斷是否有內容,有則用sc.nextInt()取出整數。

如下代碼供你學習一下:
/**
*@Title:ScannerInput.java
*@Packagecom.sd.coding
*@Description:TODO
*@authorAdministrator
*@date2015-6-29上午9:38:28
*@versionV1.0
*/
packagecom.sd.coding;

importjava.util.Scanner;

publicclassScannerInput{

/**
*@Title:main
*@Description:TODO
*@authorsd
*@date2015-6-29上午9:38:28
*@paramargs
*@throws
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
System.out.println("請輸入值,以回車結束:");
Scannersc=newScanner(System.in);
while(sc.hasNext()){
//接受整數
inti=sc.nextInt();
System.out.println("獲得整數:"+i);
}
}

}

C. java 如何接受用戶輸入的數值類型數據

1。JAVA初學者知道輸出的類方法System.out.println("Hello,java!");

但是卻對輸入,即在控制台console中接收用戶輸入的數據不太清楚。

輸入類Scanner的用法。

[java] view plain
public class InputFromConsole {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String name = s.nextLine();
int ival = s.nextInt();
System.out.println(ival + "," + name);
}
}

2.首先創建一個Scanner對象s,構造函數的初始值為System.in,再利用s.nextInt()來接收一個int型數據ival的值,用s.nextLine()來接收String類型的name,然後分別輸出。

編譯時會提示錯誤,這是因為Scanner類在一個名為util的包中。

在程序開頭加上一句import java.util.*;即可解決問題。

[java] view plain
import java.util.*;

public class InputFromConsole {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String name = s.nextLine();
int ival = s.nextInt();
System.out.println(ival + "," + name);
}
}

D. Java中如何從鍵盤接收一個字元

這篇教程非常詳細了 借花獻佛 :)

java控制台輸入

0 引言
從控制台中讀取數據是一個比較常用的功能,在 JDK 5.0 以前的版本中的實現是比較復雜的,需要手工處理系統的輸入流。有意思的是,從 JDK 5.0 版本開始,能從控制台中輸入數據的方法每增加一個版本號,就有一種新增的方法,這也增加了選擇的種類,可以依據不同的要求來進行選擇。下面來看一下,各個版本中如何從控制台中讀取數據以及各自的優缺點。

1 JDK 1.4 及以下版本讀取的方法
JDK 1.4 及以下的版本中要想從控制台中輸入數據只有一種辦法,即使用System.in獲得系統的輸入流,再橋接至字元流從字元流中讀入數據。示例代碼如下:

import java.io.IOException;
import java.io.InputStreamReader;

public class Test1 {

public static void main(String[] args) {
String str = readString("請輸入字元串:");
System.out.println("readString 方法的輸入:" + str);
}

private static String readString(String prompt) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
try {
System.out.print(prompt);
str = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
}

從上面的代碼段來看,這種控制台輸入的方法非常地麻煩,為了能讀取整行的數據,採用了BufferedReader類來進行處理,而且在讀取的過程中還需要捕獲IOException。不過這是 JDK 1.4 及以下版本中從控制台讀取數據唯一的辦法。還有一種非控制台讀入數據的辦法,就是採用 Swing 中的JOptionPane,會彈出一個非常漂亮的輸入對話框讓使用者輸入數據,但這是一種比較另類的做法,不推薦使用。

import javax.swing.JOptionPane;

public class Test2 {

public static void main(String[] args) {
String str = readStringFromDialog("請輸入字元串:");
System.out.println("readStringFromDialog 方法的輸入:" + str);
}

private static String readStringFromDialog(String prompt) {
return JOptionPane.showInputDialog(prompt);
}
}
上面的兩種方法都有個共同的缺點——只能讀取字元串,若需要讀取其他類型的數據需要手工進行轉換。

2 JDK 5.0 讀取的方法
從 JDK 5.0 開始,基本類庫中增加了java.util.Scanner類,根據它的 API 文檔說明,這個類是採用正則表達式進行基本類型和字元串分析的文本掃描器。使用它的Scanner(InputStream source)構造方法,可以傳入系統的輸入流System.in而從控制台中讀取數據。示例代碼如下:

import java.util.Scanner;

public class Test3 {

public static void main(String[] args) {
String str = readString5("請輸入字元串:");
System.out.println("readString5 方法的輸入:" + str);
}

private static String readString5(String prompt) {
Scanner scanner = new Scanner(System.in);
System.out.print(prompt);
return scanner.nextLine();
}
}
從代碼量上來看,Test3比Test1少了很多的代碼,核心代碼只有兩行。其實並不是Scanner將控制台輸入給簡單化了,只是在其內部的實現中已經將IOException處理了,而且採用InputStreamReader來一個字元一個字元進行掃描讀取的(嘿嘿,它本身就是個掃描器),只是 Scanner做了更高層次的封裝。

Scanner不僅可以從控制台中讀取字元串,還可以讀取除char之外的其他七種基本類型和兩個大數字類型,並不需要顯式地進行手工轉換。 Scanner不單單只能掃描控制台中輸入的字元,它還可以讓讀入的字元串匹配一定的正則表達式模式,如果不匹配時將拋出 InputMismatchException異常。

使用System.in作為它的構造參數時,它只掃描了系統輸入流中的字元。它還有其他的構造,分別可以從文件或者是字元串中掃描分析字元串的,具體的使用方法可以參考 API 文檔說明。

3 JDK 6.0 讀取的方法
從 JDK 6.0 開始,基本類庫中增加了java.io.Console類,用於獲得與當前 Java 虛擬機關聯的基於字元的控制台設備。在純字元的控制台界面下,可以更加方便地讀取數據。示例代碼如下:

import java.io.Console;
import java.util.Scanner;

public class Test4 {

public static void main(String[] args) {
String str = readString6("請輸入字元串:");
System.out.println("readString6 方法的輸入:" + str);
}

private static String readString6(String prompt) {
Console console = System.console();
if (console == null) {
throw new IllegalStateException("不能使用控制台");
}
return console.readLine(prompt);
}
}
在Test1和Test3中,輸入數據前的提示信息需要使用System.out.print();來輸出,但是使用基於Console的Test4類,可以在方法參數中直接放入提示信息。

如果需要在控制台中輸入密碼等敏感信息的話,像在瀏覽器或者是應用程序中那樣顯示替代字元,在 JDK 6.0 以前的做法是相當麻煩的(具體的做法可以參考《Java 編程語言中的口令屏蔽》一文),而使用Console類的readPassword()方法可以在控制台上不回顯地輸入密碼,並將密碼結果保存在char 數組中,根據 API 文檔的建議,在使用後應立即將數組清空,以減少其在內存中佔用的時間,以便增強安全性。

但是,Console也有一些缺點,根據ConsoleAPI 文檔的說明:

虛擬機是否具有控制台取決於底層平台,還取決於調用虛擬機的方式。如果虛擬機從一個互動式命令行開始啟動,且沒有重定向標准輸入和輸出流,那麼其控制台將存在,並且通常連接到鍵盤並從虛擬機啟動的地方顯示。如果虛擬機是自動啟動的(例如,由後台作業調度程序啟動),那麼它通常沒有控制台。

通過上面的文檔說明可以看出,在使用 IDE 的情況下,是無法獲取到Console實例的,原因在於在 IDE 的環境下,重新定向了標准輸入和輸出流,也是就是將系統控制台上的輸入輸出重定向到了 IDE 的控制台中。因此,在 IDE 中不能使用這個程序,而Test1和Test3就沒有這種限制。

4 總結
以上囊括了 Java 中各種版本從控制台中讀入數據的方法,將對它們的優缺點進行了分析。下面給出了一些使用建議,可供參考:

JRE 1.4 或以下版本的情況下,沒得選擇只能採用Test1或者是非控制台讀入的Test2的方法。
JRE 5.0 的情況下,建議使用基於Scanner的Test3的方法,更方便地進行數據讀取。
JRE 6.0 的情況,並且只在字元界面的控制台下運行時,採用Test4的方法,如果需要讀入像密碼之類的敏感數據,為了安全性考慮也必須使用Test4或者是自行實現。如果需要讀入除字元串類型之外的其他數據類型,建議使用基於Scanner的控制台輸入。

E. 用java怎麼實現從前端接收、處理並傳回視頻

1、接收前端上傳的文件

2.接收前端上傳的文件

3.接收前端上傳的文件

閱讀全文

與java怎麼接收相關的資料

熱點內容
湖北社保年審app叫什麼名字 瀏覽:848
邁達克雲伺服器 瀏覽:595
mfc深入淺出從mfc設計到mfc編程 瀏覽:79
螢石雲伺服器連接設置 瀏覽:323
中國名著pdf 瀏覽:590
華為伺服器設備序列號怎麼看 瀏覽:319
跑永輝生活配送用什麼app 瀏覽:147
ug識別符號命令在哪裡 瀏覽:719
pdf文件改文字 瀏覽:732
查詢qq號劍靈伺服器地址 瀏覽:552
國家反詐中心app為什麼要刷臉 瀏覽:303
iphone怎麼修改dns伺服器地址 瀏覽:85
bandizip解壓位置 瀏覽:168
伺服器的防火牆如何訪問 瀏覽:306
javagoto關鍵字 瀏覽:847
廣州少兒編程加盟排名榜 瀏覽:122
51單片機th0 瀏覽:292
冠軍交易pdf 瀏覽:208
excelword轉換成pdf 瀏覽:389
安卓10制空霸權怎麼打開 瀏覽:263