
Java面试
文章平均质量分 87
墨末..
努力去做的事,终将会实现。
展开
-
MongoDB
数据库可以看成是一个电子化的文件柜,用户可以对文件中的数据运行新增、检索、更新、删除等操作。数据库是一个所有集合的容器,在文件系统中每一个数据库都有一个相关的物理文件。集合就是一组 MongoDB 文档。它相当于关系型数据库(RDBMS)中的表这种概念。集合位于单独的一个数据库中。一个集合内的多个文档可以有多个不同的字段。一般来说,集合中的文档都有着相同或相关的目的。文档由一组key value组成。文档是动态模式,这意味着同一集合里的文档不需要有相同的字段和结构。在关系型。原创 2023-07-30 14:04:29 · 261 阅读 · 0 评论 -
Kafka
Kafka集群中,一个kafka实例被称为一个代理(Broker)节点。消息的生产者被称为Producer。Producer将消息发送到集群指定的主题中存储,同时也自定义算法决定将消息记录发送到哪个分区?消息的消费者,从kafka集群中指定的主题读取消息。主题,kafka通过不同的主题却分不同的业务类型的消息记录。每一个Topic可以有一个或者多个分区(Partition)。每个主题在创建时会要求制定它的副本数(默认1)。实际写入到kafka集群并且可以被消费者读取的数据。原创 2023-07-30 13:59:22 · 158 阅读 · 0 评论 -
Nginx
Nginx是一个高性能的HTTP和反向代理服务器。同时也是一个 IMAP/POP3/SMTP 代理服务器。 官方网站:http://nginx.org。处理静态文件,索引文件以及自动索引;打开文件描述符缓冲. 无缓存的反向代理加速,简单的负载均衡和容错. FastCGI,简单的负载均衡和容错.模块化的结构。包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等filter。如果由 FastCGI 或其它代理服务器处理单页中存在的多个 SSI,则原创 2023-07-30 13:56:20 · 171 阅读 · 0 评论 -
Maven
Maven的坐标通过groupId,artifactId,version唯一标志一个构件。groupId通常为公司或组织名字,artifactId通常为项目名称,versionId为版本号。原创 2023-07-30 13:54:09 · 120 阅读 · 0 评论 -
Web安全
CSRF 英文全称是 Cross-site request forgery,又称为“跨站请求伪造”。顾名思义,CSRF 攻击就是黑客引诱用户打开黑客的网站,利用用户的登陆状态发起跨站请求。降维解释:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证, 达到冒充用户对被攻击的网站执行某项操作的目的。反弹技术就是利用反弹服务器实现攻击的技术。原创 2023-07-30 13:50:20 · 170 阅读 · 0 评论 -
Git面试题
你应该说明 “工作目录” 和 “裸存储库” 之间的区别。Git 中的 “裸” 存储库只包含版本控制信息而没有工作文件(没有工作树),并且它不包含特殊的 .git 子目录。相反,它直接在主目录本身包含 .git 子目录中的所有内容,其中工作目录包括:一个 .git 子目录,其中包含你的仓库所有相关的 Git 修订历史记录。工作树,或签出的项目文件的副本。首先应该解释 git stash 的必要性。原创 2022-12-01 21:30:11 · 571 阅读 · 0 评论 -
Servlet
Servlet是服务器端的程序JSP是服务器页面程序JSP本质上就是一个Servlet,在访问jsp时,在服务器端会将jsp先转换成servlet,再将生产的servlet的结果响应给浏览器。jsp是html页面中内嵌Java代码,侧重页面显示;Servlet是中书写Java代码,侧重逻辑控制;服务端包含(SSI)是一种简单的解释型服务端脚本语言,大多数时候仅用在Web上,用servlet标签嵌入进来。SSI最常用的场景把一个或多个文件包含到Web服务器的一个Web页面中。原创 2022-08-24 19:03:14 · 472 阅读 · 0 评论 -
SpringBoot
YAML(/ˈjæməl/,尾音类似camel骆驼)是一个可读性高,用来表达数据序列化的格式。YAML参考了其他多种语言,包括:C语言、Python、Perl。更具有结构性。一般来说我们从开发到生产,经过开发(dev)、测试(test)、上线(prod)。不同的时刻我们会用不同的配置。Spring Profiles 允许用户根据配置文件(dev,test,prod 等)来注册 bean。它们可以让我们自己选择什么时候用什么配置。原创 2022-08-24 18:59:08 · 178 阅读 · 0 评论 -
Java基础
公共静态不可变,即publicstaticfinal修饰的变量就是我们所说的编译期常量.这里的public可选的.实际上这些变量在编译时会被替换掉,因为编译器明确的能推断出这些变量的值(如果你熟悉C++,那么这里就相当于宏替换).编译器常量虽然能够提升性能,但是也存在一定问题你使用了一个内部的或第三方库中的公有编译时常量,但是这个值后面被其他人改变了,但是你的客户端没有重新编译,这意味着你仍然在使用被修改之前的常量值....原创 2022-07-16 08:46:10 · 1460 阅读 · 0 评论 -
Linux
是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年第一次释出,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。系统内存管理软件程序管理硬件设备管理文件系统管理控制台终端、图形化终端GNU bash shell能提供对linux 系统的交互式访问。作为普通程序运行,通常在用户登陆终端时启动。登录时系统启动的she原创 2022-07-11 19:00:54 · 247 阅读 · 0 评论 -
Mysql(二)
myisam引擎是5.1版本之前的默认引擎,支持全文检索、压缩、空间函数等,但是不支持事务和行级锁,所以一般用于有大量查询少量插入的场景来使用,而且myisam不支持外键,并且索引和数据是分开存储的。innodb是基于聚簇索引建立的,和myisam相反它支持事务、外键,并且通过MVCC来支持高并发,索引和数据存储在一起。索引按照数据结构来说主要包含 B + 树和 Hash 索引。假设我们有张表,结构如下:create table user(id int(11) not null,age int(11)原创 2022-07-11 18:29:38 · 609 阅读 · 0 评论 -
Mysql(一)
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。比如看建表的语法:mysql> ? create tableName: ‘CREATE TABLE’Description:Syntax:CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name(create_definition,…)[table_options][partition_options]CREATE [TEMP原创 2022-07-11 18:19:32 · 440 阅读 · 0 评论 -
Java面试——Mybatis
MyBatis 是一款优秀的支持自定义 SQL 查询、存储过程和高级映射的持久层框架,消除了 几乎所有的 JDBC 代码和参数的手动设置以及结果集的检索 。 MyBatis 可以使用 XML 或注解进 行配置和映射, MyBatis 通过将参数映射到配置的 SQL 形成最终执行的 SQL 语句 ,最后将执行 SQL 的结果映射成 Java对象返回。Hibernate建立在POJO和数据库表模型的直接映射关系上。通过xml或注解即可和数据库表做映射。通过pojo直接可以操作数据库的数据。它提供的是全表的映射模原创 2022-06-30 08:36:15 · 354 阅读 · 0 评论 -
Java面试——Zookeeper
ZooKeeper 是一个开源的分布式协调服务。它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。ZooKeeper 的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。Zookeeper 保证了如下分布式一致性特性:(1)顺序一致性(2)原子性(3)单一视图(4)可靠性(5)实时性(最终一致性)客户端的读请求可以原创 2022-06-28 19:39:30 · 310 阅读 · 0 评论