Java???WebSocket??Tomcat???
???????????? ???????[ 2016/2/18 10:15:35 ] ??????????????????? ???????
?????.WebSocket??????
????????????????????????HTTPЭ?????????????Web??????渴??????????????????????HTML5???????WebSocketЭ?鱻??????????????????????????????????????????????????????????????????????????????????????
??????????????????HTTPЭ??????????????????request?????????????? ??????????????????????д??????response???????????????????????????????????????????????????????????????????Web?? ????????仯???????Web???????????鷳??С?????????漰???????Web????????????????????м??????????????????????????? ?á???WebSocket?淶??????????????????????Щ???????????????????????????????????????polling????Comet???????????????????????????????????????????
??????????????????Web?????????????????????????????趨????????????????????????????????????????μ?????????????????????????1???????????????????????????????
????Comet?????????????????????????????????????????????????????С?????????????????Щ?????趨?????????????????????????????????????????????????????????????????????????????????????????????????????????????HTTP?????????????????????????????HTTP??????????????????????????????????????????????????????????????????????????£???????鵽???????????
????????????????????????-????????????????????????????????????????????????????????????????????????????????????????????????
??????????HTML5?????WebSocket???????????Web?????????B/S???????C/S???????????????WebSocket????????????? ?????????????JavaScript?????????????WebSocket???????????WebSocket???????????????????????????? TCP???????????????WebSocket???????????TCP????????????δ????????????????????????????????????????????Comet????С ?????????????????WebSocket?淶???????????WebSocket??Java Web?е?????
????JavaEE 7?г???JSR-356:Java API for WebSocket?淶??????Web????????Tomcat??Nginx??Jetty??????WebSocket??Tomcat??7.0.27?????? WebSocket????7.0.47??????JSR-356???????Demo????????????????Tomcat7.0.47?????汾???????С?
??????.WebSocket???
????2.1.???JavaWeb???????
??????pom.xml?????Jar??????
????1 <dependency> ????2 <groupId>javax</groupId> ????3 <artifactId>javaee-api</artifactId> ????4 <version>7.0</version> ????5 <scope>provided</scope> ????6 </dependency>
??????????Web?????????
1 <%@ page language="java" pageEncoding="UTF-8" %>
2 <!DOCTYPE html>
3 <html>
4 <head>
5 <title>Java???WebSocket??Tomcat???</title>
6 </head>
7 <body>
8 Welcome<br/><input id="text" type="text"/>
9 <button onclick="send()">???????</button>
10 <hr/>
11 <button onclick="closeWebSocket()">???WebSocket????</button>
12 <hr/>
13 <div id="message"></div>
14 </body>
15
16 <script type="text/javascript">
17 var websocket = null;
18 //?ж??????????????WebSocket
19 if ('WebSocket' in window) {
20 websocket = new WebSocket("ws://localhost:8080/websocket");
21 }
22 else {
23 alert('???????? Not support websocket')
24 }
25
26 //??????????????????
27 websocket.onerror = function () {
28 setMessageInnerHTML("WebSocket???????????");
29 };
30
31 //??????????????????
32 websocket.onopen = function () {
33 setMessageInnerHTML("WebSocket??????");
34 }
35
36 //????????????????
37 websocket.onmessage = function (event) {
38 setMessageInnerHTML(event.data);
39 }
40
41 //?????????????
42 websocket.onclose = function () {
43 setMessageInnerHTML("WebSocket??????");
44 }
45
46 //??????????????????????????????????websocket????????????????????????server?????????
47 window.onbeforeunload = function () {
48 closeWebSocket();
49 }
50
51 //???????????????
52 function setMessageInnerHTML(innerHTML) {
53 document.getElementById('message').innerHTML += innerHTML + '<br/>';
54 }
55
56 //???WebSocket????
57 function closeWebSocket() {
58 websocket.close();
59 }
60
61 //???????
62 function send() {
63 var message = document.getElementById('text').value;
64 websocket.send(message);
65 }
66 </script>
67 </html>
??????
???·???
App??С????H5?????????????????Щ??
2024/9/11 15:34:34?????????????????????????
2024/9/10 11:13:49P-One ???????????????????????????????????????
2024/9/10 10:14:12???????????????????????????
2024/9/9 18:04:26??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44

sales@spasvo.com