java socket多线程 接收xml
java socket多线程 接收xml
2009-08-21 17:25
这段时间做了个项目,不过觉得一直是我在写,我们总监再改。。看样子自己的代码能力太差了。而且乱七八糟的啦。。
现将代码分享一下吧 :是从客户端接收xml进行一定的解析,然后入库最后返回吧 中间复杂的逻辑就不说了 。。。
SocketServer.java
package com.socket;
import java.io.IOException;
import java.net.*;
import
java.util.concurrent.*;
import com.Config;
import org.apache.log4j.Logger;
public class SocketServer {
Config c = new Config();
private static Logger logger = Logger.getLogger(SocketServer.class);
private ServerSocket serverSocket;
private ExecutorService
executorService;//线程池
private final int POOL_SIZE =
100;//单个CPU线程池大小
public SocketServer() throws IOException {
serverSocket = new ServerSocket(c.port);
//Runtime的availableProcessor()方法返回当前系统的CPU数目.
executorService =
Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() *
POOL_SIZE);
System.out.println("服务器启动");
logger.debug("service start!!");
}
public void service() {
while (true) {
Socket
socket = null;
try {
//接收客户连接,只要客户进行了连接,就会触发accept();从而建立连接
socket =
serverSocket.accept();
&
相关文档:
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......
转IBM的文章,比较详细。需要注意的是,
通过JavaCompiler进行编译都是在当前目录下生成.class文件,而使用编译选项可以改变这个默认目录。编译选项是一个元素为String类型的Iterable集合。如我们可以使用如下代码在D盘根目录下生成.class文件。
Iterable options = Arrays.asList("-d", "d:\\");
JavaCompiler. ......
javabean+数组优点:
1、简单:java程序中最简单的类莫过于javabean,javabean有一套成熟的规范,易于编写
2、方便:javabean是数据的载体,既可以通过set和get方式来操作数据,又可以象使用数组一样来操作javabean
3、通用:通过下标来操作javabean,你所写的代码将是通用的,可移植的。你所写的功能组件将适用于所有的 ......
十二 java面向对象程序设计(类的继承)
/**
* 类的继承
*/
class Person
{
private String name;
private int age;
public String setName(String name){this.name = name;return name;}
public int setAge(int age){this.age = age;return age;}
public void getInfo ......
本人正在学习Java,那些知识点都学得很好,但一旦要我用所学的知识做个项目出来我就无从下手,不知道从哪里做起才好!一方面的原因是我的阅读量太少了,二者经验不足!我正焦急着怎么改变我这种状态,所以想找些做项目的教材来自学,但真不知道该看哪些教材好,所以在此向各位项目高手请教,请给我一些建议或推荐给我一些教 ......