AJ分享,必须精品

一:为什么要学习网络编程

关于这个问题,为什么要学习网络编程,AJ的理解就是,这东西是时代发展的必要,没什么为什么,就是应该学,除非你就是想玩单机,但是就算是单机也会有购买金币之类的网络需求,简单来说,有了网络,让你不再是一个人在战斗。

网络编程是一种实时更新应用数据的常用手段 。
网络编程是开发优秀网络应用的前提和基础。
总之,网络编程十分重要,必须学,必须学好。

二:初识网络

1:要记住的基本概念

在网络编程中,有几个必须掌握的基本概念

客户端(Client):移动应用(iOS、android等应用)。

服务器(Server):为客户端提供服务、提供数据、提供资源的机器。

请求(Request):客户端向服务器索取数据的一种行为。

响应(Response):服务器对客户端的请求做出的反应,一般指返回数据给客户端。

作为移动开发工程师,主要的精力都是放在前端开发,就是水果手机上操作的那些。

2:服务器

A:服务器的分类

按照软件开发阶段来分,服务器可以大致分为2种

(1)远程服务器

别名:外网服务器、正式服务器

使用阶段:应用上线后使用的服务器

使用人群:供全体用户使用

速度:服务器的性能、用户的网速

(2)本地服务器

别名:内网服务器、测试服务器

使用阶段:应用处于开发、测试阶段使用的服务器

使用人群:仅供公司内部的开发人员、测试人员使用

速度:由于是局域网,所以速度飞快,有助于提高开发测试效率

B:本地服务器的选择

如果处于学习、开发阶段,自己搭建一个本地服务器即可

(1)选择怎样的本地服务器?

在公司开发阶段,已经有专门的后端人员开发服务器程序,不由得你选择

在学习阶段,选择什么本地服务器都可以,能用就行

(2)在要想在Mac上方便地启动Java服务器,大致有以下步骤

1)安装JDK (Java Development Kit)

2)安装Java的开发工具:eclipse 下载地址:http://www.eclipse.org/downloads,选择64bit、Java EE版本的

3)利用Java编写一套服务器程序

4)配置服务器的容器:Apache Tomcat 下载地址:http://tomcat.apache.org/download-60.cgi

5)启动Apache Tomcat

C:本地服务器的主机地址

本地服务器的主机地址一般有3种写法:

(1)127.0.0.1 :每台机器内置的IP地址,指的就是机器本身。

(2)localhost :等价于第1种情况的127.0.0.1

(3)交换机\路由器分配的IP地址 :真机测试一定要用这个,且真机和服务器得在同一个局域网内。

搭建本地服务器

第一步:准备好相关的软件:

apache-tomcat-6.0.41.tar
eclipse-jee-kepler-SR2-macosx-cocoa-x86_64.tar.gz
jdk-8u5-macosx-x64.dmg

第二步:安装eclipse:
1:制作一个纯英文路径的文件夹。
2:将eclipse-jee-kepler-SR2-macosx-cocoa-x86_64.tar.gz放入文件夹并且双击打开,他会解药到当前目录中。

3:安装jdk:

4:打开eclipse

5:设置工作空间(全英文路径)

6:开始导入项目,把MJ写好的代码放入(你要是javaEE牛自己写也没事,AJ临时用的mj的后面学习时候会直接用网络上的)。

7:从eclipse导入项目:

8:导入项目之后,项目报错且格式乱码,下面进行调整。

9:配置tomcat服务器:
把下载的tomcat解压放到全英文路径下:

打开servers


点ok后创建一个新的容器

选择容器的路径就是tomcat的文件路径

成功后:

10:以debug的方式启动服务器

11:加载项目:
看到后台的最后的红色数字没有,那个事tomcat的启动时间

12:这时候我们就可以访问我们的站点了:
火狐浏览器输入:http://192.168.1.53:8080/MJServer
或者:http://127.0.0.1:8080/MJServer

AJ学IOS(56)网络基础以及如何搭建服务器的更多相关文章

  1. 前端学HTTP之网络基础

    × 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...

  2. AJ学IOS 之微博项目实战(2)微博主框架-自定义导航控制器NavigationController

    AJ分享,必须精品 一:添加导航控制器 上一篇博客完成了对底部的TabBar的设置,这一章我们完成自定义导航控制器(NYNavigationController). 为啥要做自定义呢,因为为了更好地封 ...

  3. AJ学IOS(13)UI之UITableView学习(下)汽车名牌带右侧索引

    AJ分享,必须精品 先看效果图 代码 ViewController #import "NYViewController.h" #import "NYCarGroup.h& ...

  4. [iOS 多线程 & 网络 - 2.0] - 发送接收 服务器信息

    A.搭建java服务器 使用eclipse.tomcat和struts2框架搭建一个简单的服务器 1.准备好合适版本的JDK.eclipse EE.tomcat.struts2 框架包 2.配置JDK ...

  5. AJ学IOS(55)多线程网络之图片下载框架之SDWebImage

    AJ分享,必须精品 效果: 代码: - (NSArray *)apps { if (!_apps) { NSArray *dictArray = [NSArray arrayWithContentsO ...

  6. AJ学IOS(49)多线程网络之线程的创建NSThreand

    AJ分享,必须精品 一:NSThread的基本使用 1:创建和启动线程 一个NSThread对象就代表一条线程 创建.启动线程 NSThread *thread = [[NSThread alloc] ...

  7. AJ学IOS(50)多线程网络之GCD简单介绍(任务,队列)

    AJ分享,必须精品 GCD简单介绍 1.什么是GCD? 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 2.GCD的优势 GCD是苹果 ...

  8. AJ学IOS(48)多线程网络之多线程简单了解

    AJ分享,必须精品 一:进程和线程 1:什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 比如同时打开QQ.Xcode,系统就会分 ...

  9. AJ学IOS(39)UI之核心动画之CABasicAnimation(基础动画)

    AJ分享,必须精品 一.CABasicAnimation简介 CAPropertyAnimation的子类 属性解析: fromValue:keyPath相应属性的初始值 toValue:keyPat ...

随机推荐

  1. Java8 Stream流

    第三章 Stream流 <Java8 Stream编码实战>的代码全部在https://github.com/yu-linfeng/BlogRepositories/tree/master ...

  2. 一个简单的方法去掉angular application中URLs的hashtag

    本文转载自:Pretty URLs in AngularJS: Removing the # By default, AngularJS will route URLs with a hashtag. ...

  3. babel-loader配置

    1.npm i @babel/core.@babel/preset-env.@babel/runtime.@babel/plugin-transform-runtime.@babel/plugin-p ...

  4. go:内置函数 | 闭包 | 数组 | 切片 | 排序 | map | 锁

    内置函数 1.close: 主要是用来关闭channel 2.len:用来求长度,比如string.array.slice.map.channel 3.new与make都是用来分配内存 new用来分配 ...

  5. python浅学【网络服务中间件】之Memcached

    一.缓存的由来: 提升性能 绝大多数情况下,select 是出现性能问题最大的地方.一方面,select 会有很多像 join.group.order.like 等这样丰富的语义,而这些语义是非常耗性 ...

  6. 读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理

    本文将通过一个演示工程来快速上手java调用HDFS的常见操作.接下来以创建文件为例,通过阅读HDFS的源码,一步步展开HDFS相关原理.理论知识的说明. 说明:本文档基于最新版本Hadoop3.2. ...

  7. C# 录音和播放录音-NAudio

    在使用C#进行录音和播放录音功能上,使用NAudio是个不错的选择. NAudio是个开源,相对功能比较全面的类库,它包含录音.播放录音.格式转换.混音调整等操作,具体可以去Github上看看介绍和源 ...

  8. 洛谷5026 Lycanthropy 差分套差分

    题目链接 https://www.luogu.com.cn/problem/P5026 题意 在一个长度为m的序列中,每次给一个下标x,和一个权值v,然后从x-v*3到x-v*2单调递增,从x-v*2 ...

  9. PHP7内核(五):系统分析生命周期

    上篇文章讲述了模块初始化阶段之前的准备工作,本篇我来详细介绍PHP生命周期的五个阶段. 一.模块初始化阶段 我们先来看一下该阶段的每个函数的作用. 1.1.sapi_initialize_reques ...

  10. coding++:Spring_IOC(控制反转)详解

    IoC是什么: 1):Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想. 2):在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的 ...