知识点查漏补缺

成员变量和类变量

类变量
在java中,类变量(也叫静态变量)是类中独立于方法之外的变量,用static 修饰。(static表示“全局的”、“静态的”,用来修饰成员变量和成员方法,或静态代码块(静态代码块独立于类成员,jvm加载类时会执行静态代码块,每个代码块只执行一次,按顺序执行))。

成员变量
就是类中的属性。当new对象的时候,每个bai对象都有一份属性。一个对象中的属性就是成员变量。在类内部,任何地方都可以访问成员变量。类变量是被static修饰的属性。作用范围在类变量定义之后。

成员变量和类变量的区别:
1、两个变量的生命周期不同
成员变量随着对象的创建而存在,随着对象的回收而释放。
静态变量随着类的加载而存在,随着类的消失而消失。
2、调用方式不同
成员变量只能被对象调用。
静态变量可以被对象调用,还可以被类名调用。
3、数据存储位置不同
成员变量存储在堆内存的对象中,所以也叫对象的特有数据。
静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。

单例设计模式

核心就是将类的构造方法私有化,之后在类的内部产生实例化对象,并通过类名引用类的静态方法(static)返回实例化对象的引用。

ResultSet

表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。
ResultSet 对象具有指向其当前数据行的光标。最初,光标被置于第一行之前。next 方法将光标移动到下一行;因为该方法在 ResultSet 对象没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。

数组和数组集合的区别:

数组是数据类型,数组集合是工具类
集合以类的形式存在,具有封装、继承、多态等类的特性,通过简单的方法和属性调用即可实现各种复杂操作,大大提高软件的开发效率。

webapp

webapp一般会被设置为JavaWeb的根目录, 存放html,CSS,JS等页面文件调用很方便, 放其他位置需要加路径

eg: 读 input 从硬盘读到内存 写 output 从内存写进硬盘

InputStream(字节输入流), 但是此类是抽象类 子类FileInputStream 读流 读取文件内容到内存中 输入
OutputStream(字节输出流),但是此类是抽象类 子类FileOutputStream 写流 内存中内容写进文件里 输出

@RequestMapping

@RequestMapping(“/user”): 浏览器URL路径或表单action路径 --> 控制器处理器方法

val()

val()
设置和获取有value属性的标签的value属性值
有value属性值的元素【大多数单标签都有】:input【按钮,文本框等】、option等
没有value属性值的元素【大多数双标签没有】:div、hn、span、a、p等

省市二级联动:

data= 传入参数

类型=容器

分页查询

controller直接接收前端传来的currentPage和pageSize参数(规范要求),结合分页sql完成分页
DepartmentQuery存在的意义就是为了后面的分页SQL

	//查询类DepartmentQuery
    private Integer currentPage = 1;				/*当前页*/
    private Integer pageSize = 10;					/*每页大小*/
    public Integer getStart() {						/*计算limit  第一个参数*/
        return (this.currentPage-1) * this.pageSize;
    }

	//controller
    @PostMapping   // http://localhost:8080/department  post
    public PageList<Department> queryPage(@RequestBody DepartmentQuery departmentQuery){
        return departmentService.queryPage(departmentQuery);
    }

	//service接口
	PageList<Department> queryPage(DepartmentQuery departmentQuery);

	//service实现类
    public PageList<Department> queryPage(DepartmentQuery departmentQuery) {
        Integer total = departmentMapper.queryCount(departmentQuery);		//查询总条数
        List<Department> rows = departmentMapper.queryData(departmentQuery);//查询分页数据
        return new PageList<>(total,rows);
    }

	//mapper接口
	List<Department> queryData(DepartmentQuery departmentQuery);
	//mapper.xml里的sql
	<select id="queryData" resultType="Department" parameterType="DepartmentQuery">
        SELECT * FROM t_department  limit #{start},#{pageSize}
    </select>

scope

scope:拿到当前行的元素

Vue中的export default 和带返回值的data()以及@符号的作用

为什么vue组件有的写成export default,有什么用?
1.声明一个vue,相当于 new Vue({})
2.达到可复用的目的,也就是说,export default 相当于导出当前vue组件,在其它引入当前组件时可以使用当前组件中的方法和变量

data()是什么意思?
起到局部变量的作用。也就是说,这个data()中return的变量和方法只限于当前声明此data()的组件使用。如果全局vue有个变量叫 user,当前组件也有个变量叫user,那vue里面的到底用哪个?所以data()就起到了变量隔离的一种效果。

在引入组件时路径上加上@符作用是什么?
import model from “@/common/model”;
@ 等价于 /src 这个目录,避免写麻烦又易错的相对路径

rows:行数据

redis

存放对象,需要序列化 Serializable
下载安装启动,配置依赖,生产者连接通道队列,消费者监听执行
五种常用发布订阅模式

queryCount queryData

queryCount		高级查询总条数		whereSql
queryData	高级查询当前页数数据		resultMap	whereSql

打开页面 -> 钩子函数触发获取数据 -> 带分页参数发送axios请求从后端拿数据

span和div功能区别

div是一个块级元素,它包含的元素会自动换行。而span是行内元素,在它的前后不会换行

data:vue的属性 return data:自定义模板的函数

BaseQuery

BaseQuery	接收前台分页参数 (当前页 页面长度 高级查询关键字)

PageList & total

PageList	返回分页查询后的结果数据	
total : 查询后的数据总条数	rows:分页查询当前页数据 加wheresql即加入高级查询条件

{ } @pathvariable:

打开springboot启动的专属窗口:

 view--->tool window -->services --->选择springboot类型

OSS

OSS(Open Storage Service) 	开放存储服务(OSS)
引入依赖	支持	配置参数		注解启动		代码实现		测试
工具类: 造对象	利用此对象来调用此类方法完成功能
开发人员
测试人员(至少1个)
---- 测试:
	1.开发先自测
	2.自测没问题后,会将代码提交----项目经理会审核代码----同意代码合并----进入git中央仓库
		BUG管理的系统---给测试人员使用
	3.测试人员会通过 jenkins 重新构建测试环境的代码
	4.在测试的环境,针对开发提交的功能,进行测试
	5.如果测试出现了问题,会将问题提交到 BUG管理系统
	6.提交后,开发人员登录BUG系统,就可查看自己名下的所有BUG
	7.开发人员修复BUG,BUG修复后,在BUG上提交修复后的BUG工单
	8.测试人员会进行回测,回测无误,测试人员关闭当前工单,发现新的问题,他会再提交一个新的BUG工单
	
	-------
	项目上线之前,测试人员会进行一次全量测试,测试整个系统所有功能
		有的还会进行 压力测试----测试系统并发承载量
es 一年一台服务器几千块 一般走几百万条数据

idea提交撤销

git   show history	idea reset current branch to here

视图

视图就是展示给用户看的结果。可以是很多形式,例如:html、JSP、excel表单、Word文档、PDF文档、JSON数据、freemarker模板视图等等。
https://www.cnblogs.com/lichangyun/p/8524862.html

SpringMVC 的 Controller 可以返回各种各样的视图。比如 JSP, JSON, Velocity, FreeMarker, XML, PDF, Excel, 还有Html字符流 等等
https://www.cnblogs.com/cmfwm/p/7660563.html

entity、bo、vo、po、dto、pojo如何理解和区分?

分层领域模型规约
DO(Data Object):与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。
DTO(Data Transfer Object):数据传输对象, Service 或 Manager 向外传输的对象。
BO(Business Object) :业务对象。由 Service 层输出的封装业务逻辑的对象。
AO(Application Object) :应用对象。在 Web 层与 Service 层之间抽象的复用对象模型,极为贴近展示层,复用度不高。
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。
Query :数据查询对象,各层接收上层的查询请求。注意超过 2 个参数的查询封装,禁止使用 Map类来传输。”
手册上面没有提到的Pojo,我的理解是Entity、Vo、Dto、Query,这样一系列 对象的总称。

领域模型命名规约
1) 数据对象:xxxDO,xxx 即为数据表名。
2) 数据传输对象:xxxDTO,xxx 为业务领域相关的名称。
3) 展示对象:xxxVO,xxx 一般为网页名称。
4) POJO 是 DO/DTO/BO/VO 的统称,禁止命名成 xxxPOJO。
main方法主要是测试方法,其他静态方法为了好调用才加static,
静态的方法可以被对象和类调用,
构造函数在一个类实例化时,就会自动被调用
增删改查,数据流转
数据由前台传入,框架接收,数据库或者业务层返回

Git

Git:客户端        TortoiseGit:图形化界面        先装git,再装TortoiseGit,最后重启

git gui here 直译过来的意思就是 (GUI配置) 克隆git库,git bash here 直译过来就是 用BASH设置克隆git库操作
Git GUI here是Git软件的图形化操作入口,Git Bash here是Git软件的命令行操作入口。

如何查看IP

1.win+R输入cmd
2.在屏幕输入ipconfig 或ipconfig/all

StylusStudioXML

StylusStudioXML中文版是一款非常专业的XML编辑器,新版本提供了多个新功能,可以帮助用户更好的完成基于XML文档和XML模式的设计报告

XSLT ,XQuery

XSLT 指 XSL 转换。T的含义代表英语中的“转换”
在此教程中,你将学习如何使用 XSLT 将 XML 文档转换为其他文档,比如 XHTML。 

XSLT 可扩展样式表转换语言(Extensible Stylesheet Language Transformations)是一种样式转换标记语言,可以将XML数据档转换为另外的XML或其它格式,如HTML网页,纯文字。XSLT最末的T字母表示英语中的“转换”(transformation)。它是XSL规范中的一部分,目前最新的建议版本为XSL 3.0。
以XSLT进行格式转换并不会变动原始的数据文件;而会以现有数据产生新的内容格式。作为输入的通常是XML数据档,或者由支持XQuery和XPath的数据模型处理器,其它来源的数据也能被转换,例如关系数据库表格或地理信息系统。
XSL规范的另外一部分是XSLF(Formatting Objects,代表格式化对象),又称XSL-FO或XSLFO,目前已逐渐被CSS 3.0所取代。XSLT是一种图灵完备的语言,它可以指定计算机能运行的任何计算。

XQuery = XML Query,是W3C所制定的一套标准,用来从类XML(标准通用标记语言的子集)文档中提取信息,类XML文档可以理解成一切符合XML数据模型和接口的实体,他们可能是文件或RDBMS。
XQuery 相对于 XML 的关系,等同于 SQL 相对于数据库表的关系。
XQuery 被设计用来查询 XML 数据 - 不仅仅限于 XML 文件,还包括任何可以 XML 形态呈现的数据,包括数据库。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Java中invoke()方法清晰说明

1、invoke就是调用类中的方法,最简单的用法是可以把方法参数化invoke(class, method)。
2、比如你Test类里有一系列名字相似的方法setValue1、setValue2等等。可以把方法名存进数组v[],然后循环里invoke(test,v[i]),就顺序调用了全部setValue。

简单来说,Method的invoke()方法和正常调用方法再虚拟机的实现中最终是调用的同一个实现

animalMethod.invoke(cat)中,由于Cat是Animal的子类,按照多态的特性,子类调用父类的的方法,方法执行时会动态链接到子类的实现方法上。——可以理解为通过父类方法指针调用,如果指向子类对象最终会执行子类对象的重写方法

代码中,Cat类覆盖了父类Animal的print()方法, 然后通过反射分别获取print()的Method对象。最后分别用Cat和Animal的实例对象去执行print()方法。其中animalMethod.invoke(animal)和catMethod.invoke(cat),示例对象的真实类型和Method的声明Classs是相同的,按照预期打印结果;animalMethod.invoke(cat)中,由于Cat是Animal的子类,按照多态的特性,子类调用父类的的方法,方法执行时会动态链接到子类的实现方法上。因此,这里会调用Cat.print()方法;而catMethod.invoke(animal)中,传入的参数类型Animal是父类,却期望调用子类Cat的方法

引用数据类型

https://zhidao.baidu.com/question/500894341119310364.html?qbl=relate_question_1&word=%D2%FD%D3%C3%CA%FD%BE%DD%C0%E0%D0%CD%B0%FC%BA%AC%C4%C4%D0%A9 
https://zhidao.baidu.com/question/1181962812142111139.html?qbl=relate_question_3&word=%D2%FD%D3%C3%CA%FD%BE%DD%C0%E0%D0%CD%B0%FC%BA%AC%C4%C4%D0%A9
https://blog.csdn.net/baidu_31657889/article/details/51939332

字符串类型

https://blog.csdn.net/u013759354/article/details/88849815
https://zhidao.baidu.com/question/1824019793370022348.html
https://www.cnblogs.com/woftlcj/p/9987682.html

lambda表达式:

绕过实现类,快速且简便地运用函数式接口

Java库和外部库

java 库是 java 运行环境自带的库, 类似你自己会的技能, 例如走路,唱歌等. 随时随地可以发动技能
外部库是别人为 java 写的库, java 可以调用. 一般是 jar 文件或单个 class 文件. 类似别人的技能. 你会的再多也不可能把所有技能学会. 这样当你需要时可以找一个会这个技能的人来帮你完成.

this:

1.解决局部变量和成员变量的二义性,->防止就近原则影响赋值给成员变量
2.本类中构造方法之间的相互调用,但是必须是构造方法内的第一句
3.作为返回值返回 : this持有对象地址,表示该类的一个对象即是一个数据
4.作为参数传递

内网穿透

开发阶段让我们应用能够被外网访问。
https://blog.csdn.net/weixin_42063820/article/details/124563983

java中为什么要有基本数据类型

https://blog.csdn.net/Elsa15/article/details/107369710

Java中new和不new的区别

基本数据类型不需要new而直接定义,而引用数据类型在定义实例时需要new实例对象。
不用new开辟新的内存,这样就不占内存。程序的运行效率提高了。用new和不用new实现的功能是一样的。
java的八种基本类型不用new的,也不能new,因为基本类型是直接在栈内存生成的,直接赋值。

常量池知识点

https://blog.csdn.net/qq_45684867/article/details/121314607?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-121314607-blog-123150212.pc_relevant_3mothn_strategy_and_data_recovery&spm=1001.2101.3001.4242.1&utm_relevant_index=2

TomCat 启动

在这里插入图片描述
在这里插入图片描述

maven

Maven主目录:填写maven软件地址
用户设置文件:填写setting.xml地址,可自定义放的位置,文件里指定本地仓库地址
本地存储库:本地仓库地址,不用手动填写,用户设置文件填好后会自动解析得出

https://blog.csdn.net/ck00888/article/details/120169090

阅读源码

builder,factory,s 下面的子类 simple等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值