- 浏览: 198679 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (101)
- 职业 (4)
- 生活 (3)
- 场景应用 (6)
- flex (14)
- java (31)
- php (2)
- python (2)
- hadoop (6)
- 项目管理 (1)
- 工作流 (4)
- 手机web应用 (3)
- 算法 (4)
- 小技巧 (1)
- 数据库 (2)
- sphinx (1)
- web综合 (15)
- spring (5)
- 设计 (9)
- javascript (3)
- linux (2)
- 报表 (2)
- delphi (1)
- ejb (1)
- 架构 (3)
- uml (3)
- lucene (2)
- BI (1)
- 多线程 (1)
- 地图 (1)
- gis (1)
- 网络基础 (1)
- spark (2)
- 分布式 (3)
- ext (1)
- android (3)
- arduino (1)
- 协同办公 (2)
- OA流程 (2)
- 畅想 (1)
- ios (3)
- swift (1)
- webkit (1)
- c (1)
- 浏览器 (1)
- html5 (2)
- rtmp (1)
- soket (1)
- AI (2)
- tensorflow (1)
- ignite (1)
- react (4)
- 新空间 (2)
- 闲话 (3)
- docker (1)
- kubernetes (1)
最新评论
-
wenzhiyinghen:
...
spark 学习 -
zlbdexiaohao:
flex 写的时钟 -
minn84:
luoguohong88 写道你上传的那个openi.zip ...
openi1.3 eclipse 整合调试 -
luoguohong88:
你上传的那个openi.zip (5.5 MB)有问题 能再上 ...
openi1.3 eclipse 整合调试 -
minn84:
demo的思路很简单,主要是两点:1.hadoop负责处理数据 ...
hadoop+lucene+web 综合小demo
package filter;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import socket.SocketServer;
/*
初始化socket
*/
public class RFilter extends HttpServlet {
private static final long serialVersionUID = 1L;
SocketServer socket;
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
socket=new SocketServer();
socket.start();
System.out.println("load on start!");
}
public RFilter() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("***************RFilter doGet");
socket.cc.handCom();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("***************RFilter doPost");
socket.cc.handCom();
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package socket;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import filter.ClientController;
/*
socket服务端类
*/
public class SocketServer extends Thread{
ServerSocket ss = null; //socket连接
public ClientController cc;
public SocketServer() {
super();
try {
//
ss = new ServerSocket(9999);
cc=new ClientController();
} catch (IOException e) {
e.printStackTrace();
}
}
public void run() {
System.out.println("准备好接收数据!");
try{
while (true) {
Socket socket = ss.accept();
if(socket!=null){
cc.addNewClient(socket);
}
}
} catch (IOException ex) {
System.out.println(ex.toString());
}
}
}
package filter;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.nio.channels.SocketChannel;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.zip.DeflaterOutputStream;
import flex.messaging.io.SerializationContext;
import flex.messaging.io.amf.Amf3Output;
/*
管理与客户端通讯的业务类
*/
public class ClientController {
private ArrayList<Socket> clients;
private SerializationContext context = new SerializationContext();
public ClientController(){
clients=new ArrayList<Socket>();
}
public void handCom(){
System.out.println("ClientController size:"+clients.size());
for(Socket inComing:clients){
try {
DataOutputStream dos = new DataOutputStream(inComing.getOutputStream());
Amf3Output out = new Amf3Output(context);
DeflaterOutputStream stream = new DeflaterOutputStream(dos);
out.setOutputStream(stream);
Map map = new HashMap();
String[] arr = "1,2,3,4,5".split(",");
map.put("datas", arr);
map.put("userName", "mumuyu99");
map.put("fullName", "最新消息");
out.writeObject(map);
stream.finish();
out.flush();
dos.flush();
System.out.println("clientController handCom");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
public void addNewClient(Socket socket){
clients.add(socket);
System.out.println("****************用户登录************");
System.out.println("******登录用户数:"+clients.size()+"*****");
}
}
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import socket.SocketServer;
/*
初始化socket
*/
public class RFilter extends HttpServlet {
private static final long serialVersionUID = 1L;
SocketServer socket;
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
socket=new SocketServer();
socket.start();
System.out.println("load on start!");
}
public RFilter() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("***************RFilter doGet");
socket.cc.handCom();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("***************RFilter doPost");
socket.cc.handCom();
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package socket;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import filter.ClientController;
/*
socket服务端类
*/
public class SocketServer extends Thread{
ServerSocket ss = null; //socket连接
public ClientController cc;
public SocketServer() {
super();
try {
//
ss = new ServerSocket(9999);
cc=new ClientController();
} catch (IOException e) {
e.printStackTrace();
}
}
public void run() {
System.out.println("准备好接收数据!");
try{
while (true) {
Socket socket = ss.accept();
if(socket!=null){
cc.addNewClient(socket);
}
}
} catch (IOException ex) {
System.out.println(ex.toString());
}
}
}
package filter;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.nio.channels.SocketChannel;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.zip.DeflaterOutputStream;
import flex.messaging.io.SerializationContext;
import flex.messaging.io.amf.Amf3Output;
/*
管理与客户端通讯的业务类
*/
public class ClientController {
private ArrayList<Socket> clients;
private SerializationContext context = new SerializationContext();
public ClientController(){
clients=new ArrayList<Socket>();
}
public void handCom(){
System.out.println("ClientController size:"+clients.size());
for(Socket inComing:clients){
try {
DataOutputStream dos = new DataOutputStream(inComing.getOutputStream());
Amf3Output out = new Amf3Output(context);
DeflaterOutputStream stream = new DeflaterOutputStream(dos);
out.setOutputStream(stream);
Map map = new HashMap();
String[] arr = "1,2,3,4,5".split(",");
map.put("datas", arr);
map.put("userName", "mumuyu99");
map.put("fullName", "最新消息");
out.writeObject(map);
stream.finish();
out.flush();
dos.flush();
System.out.println("clientController handCom");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
public void addNewClient(Socket socket){
clients.add(socket);
System.out.println("****************用户登录************");
System.out.println("******登录用户数:"+clients.size()+"*****");
}
}
评论
2 楼
minn84
2012-07-04
可能考虑applet
1 楼
sundreams2009
2012-06-06
您好,我现在在做jsp页面实现socket通信,能不能指点下该怎么做啊?
发表评论
-
多语言版基础管理系统展示[es6版]-入门配置篇
2018-10-26 07:17 556新增一篇入门配置文档 原文地址: http://www.i8 ... -
多语言版基础管理系统展示[es6版] -流程配置效果
2017-12-17 19:42 745终于找到一个可以较好展示工作流程配置的 ... -
多语言版基础管理系统展示[es6版]-简单整合spring+tensorflow+ignite+hadoop
2017-08-05 18:14 8541.整合基于[多语言版基础管理系统展示[es6版] ] ... -
多语言版基础管理系统展示[es6版]-简单整合tensorflow
2017-05-03 19:48 1044在大数据和AI渐渐兴起的时候,这是一个关于大 ... -
基于html5的websocket和rtmp协议的java socket服务器
2016-12-07 07:20 1100现代企事业单位中,会涉及到数据推送和获取服 ... -
多语言版基础管理系统展示[flash版]-hadoop+spark+spring简单整合
2016-06-18 21:36 4314本demo基于多语言版基础管理系统展示[fl ... -
ios简单的增删查例子
2015-02-23 16:08 879本例子分为两 ... -
spark 学习
2013-05-18 00:13 19226spark,又一个传说中的分布式实现,详情:ht ... -
基于rtmp协议的java多线程服务器
2013-03-31 21:34 3889打算设计这个半开源服务的计划已经有很长时间了,大 ... -
矩阵算法实现修改
2013-03-23 00:10 1043前段时间因为项目需要,需要实现一个据说是某高 ... -
hadoop+lucene+web 综合小demo
2013-03-02 01:28 13751很长一段时间没有关注hadoop,突然间有兴致,于是动手又 ... -
ejb3.x 简单小 demo
2012-02-21 21:07 1199本demo适合有一定编程经验的自学者 ,简单易懂,涉及数据 ... -
java综合
2012-02-11 22:00 1460以下自定义的简单类中,分析涉及的基础知识 / ... -
java nio应用 aes字符串加密与解密
2010-08-18 22:36 1990import java.io.IOException; imp ... -
java excel内容转换为键/值对基本通用方法与数据库导入
2010-06-01 23:28 1716有时候我们需要从execel中导入大量的数据,编程过程中就遇到 ... -
java写的简单生成sql语句的工具方法
2010-04-20 23:02 3464jdbc编程中,最麻烦的是拼sql语句,尤其是字段太多的时候, ... -
基于rtmp协议用java nio写小型游戏服务器的总结3
2010-03-05 20:59 2175在flex使用rtmp协议进行连接的时候,有个握手的过程,详情 ... -
基于rtmp协议用java nio写小型游戏服务器的总结2
2010-03-04 21:41 2301今天介绍一下学习rtmp的过程,首先当然是baidu和goog ... -
基于rtmp协议用java nio写小型游戏服务器的总结1
2010-03-03 22:55 2520前一阵子,进了一家公司,工作的内容是写基于rtmp协议的jav ... -
oo,ooa,ood,oop,tdd
2010-02-21 20:12 1337oo(object-oriented):基于对象概念, ...
相关推荐
整合Spring MVC、Webservice和Socket,可以构建一个既能够作为Webservice服务端接收并处理请求,也可以作为客户端调用其他Webservice的服务。同时,通过Socket可以实现实时的数据同步和推送功能,提升用户体验。 ...
### IIS与Tomcat整合详解 #### 一、前言 在Web开发领域,IIS (Internet Information Services) 和 Tomcat 分别是处理静态资源(如HTML、CSS、JavaScript等)和服务Java应用的重要服务器软件。随着业务的发展和技术...
本项目源码展示了如何使用Java进行WebSocket的整合,从而实现服务器消息推送功能。以下将详细介绍WebSocket的核心概念、Java整合WebSocket的步骤以及在实际项目中的应用。 1. WebSocket简介: WebSocket协议是HTML5...
### Apache与Tomcat整合的简单方法 #### 一、引言 随着互联网技术的发展,越来越多的应用需要同时利用Apache和Tomcat的优势。Apache作为一款稳定、高效且功能强大的Web服务器,而Tomcat则是一款专为Java应用程序...
在本项目"1.5Java聊天室的设计与实现原生Sevlet_socket.zip"中,我们探讨了如何使用Java编程语言构建一个基于Servlet和Socket的实时聊天应用。这个项目不仅涵盖了网络编程的基础知识,还涉及到了Web服务器交互的高级...
1. **jetty-util-9.4.12.v20180830.jar**: Jetty是一个轻量级的Java Web服务器和Servlet容器,这里的jetty-util库提供了许多用于网络和I/O操作的实用工具。 2. **websocket-common-9.4.12.v20180830.jar**: 这是...
### Ubuntu Linux 下 Apache 与 Tomcat 的整合 在 Ubuntu Linux 环境中,Apache 和 Tomcat 的整合是一项常见的任务,旨在实现静态内容通过 Apache 服务器进行高效分发,而动态内容(如 Java 应用)则通过 Tomcat ...
这个名为"Android+Tomcat+MySql登录注册和Socket聊天"的项目就是一个典型的案例,它整合了Android客户端、Java后端服务器(Tomcat)以及关系型数据库MySQL,同时实现了基于Socket的实时聊天功能。以下是对这些关键...
6. **网络编程**:Java的Socket编程允许开发者创建网络应用程序,理解TCP和UDP协议,以及ServerSocket和Socket类的使用,可以构建简单的客户端-服务器应用。 7. **JDBC数据库连接**:Java Database Connectivity ...
### Apache与Tomcat整合知识点详解 #### 一、Apache与Tomcat简介 - **Apache**:是一款免费开源的Web服务器解决方案,支持多种操作系统,如Windows、Linux等,并且可以通过简单的API扩展其功能。 - **Tomcat**:是...
创建一个简单的聊天室页面,用于展示WebSocket功能。 ```html <!DOCTYPE html> <title>Chat Room <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> $(document)....
JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 JkMount /*.action ajp13 JkMount /*.shtml ajp13 JkMount /dwr/* ajp13 #TOMCAT整合结束 conf/extra/httpd-vhosts.conf #jlitshop NameVirtualHost love ...
- **Tomcat6**:Apache Tomcat 6是一款开源的Java Servlet容器,主要用于部署和运行基于Java的应用程序,尤其是JSP和Servlet。 #### 实现目标 本项目的主要目标是在Windows XP SP3操作系统上配置IIS5以支持JSP应用...
通过整合,可以利用IIS作为前端服务器,而将动态内容如JSP、Servlet等请求转发至后端的Tomcat服务器进行处理。这种方式不仅能够提高系统的安全性,还能有效利用IIS的强大静态资源处理能力和Tomcat对Java应用的良好...
它的核心理念是“简单、面向对象、健壮、安全”。Java的设计使得它能够在各种操作系统上运行,包括Windows、Linux、Mac OS等,这就是所谓的“独立于平台”。 1. **Java语法基础** Java的语法深受C++的影响,但简化...
例如,你可以创建一个简单的`WebsocketEndPoint`类如下: ```java import org.springframework.web.socket.CloseStatus; import org.springframework.web.socket.TextMessage; import org.springframework.web....
使用-Javaagent参数添加远程调试选项,如`-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000`,然后通过IDE如IntelliJ IDEA或Eclipse进行远程连接。 12. **Tomcat的错误日志在哪里查看?** ...
+ J2EE 规范下的 Jsp、Servlet、JDBC、JavaBeans 的 MVC 模式的开发项目 + Struts、Hibernate、Spring、Framework 等的项目整合 + Tomcat 服务器配置和调试 + IDE(集成开发环境)的使用 + MySql、Oracle ...
标题提到的"tomcat 中运行php 环境的jar包"正是指这样的解决方案,通过特定的Java桥接技术实现PHP与Tomcat的整合。下面将详细介绍这个知识点: 首先,我们需要理解的是Tomcat是一个开源的Java Servlet容器,它主要...