node是js解析器,node是js虚拟机
js运行时环境,他也会提供一些模块,我们简称是核心模块(node本身提供的,也就是你下载好了,安装好了,可以直接调用的,他既然提供给我们模块,那就用啊== 虽然不用也能用元素js实现,但是不是麻烦吗?当然也可以下载第三方模块,需要在线下载github.com:如:
express //用于网络编程
mysql 用于node.js连接数据库
)
require('url') 用于解析统一资源定位符
require('querystring');用于解析查询字符串
require('path');用于处理路径
require('http');用于进行网络编程,服务器编程
require('fs');用于处理文件系统
以上这些我们不需要安装。可以直接调用,因为他属于系统模块
在我们的node中,你想操作数据库,你也需要去下载模块
老师讲课喜欢插入一些java,我也就顺手记下来了。。不过我都不懂
java是java解析器
jre是java运行时环境(java自己编写的一些这里写代码片
核心代码库rt.jar)
import java.util.List
import java.util.ArrayList
import java.io.write
java连接数据库,使用了jdbc技术,jbdc不属于java核心结束,在java核心包里面,并没有提供这样一种机制,去连接数据库。他只提供了接口,并没有提供实现类。比如你去mysql去下载 mysql-connect-5.7.jar
`
PATH模块
var path=require(‘path’);
path.basename() 返回路径的最后一部分,也就是文件名,获取文件名
path.dirname() 返回目录名
path.extname() 后缀名
path.isAbsolute() 判断是不是绝对路径(以斜杠/开头就是绝对路径,否则就不是绝对路径)
path.join() 将两个地址连接起来
path.normalize() 解析,序列化
path.delimiter 分隔符
url内置模块
url.pase() 统一资源定位符解析为对象
var urlObj=url.parse();
urlObj.pathname;
urlObj.query;
urlObj.href;
host;
hostname;
port;//端口号
http跟后台语言有协议,后台语言跟对应的数据库也是有协议的
var qs=require(‘querystring’); var query=’credit=2&name=java’;
//将查询字符串转换为对象{credit:2,name:java}
var qso=qs.parse(query);//这个是转换为对象
console.log(qso)
console.log(“查询字符串”+qs.stringify(qso));//这个是转换为字符串
querystring
querystring.parse(‘查询字符串’)
key1=val1&key2=val2;
=>转换成下面的对象格式
{
key1:val1,
key2:val2
}
若需要转换回来的话,
querystring.stringify(obj);
http模块内置,主要用于服务器编程
第一步:先require进来
var http = require(‘http’);
第二步:创建服务
var server = http.createServer(function(req,resp){
});
server.listen(port,function(){
});
第三步,启动
记住,修改后的nodejs都需要重启,否则无效
1)获取用户的请求路径
req.url; 比如现在有个网址 /courses/aa?id=1001
比如:
url.parse(req.url).pathname;
得到:/courses/aa
比如:
url.parse(req.url).query;
得到:
id=1001
现在需要将id=1001转换成对象,写法是querystring.parse("id=1001")得到:{id:1001}
req.method方法是获取到哪个请求,比如GET,POST(DELETE PUT)
事件(用来接受以post方式提交的请求000):
data
end
2)resp 回应
resp.writeHead(status,desc,{
‘Content-type’:’text/plain;charset=utf-8’,
‘Access-Control-Allow-Origin’:’*’
});
resp.write();
resp.end();
`