ネットワーク

1.synchronizedゲンロック
同期方法
のメンバー|静的
シンプルが、大きな、非効率的であり得るロックの一般的な範囲
シンクブロック
クラスのクラス:クラス全体の情報をロックする等価|内のすべてのオブジェクト
これ:現在のオブジェクトのロック、このロックすべてのリソースは、オブジェクト
のリソースを: -一般的なロック不変のコンテンツオブジェクトのアドレス
範囲があまりにも低効率のロックは、ロック範囲がロックされないことがあり小さすぎるで
同じ内容ロックする必要がありますロックを

:デッドロック
ロックの過剰使用を回避する必要性をオブジェクトを解放することができません頻繁に遭遇する場合は、それ以外の問題が発生するデッドロック

2.スレッド間通信(生産者-消費者モデル)
待ち():待機状態のスレッド
ロック解除オブジェクト、CPUリソースが
(通知):ウェイクアップ、他のスレッドが待機中にプールされている
リソースはオブジェクトではありません、でも、あまりにも目を覚まします実行することはできません、我々は実行する資格を得るために、オブジェクトのロックを取得しなければならない
のnotifyAll()を
すべてのウェイク
注:同期環境での使用

3.IP:ノード(コンピュータ、携帯電話、パッド、ルータ...)...定義されたネットワークノードを識別
分類:
IPV4を:32ビットの
IPV6:128ビットの

IPの機能:
内部LAN IP:192.168.0.0〜192.168.255.255
127.0.0.1:デフォルトのローカルIPの
はlocalhost:ローカルドメイン名の
DNSサーバー:IPとドメイン名との関係を解決するため

のInetAddressこのクラスは、インターネットプロトコル(IP)アドレスを表します。
static InetAddress getLocalHost()ローカルホストを返します。
ホストのIPアドレスを決定するために、静的のInetAddressのgetByName(String型のホスト)、ホストの名前を与えられました。

文字列のgethostname()このIPアドレスのホスト名を取得します。
文字列はgetHostAddress()IPアドレス文字列(テキスト表現)を返します。

ポート:たInetSocketAddress

4.ポートのポート:区別ソフトウェア...
2バイト:0〜65535
注:
1.同じプロトコルが低くスローガン競合することはできません
。2.カスタム設定が推奨されるポート番号などの大きな可能な限り、通常は8000オンライン
予約済みのポート番号:
80:HTTP
8080:Tomcatの
1521:Oracleの
3306:MySQLの

たInetSocketAddressクラスは、IPソケットアドレス(IPアドレス+ポート番号)を実装しています。
IPに基づいたInetSocketAddress(文字列のホスト名、int型ポート)|ドメイン+ポート番号構築
のInetAddressのgetAddressは()のInetAddressを取得します。
文字列のgethostname()は、ホスト名を取得します。
int型のgetPort()は、ポート番号を取得します。

5.URL:ユニフォームリソースロケータ
インターネット3個の礎石:HTTP、HTMLのURL
URL組成:
プロトコル
、ドメイン
、ポート
リソース
データ
「http://www.baidu.com:80/index.html?name=zhangsan&pwd=123#a」

URLを構築するURL(文字列仕様)

ソケット6-1.Socket:トランスポート層は小孔は、アプリケーション層を開け、ソケットを介してデータの送受信で
異なるプロトコルの下のソケットは、異なる実装
指向プログラミングソケットの

TCPの3ウェイハンドシェイクに基づいて、接続指向セキュリティオーバーヘッド大きいサイズを呼び出しますストリーミングに制限はありません。
UDP:|コネクションレスの書き込み書き込みは単なるテキストメッセージにほんの少しのオーバーヘッド、60Kよりも一般的に少ない高効率、安全でない限られたサイズ、ベースのバイト配列伝送送る

:UDPソケットプログラミングに
送信側
受信側を
DatagramSocketのこのクラスは、パケット内のデータを送受信するためのソケットを表します。(定義された端部を送信|受信側)
のDatagramPacketデータグラムパケット(パケット)の

送信側のUDP基本フロー:送信側とサーバはに等しく、
送信側のポート番号を指定する送信側DatagramSocketの(ポート番号)を定義1.
データの準備2.
3.のDatagramPacketパケット化(バイト[] BUFは、int型 、int型の長さをオフセット、InetAddressのアドレス、INTポート)が
指定されたホスト上の指定されたポートにオフセット長パケットのオフセットの長さを送信するためのデータグラムパケットを構築し番号。
(のDatagramPacket Pの)4.送信伝送ボイド
)5.閉鎖空隙近い(このデータグラムソケットをクローズします。

6-2基本的な流れ受信側:
1.受信端たDatagramSocket(ポートINT)の定義
2.製造バイト配列を
3のDatagramPacket(バイト[] BUF、int型の長さ)のデータパッケージを受信する準備ができて
4.受信
小包から5.データ取得
()バイト[]のgetDataを
データバッファを返します。
int型のgetLength()は
、データを送信または受信するように長さを返します。
6.閉じます

7-1.Socketこのような実装のクライアントソケット
クライアント
クライアント1.ストリームソケットを作成し、指定されたホスト上の指定されたポート番号に接続するソケット(文字列のホスト、int型ポート)を定義しました。
2.IO操作
出力ストリームのOutputStreamのgetOutputStream()ソケットの出力ストリームを返します。
3.ブラシ
4.閉じる
7-2.ServerSocketクラスは、サーバーソケットを実装しています。
TCPサーバ
1.サーバのServerSocket(int型ポート)指定ポート用のサーバソケットを作成を定義します。
2.クライアント接続を監視し阻止に成功し、それはソケットです
3.io操作
4.閉じます

ファイルアップロードクライアント用8-1.TCP:
1.クライアントソケット(文字列のホスト、int型ポート)ストリームソケットを作成し定義し、指定されたホスト上の指定されたポート番号に接続します。
操作は、データファイルを読み込み開始2.IO - >データ書き込み
新しいのFileInputStreamを(「」);
出力ストリームのOutputStreamのgetOutputStream()は、ソケットの出力ストリームを返します。
3.ブラシ
4.閉じる
8-2.TCPファイルのアップロードサーバー:
1.特定のポート上のサーバソケットを作成するには、サーバーのServerSocket(int型ポート)を定義します。
2.クライアント接続が成功したモニターのブロッキング、それはソケットです
3.io操作:クライアント--->ファイル出力ストリームファイル書き込んだデータを読み出す
4.ブラシ
5.閉じます

おすすめ

転載: www.cnblogs.com/jj-01/p/11210332.html