摘要: 阅读全文
posted @ 2020-01-28 19:53 董振 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 微服务构建的是分布式系统,各个微服务之间通过网络进行服务调用,这就有了服务提供者(被调用方)和服务消费者(调用方),以电影售票系统为例,假设服务调用关系如下图所示: 围绕此场景,我们先编写一个用户微服务,再编写一个电影微服务。 一、编写服务提供者 1、打开start.spring.io,添加web, 阅读全文
posted @ 2019-02-17 00:35 董振 阅读(1004) 评论(0) 推荐(0) 编辑
摘要: 再开始第三节之前,先补充一下第二节里出现的小问题,就是springboot的application.properties,我在文件中添加了server.port=9090这个参数,但是启动项目后并未生效,检查了一下原因,是因为未读取到该文件,这里可以通过buildpath添加source文件夹解决, 阅读全文
posted @ 2019-02-06 23:45 董振 阅读(1277) 评论(0) 推荐(0) 编辑
摘要: springboot模型层,持久层,访问层样例 阅读全文
posted @ 2019-01-01 02:09 董振 阅读(1136) 评论(0) 推荐(0) 编辑
摘要: springboot到底有什么好处?有什么优势?这个先不用看,我们只要知道它有很多优势,现在要做的事只有一件,那就是撸代码!撸完就知道有多少料! 首先,在案例中,我们会构建一个英雄列表应用。操作如下: 1、初始化一个项目:登录start.spring.io,打开页面如下: 可修改group为com. 阅读全文
posted @ 2018-12-16 18:46 董振 阅读(2449) 评论(0) 推荐(0) 编辑
摘要: 一、项目流程 数据预处理-》模型训练-》模型保存-》模型预测 二、要点: 数据类型 运行机制 数据IO 模型训练 模型保存 模型调用 三、编写tensorflow的两个步骤: (1)构建计算图graph graph中包含tensor和operation tensor:类型化的多维数组 operati 阅读全文
posted @ 2023-12-10 22:25 董振 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 1、conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_urls yes 用户目录底下找到 .condarc 文件,打 阅读全文
posted @ 2023-12-06 23:15 董振 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 一、object 1、Object相当于class的单个实,通常放一些静态常量和静态方法 2、不能定义有参的构造方法 3、构造方法只在第一次调用时执行,再次调用不再执行 4、可以实现全局变量的功能,如下图 5、object通常用作单例模式的实现,或者存放类的静态成员 二、伴生类 1、如果同一个sca 阅读全文
posted @ 2023-10-23 21:38 董振 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 一、简单的类 注意: val helloWorld=new HelloWorld 1、如果定义的方法名称没有加括号,在调用时,就不能加括号,如getName,调用时直接getName;helloWorld.getName,加了括号就会报错 2、如果方法名称带括号的,调用时,可以加括号也可以不加括号; 阅读全文
posted @ 2023-10-18 11:12 董振 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 1、创建map的方式 Map("zhangsan"->18,"LiSi",20)创建一个不可变的map Map(("zhangsan",18),("LiSi",30))不可变 val s=scala.collection.mutable.HashMap("zhangsan"->30)可变map s( 阅读全文
posted @ 2023-10-12 21:41 董振 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 1、定长数组 var a=new Array[String](10) var a=Array("zhangsan","lisi") 2、变长数组ArrayBuffer相当于java的ArrayList import scala.collection.mutable.ArrayBuffer var a 阅读全文
posted @ 2023-10-12 19:48 董振 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 一、基础知识 1、定义 函数名 参数 函数体 返回值age自动判断为int类型 2、只要函数体不包含递归语句,scala就可以推断出返回类型 3、如果是单行函数,可以省略{}。如 def sayHello(name: String ,age: Int) = printf("haha"+name) 4 阅读全文
posted @ 2023-10-12 15:08 董振 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 1、if语句:var a=20; var n= if(a>10) 40 else 1; 得到n=40 2、类型推断: if(a>40) 40 else "dsaf" 返回的是父类型Any if (a>10) 40 如果后面没有跟else语句,则默认返回Unit类型。相当于java中的void或nul 阅读全文
posted @ 2023-06-18 17:17 董振 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 1、val变量即常量,不可修改。var变量可修改。 类型声明:val a,b :String =null val a,b :Any=1 2、加强类:对基本类型使用了很多加强类,如StringOpt,在使用string类型时可以直接调用,如下图。 3、不能执行++,--,可以执行a+=1 4、使用函数 阅读全文
posted @ 2023-06-02 12:43 董振 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 1、垃圾是如何被发现的? 通过引用计数或者可达性分析,但是引用计数会有循环引用的问题,导致垃圾丢失。所以可达性分析更可靠,因此也就有了GCRoot。 2、那么GcRoot从哪里发起? 1)局部变量表中的变量 2)成员变量:静态变量,常量 3)本地方法栈中的变量 3、由此,垃圾回收算法引申而出: 1) 阅读全文
posted @ 2023-03-13 01:11 董振 阅读(17) 评论(0) 推荐(0) 编辑