1. 程式人生 > >Java後臺實時輸出資料到頁面

Java後臺實時輸出資料到頁面

當然,這個專業的有保持長連結,伺服器推送等實現,這裡需求較簡單,不討論。

做了個小功能,希望前臺可以看到後臺的實時處理進度,首先想到的就是能夠在頁面像後臺列印日誌一樣的輸出,

如下程式碼:

  1. PrintWriterout= response.getWriter();
  2. while(true){
  3. try{
  4. out.print("輸出內容");
  5. out.flush();
  6. Thread.sleep(1000);
  7. }catch(Exception e){
  8. e.printStackTrace();
  9. }
  10. }

在我的想象中,response會每隔一秒就向前端輸出一條內容,前端像列印日誌一樣實時顯示。可實際情況是這些內容在請求結束後是同時被輸出到頁面的。

網上查了一下,大致是說這樣輸出沒給瀏覽器響應的機會,只有等方法結束後瀏覽器才能響應讀取到資料。貌似tomcat7之後的可以支援,行不通啊。

後來發現,如果向頁面輸出js指令碼的話,瀏覽器是可以實時讀取到的,見下面程式碼:

  1. out.println("<script>");
  2. out.println("document.write('<div>"+ message +"</div>');");
  3. out.println("</script>");
  4. out.flush();

這樣做,如果輸出內容很多的話貌似會使頁面內容過多而消耗一些資源,不過後臺的系統沒什麼併發,內容也不是很多,將就了。

相關推薦

Java後臺實時輸出資料頁面

當然,這個專業的有保持長連結,伺服器推送等實現,這裡需求較簡單,不討論。 做了個小功能,希望前臺可以看到後臺的實時處理進度,首先想到的就是能夠在頁面像後臺列印日誌一樣的輸出, 如下程式碼: PrintWriterout= response.getWriter();wh

Java後臺返回複雜資料、大資料給前端解決辦法(返回json資料分類簡化前段操作)

背景分析: 面對當前多種的業務需求和雜亂無章的資料堆放,Java後臺處理變得尤為重要。對於資訊系統開發而言,歸根到底是對資料的分類與處理。通過從伺服器獲取資料,客戶給出需求,形成怎樣的表格,多樣化的靜態圖和動態圖,各種各樣資原始檔,這些需求都不是簡單的從資料庫中取出來就可以直接使用的,往

java後臺接收json資料,報錯com.alibaba.fastjson.JSONObject cannot be cast to xxx

  從前臺接收json封裝的list資料,在後臺接收時一直報錯,com.alibaba.fastjson.JSONObject cannot be cast to xxx,   使用這種方式接收可以接收 1 @RequestMapping(value = "/insertUser", method

spring MVC框架下前臺往java後臺傳送json資料

前臺頁面 <form action="" method="post" id="loginForm"> <table> <tr> <td&

java後臺封裝json資料學習(一)

一、資料封裝 1、List集合轉換成json程式碼   List list = new ArrayList();   list.add( "first" );   list.add( "second" );   JSONArray jsonArray2

java後臺封裝json資料(一)

資料封裝 1. List集合轉換成json程式碼  List list = new ArrayList();  list.add( "first" );  list.add( "second" );  JSONArray jsonArray2 = JSONArray.f

java 後臺返回JSON資料 前端顯示顯示404 or 500

舉例: 1)後端返回JSON資料: Map<String, Object> map = salesysActivityService.getSalesysActivityByPage(keys, pageSize, pageIndex, 1); return J

java 後臺返回json資料給前臺

第一步:新建一個JsonBinder.java類,程式碼如下: import java.io.IOException; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.u

spring後臺返回json資料 頁面406錯誤 Not Acceptable解決

使用SpsringMVC,controller請求設定如下: Java程式碼   @RequestMapping(value="/list",method=RequestMethod.GET,produces=MediaType.APPLICATION_JSON_VA

java 後臺封裝json資料

1. List集合轉換成json程式碼 List list = new ArrayList(); list.add( "first" ); list.add( "second" ); JSONArray jsonArray2 = JSONArray.fromObject(

java 後臺封裝json資料學習總結(一)

一、資料封裝1. List集合轉換成json程式碼  List list = new ArrayList();  list.add( "first" );  list.add( "second" );  JSONArray jsonArray2 = JSONArray.fro

JAVA後臺程式以及JSP頁面如何獲取properties檔案中的值

        在實際開發中,我們經常會將一些屬性寫入到properties檔案中,方便我們在開發或維護中的操作。這樣做的好處十分明顯,當我們需求或執行環境發生變化時,只需更改相應的配置檔案即可符合要求。但這樣做的同時也帶來了一些開發上的問題,比如我們如何獲取propert

關於ajax區域性重新整理,從資料庫實時更新資料頁面(一般是下訂單成功後傳送訊息到後臺

關於ajax區域性重新整理,從資料庫實時更新資料到訊息框(通知框),一般是下訂單後傳送訊息到後臺,這個後臺的訊息(或者通知)是實時更新的,就需要用到區域性重新整理。 思路: 1、要提交到後臺稽核,就應

java後臺頁面進行資料互動時產生亂碼

     亂碼問題相信每一個開發人員都遇到過,而且解決的方法也不盡相同,這裡我只對我最近遇到的亂碼問題的解決方法進行一下描述: 1.問題描述   最近在海南做一個專案,當時出現了在java後臺中文資料是正常的,但在頁面展示時卻是亂碼。我在頁面中也設定了資料型別“utf-8”

HTML5+js頁面傳值給Java後臺的小技巧

頁面傳值 bsp 發送 設置 這樣的 htm html5 分享 .com 頁面傳值小技巧

java中從控制檯輸入資料輸出資料到控制檯

1.從控制檯輸入資料 1.使用Scanner類來完成從命令列輸入資料到自己的程式中。 2.Scanner類是JDK1.5【jdk5.0】新增的一個開發類庫。 3.Scanner類使用     3.1先匯入Scanner類所在的程式包【java.util.Sca

解決java後臺發起重定向響應成功,但前端不跳轉頁面問題

Java後臺使用了 “redirect:/”重定向的操作 前端進行請求該介面時,如果直接訪問該介面,可以跳轉指定的頁面,但如果在頁面中訪問該介面,發現頁面並不發生跳轉,檢視控制檯,請求是成功的。 跳轉的地址也顯示請求成功 但是頁面內容不發生跳轉,還是原來的頁面 問題主要在前端

Java輸出資料的對齊方法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

jsp 頁面傳多個id 到java後臺的處理方式

java 開發中經常遇到 jsp 頁面傳多個id 到後臺處理的情況。比如:批量刪除選擇內容等....... 我使用的解決的方法兩種: jsp 傳多個id:使用easyui datagrid 選擇多行方式 var rows = $("#classids").datagrid('getSel

jsp頁面中JSTL/EL標籤引用java後臺靜態static欄位的方法總結

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!