AJ学IOS(56)网络基础以及如何搭建服务器
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)网络基础以及如何搭建服务器的更多相关文章
- 前端学HTTP之网络基础
× 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...
- AJ学IOS 之微博项目实战(2)微博主框架-自定义导航控制器NavigationController
AJ分享,必须精品 一:添加导航控制器 上一篇博客完成了对底部的TabBar的设置,这一章我们完成自定义导航控制器(NYNavigationController). 为啥要做自定义呢,因为为了更好地封 ...
- AJ学IOS(13)UI之UITableView学习(下)汽车名牌带右侧索引
AJ分享,必须精品 先看效果图 代码 ViewController #import "NYViewController.h" #import "NYCarGroup.h& ...
- [iOS 多线程 & 网络 - 2.0] - 发送接收 服务器信息
A.搭建java服务器 使用eclipse.tomcat和struts2框架搭建一个简单的服务器 1.准备好合适版本的JDK.eclipse EE.tomcat.struts2 框架包 2.配置JDK ...
- AJ学IOS(55)多线程网络之图片下载框架之SDWebImage
AJ分享,必须精品 效果: 代码: - (NSArray *)apps { if (!_apps) { NSArray *dictArray = [NSArray arrayWithContentsO ...
- AJ学IOS(49)多线程网络之线程的创建NSThreand
AJ分享,必须精品 一:NSThread的基本使用 1:创建和启动线程 一个NSThread对象就代表一条线程 创建.启动线程 NSThread *thread = [[NSThread alloc] ...
- AJ学IOS(50)多线程网络之GCD简单介绍(任务,队列)
AJ分享,必须精品 GCD简单介绍 1.什么是GCD? 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 2.GCD的优势 GCD是苹果 ...
- AJ学IOS(48)多线程网络之多线程简单了解
AJ分享,必须精品 一:进程和线程 1:什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 比如同时打开QQ.Xcode,系统就会分 ...
- AJ学IOS(39)UI之核心动画之CABasicAnimation(基础动画)
AJ分享,必须精品 一.CABasicAnimation简介 CAPropertyAnimation的子类 属性解析: fromValue:keyPath相应属性的初始值 toValue:keyPat ...
随机推荐
- 【简说Python WEB】Flask应用的文件结构
目录 [简说Python WEB]Flask应用的文件结构 1.文件结构的目录 2.配置程序--config.py 3.app应用包 4.剥离出来的email.py 5.蓝本(BLueprint)的应 ...
- CodeMixerPro工具,完美替代ChaosTool,iOS添加垃圾代码工具,代码混淆工具,代码生成器,史上最好用的垃圾代码添加工具,自己开发的小工具
新工具 ProjectTool 已上线 这是一款快速写白包工具,秒级别写H5游戏壳包,可视化操作,极易使用,支持Swift.Objecive-C双语言 扣扣交流群:811715780 进入 Proje ...
- Windows软件包管理工具 - Chocolatey
概述 windows下的软件安装管理器(用于自动管理软件安装,更新,卸载) Chocolatey引入了真正的包管理概念,使您能够对事物进行版本控制,管理依赖关系和安装顺序,更好的库存管理以及其他功能 ...
- AutoJS4.1.0实战教程 ---火热持续更新中
这个时代假货太多,虚假广告更是充斥着整个互联网.尤其是那个传奇的我都无语了.好几个明xing代言,问题是太假了……我好奇的是那么虚假怎么就没人管呢,XX部干嘛呢……另外互联网刷视频赚钱就是个炒作.几百 ...
- 批量redis未授权检测工具&批量redis弱口令爆破工具
今天需要然后就百度搜索了一波,然后自己稍微改了一下: #!/usr/bin/python3 # -*- coding: utf-8 -*- """ @Author: 偷来 ...
- [单调栈] 2018-2019 ACM-ICPC, China Multi-Provincial Collegiate Programming Contest-Maximum Element In A Stack
题目:https://codeforces.com/gym/102222/problem/A Maximum Element In A Stack time limit per test 10.0 s ...
- 使用Jenkins与Docker持续集成与发布NetCore项目(实操篇)
使用Jenkins与Docker持续集成与发布NetCore项目(教程一) 原文地址:https://www.cnblogs.com/Jackyye/p/12588182.html 基本环境 该教程的 ...
- command > /dev/null command > /dev/null 2>&1nohup command &> /dev/null的区别
1.对以下命令进行依次区分 command 执行一条普通的命令 command > /dev/null '>'表示将标准输出重定向 '>>'表示追加,/dev/null是一 ...
- 五、运算符的补充与if语句
1.可变不可变类型 指:对前面所学类型做一个可变和不可变类型的分类 可变类型:值改变,ID不变,证明改的是原值,原值是可以被改变的 不可变类型:值改变,ID也变了,证明是产生新的值,压根没有改变原值, ...
- SVN: Cleanup failed update报错 文件被锁定lock办法,cleanup 失效报错。
按照如下办法即可解决: 下载文件链接: https://pan.baidu.com/s/1Ump1BFihbX8izyAA4by5dA 提取码: ftsd 复制这段内容后打开百度网盘手机App,操作更 ...