cgb2104-day11

Posted cgblpx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cgb2104-day11相关的知识,希望对你有一定的参考价值。

一,Json

–1,概述

	是轻量级的 客户端 和 服务器之间 数据交换的格式
	本质上就是一个字符串

–2,格式

	--普通的json串  "k" : "v"
	--json对象 {"k" : "v" , "k" : "v" , "k" : "v"}
	--json数组 [{"k":"v" , "k":"v" , "k":"v"},{"k":"v" , "k":"v" , "k":"v"}]

–3,测试

	<!DOCTYPE html>
	<html>
		<head>
			<meta charset="utf-8">
			<title>测试 JSON字符串</title>
			
			<!-- 在网页中,添加JS代码 -->
			<script>
				var p = ' "name":"jack" ' ; //1. 简单的json字符串
				console.log(p); 
				console.log(p.length); //获取字符串的长度
				
				p = ' { "name":"jack" , "age":"20" , "sex":"男"  } ' ; //2. json对象
				console.log(p); 
				console.log(p.concat(123));  //拼接字符串
				
				p = '[{"name":"rose","age":"20"} , {"name":"jack","sex":"女" }]' ; //3. json数组
				console.log(p); 
				
				//4. json字符串 和 js对象 互转:: 利用工具类JSON
					//json字符串 转成 js对象(为了调用对象的属性.函数):: js对象 = JSON.parse(字符串)
					var obj = JSON.parse(p);
					console.log(obj) ; //是数组,可以用下标获取每个对象
					console.log(obj[0].age) ; //20,调用属性的值
					console.log(obj[1].name) ; //jack,调用属性的值
				
					//js对象 转成 json字符串(为了调用字符串的功能):: 字符串 = JSON.stringify(js对象)
					var str = JSON.stringify(obj);
					console.log(str) ;
					console.log(str.length) ; //获取长度
					console.log(str.concat("abc")) ; //拼接字符串
					console.log(str.substring(5)) ; //截取字符串
				
			</script>
		</head>
		<body>
			
		</body>
	</html>

二,Ajax

–1,概述

	为了提高浏览器的响应速度,ajax可以实现异步访问(不必等待上一次的结果),局部刷新		(只刷新局部,而不是整个网页)

–2,语法

	--使用JQuery提供的ajax技术,
	--导入JQuery的函数库
	--使用
		$.ajax({
			type:"post" , //请求的方式get/post
			url: "https://p.3.cn/prices/mgets" , //请求的地址
			contentType: "json" , //要发送的数据的类型
			data: {"name":"jack"}, //要访问地址时携带的数据
			dataType: "jsonp", //返回数据的类型
			success: function(data) {   //执行成功后调用的
				console.log(data);
			}
			error: function(data) { //执行失败后调用的
				console.log(data);
			}
		});

–3,测试

		<!DOCTYPE html>
		<html>
			<head>
				<meta charset="utf-8">
				<title>测试 ajax</title>
				
				<!--1. 引入jQuery的函数库 -->
				<script src="jquery-1.8.3.min.js"></script>
				
				<!--2. 使用ajax -->
				<script>
					$(function(){//文档就绪函数
						$.ajax({ //指定参数的值就可以
							  type: "POST" , //指定请求方式get post
							  url: "https://p.3.cn/prices/mgets" ,  //指定请求地址
							  contentType: "application/json;charset=utf-8" ,  //发送数据的类型
							  data:{  "skuIds": "J_100003717483" } ,  //拼接的参数
							  dataType: "jsonp" , //响应的数据的类型
							  success: function(data){ 
								  //data已经被转换成了js对象,可以直接解析属性的值
									console.log(data); //打印了服务器返回的数据
									console.log(data[0].p); //解析返回的数据,p的值
									console.log(data[0].op); //解析返回的数据,op的值
							  },
							  error: function(data){
									alert("访问失败.");
							  }
						})
					});
				</script>
			</head>
			<body>
				
			</body>
		</html>

三,Maven

–1,概述

	项目管理工具.主要是管理jar包.包括:jar包的下载,安装,保存.

–2,概念

	--远程仓库/中央仓库:就是一个国外的网址,全球的人都会访问.
	--镜像仓库:就是一个国内的网址,一些大公司去连接中央仓库下载好所有jar包,存到自己							的服务器里.(华为/阿里/网易...)
	--本地仓库:需要自己创建一个文件夹,存从镜像仓库里下载好的一些jar包.	
	--坐标:存jar包的唯一定位的方式.
		--groupId指定了jar包的组id
		--artifactId指定了jar包的项目id
		--version指定了jar包的版本
	--添加jar包/添加依赖:
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.32</version>
		</dependency>
	--检查:
		去本地仓库找,是否有下载好的XXX.jar文件,有才能用里面的工具类.
		没有就不能用,还会报错ClassNotFoundException

–!!!3,使用

	--解压maven3.6的压缩包
	--修改conf/settings.xml配置文件
		--镜像仓库:配置了阿里的网址
		--本地仓库:有默认值(在c盘),也可以自己配置位置,以后就存下载好的jar包
	--在IDEA里创建maven项目
		File-New-Project-选择maven-next-输入项目名称和组id-Finish
	--在IDEA里配置maven	
		File-Settings-Build...-Maven-改三处(解压的位置/settings.xml/本地仓库)-ok
	--在maven项目里添加依赖				
		打开pom.xml文件-指定jar包的坐标-刷新(右上角的maven里有小图标)
	--创建测试类 
		package cn.tedu;
		//测试jdbc,如果工具都能正常使用,说明jar包下载成功了
		//如果工具不能使用,说明jar包没下载成功
		public class TestJDBC {
		    public static void main(String[] args) throws ClassNotFoundException {
		        Class.forName("com.mysql.jdbc.Driver");
		        System.out.println("jar包添加并下载成功啦~~~~");

		    }
		}

–4,目录结构

	--src/main/java --存正确的java代码	
	--src/main/resources --存资源文件	
	--src/test/java --存要测试的java代码		
	--pom.xml --添加jar包的依赖的坐标

作业:熟练创建Maven工程和配置Maven的过程,至少操作3遍

以上是关于cgb2104-day11的主要内容,如果未能解决你的问题,请参考以下文章

CGB2104笔记的链接大全

cgb2104-day13

cgb2104-day14

cgb2104-day12

cgb2104-day16

cgb2104-day18