---恢复内容开始---要点:1.只需回应Get请求,将本地的lena.jpg返回给客户端2.使用最基本的socket编程3.使用线程池进行线程管理4.将lena.jpg读入内存中,减少IO次数 5.MyHttpServer作为服务器类,ServerThread作为服务处理线程类 1.加入线程池ExecutorService pool = Executors.newFixedThreadPool(MaxClientNums);
2.有客户访问则开启服务线程并将其加入线程池while(true){try {Socket client=server.accept();if(client.isCon...
今天发现早年在大象笔记中写的一篇笔记,之前放在ijavaboy上的,现在它已经访问不了了。前几天又有同事在讨论这个问题。这里拿来分享一下。在web应用开发或者游戏服务器开发的过程中,我们时时刻刻都在使用热部署。热部署的目的很简单,就是为了节省应用开发和发布的时间。比如,我们在使用Tomcat或者Jboss等应用服务器开发应用时,我们经常会开启热部署功能。热部署,简单点来说,就是我们将打包好的应用直接替换掉原有的应用,不...
一、Http协议1.什么是Http协议HTTP,超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的 一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为 了提供一种发布和接收HTML页面的方法2.Http协议的组成Http协议由Http请求和Http响应组成,当在浏览器中输入网址访问某个网站时, 你的浏览器会将你的请求封装成一个Http请求发送给服务器站点,服务器接收到请 求后会组织响应数据封装...
一、Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件。 如果想修改Tomcat服务器的启动端口,则可以在server.xml配置文件中的Connector节点进行的端口修改例如:将Tomcat服务器的启动端口由默认的8080改成8081端口Tomcat服务器启动端口默认配置1 <Connector port="8080" protocol="HTTP/1.1"
2 connectionTimeout="20000"
3 redirectPort...
1、项目介绍: 由于大数据部门涉及到其他部门将数据传到数据中心,大部分公司采用的方式是用json文件的方式传输,因此就需要编写服务端和客户端的小程序了。而我主要实现服务端的代码,也有相应的客户端的测试代码。这里须有一个需要提到的是,我在实现接收json文件的同时,而且还需将数据写到hbase中。写入到hbase当中采用的是批量插入的方式,即一次插入多条记录。 好了,有了前面的说明,下面来简单的说一下我实现的服务端...
一、NIO类库简介 1、缓冲区Buffer Buffer是一个对象,包含一些要写入和读出的数据。 在NIO中,所有的数据都是用缓冲区处理的,读取数据时,它是从通道(Channel)直接读到缓冲区中,在写入数据时,也是从缓冲区写入到通道。 缓冲区实质上是一个数组,通常是一个字节数组(ByteBuffer),也可以是其它类型的数组,此外缓冲区还提供了对数据的结构化访问以及维护读写位置等信息。 Buffer类的继承关系如下图所示: 2、通...
首先抛出问题:程序1---错误版本import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;public class HttpSimpleServer
{public void startServer() throws IOException{ServerSocket ss = new ServerSocket(10021);Socket so = ss.accept();InputStream in = so.getInputStream();PrintWriter pw = new PrintWriter(so.getOutputStream(),...
? ? ?JMS是一个标准,就像EJB,有很多开源的,商业的实现,ms技术对应的规范是jsr914,规范的实现称为jms provider,常见的实现有ActiveMQ、JBoss MQ、IBM Websphere MQ等。?? ? ?其主要优点:(1)可以使2个系统或模块实现松耦合,模块A不需要直接调用模块B,只需要往jms provider上发送一条约定格式的消息,模块B收到这条消息,进行后续的业务处理(2)jms方式是异步的,意味着模块A发送消息之后,不需要等待模块B或者jms provid...
客户端代码不变,参照 http://www.cnblogs.com/Westfalen/p/6251473.html服务端代码如下:import java.io.IOException;
import java.net.InetSocketAddress;import org.apache.mina.core.service.IoHandlerAdapter;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;
import org.apache.mina.filter.codec.ProtocolCodecFilter;
import org.apache.mina.filter.codec.textline.TextL...
今天分享一个免费在线的小工具的开发代码就是通过淘宝提供的接口获取服务商信息,工具地址:http://www.yzcopen.com/seo/ipadress代码如下:publicclass YzcPattern {
/**
* ip地址接口
*/privatefinalstatic String ipurl ="http://ip.taobao.com/service/getIpInfo.php?ip=";/**
* 判断ip
* @param text
* @return*/publicstaticboolean ipCheck(String text) {
if (text != null && !text.isEmpty()) {
// 定义正则表达式
Strin...
tomcat v7.0-------support-------->Java EE 6 and 6以上tomcat v8.0-------support-------->Java EE 7 and 7以上tomcat v9.0-------support-------->Java EE 8 and 8以上1.安装jdkhttp://www.oracle.com/technetwork/java/javase/downloads/index.html去官网下载你想要的版本,也可以用yum直接安装原文:https://www.cnblogs.com/yunweiweb/p/12805993.html
今天简单介绍一下如何用Java支持HTTP Multipart的request和response。 整个项目的代码可以在https://github.com/mcai4gl2/multi下载。在这个程序里,我们的业务场景很简单。在服务端有一个随机数生成器,可以生成随机的Integer和Guid,客户端通过服务,可以请求一个或多个随机数。同时,客户端可以向服务端发送一个或多个随机数,这些随机数会被加入到一个队列中,被其他的客户端通过请求获得。以下是我们的随机数Bean的定义: [ja...
前言学习任何一个稍有难度的技术,要对其有充分理性的分析,之后果断做出决定---->也就是人们常说的“多谋善断";本系列虽然涉及的是socket相关的知识,但学习之前,更想和广大程序员分享的是一种心境:学习是一个循序渐进的过程,心态应该随时调节,保持戒骄戒躁的状态。比如最近在看网易公开课MIT《算法导论》,老师提到,学习算法之前要计算机数学+离散数学+概率论等课程的知识,所以一直学不好算法的程序员不妨从基础入手,这都...
日志服务需要提供的功能有:可以从外部安全地开启和关闭日志服务;可以供多个线程安全地记录日志消息;在日志服务关闭后,可以把剩余未记录的消息写入日志文件; publicclass LogService
{privatefinal BlockingQueue<String> msgQueue; //阻塞的消息队列保存日志消息privatefinal PrintWrite writer; //写消息到日志文件privatefinal LoggerThread logThread; //写日志的线程privat...
1、配置 pom.xml,在原有的spring项目中添加以下2个即可。<span style="white-space:pre"> </span><!-- mongo db 驱动--><dependency><groupId>org.mongodb</groupId><artifactId>mongo-java-driver</artifactId><version>3.2.2</version></dependency><!-- spring-data-mongodb --><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-mongodb</artifactId><version>1.9.2.RELEASE</version></depe...