騰訊后臺開發 一面

一、手撕

合并升序鏈表? ? ?合并兩個排序的鏈表_牛客題霸_牛客網

順時針翻轉矩陣??順時針旋轉矩陣_牛客題霸_牛客網

二、八股

1、靜態變量和實例變量

public class House {public static String buildDate = "2024-10-27"; // 靜態變量public String color; // 實例變量public House(String color) {this.color = color; // 初始化實例變量}public static void main(String[] args) {House house1 = new House("red");House house2 = new House("blue");System.out.println(House.buildDate); // 通過類名訪問靜態變量System.out.println(house1.color); // 通過對象訪問實例變量}
}

2、jvm垃圾回收算法

JAVA基礎-2-CSDN博客

3、Linux如何顯示正在進行的程序指令

ps

ps aux:顯示所有進程的詳細信息(用戶、CPU、內存占用等)。

ps -ef | grep <進程名>:快速查找特定進程。

top

實時顯示系統進程,按?CPU/Memory?排序,默認每3秒刷新一次。

strace

跟蹤進程的系統調用,如?strace -p <PID>?查看指定進程的指令。

lsof

顯示進程打開的文件和網絡連接,如?lsof -i :<端口>?查看端口占用情況。

4、MySQL的索引

MySQL索引詳解 | JavaGuide

按照數據結構維度劃分:

  • BTree 索引:MySQL 里默認和最常用的索引類型。只有葉子節點存儲 value,非葉子節點只有指針和 key。存儲引擎 MyISAM 和 InnoDB 實現 BTree 索引都是使用 B+Tree,但二者實現方式不一樣。
  • 哈希索引:類似鍵值對的形式,一次即可定位。
  • RTree 索引:一般不會使用,僅支持 geometry 數據類型,優勢在于范圍查找,效率較低,通常使用搜索引擎如 ElasticSearch 代替。
  • 全文索引:對文本的內容進行分詞,進行搜索。目前只有 CHARVARCHARTEXT 列上可以創建全文索引。一般不會使用,效率較低,通常使用搜索引擎如 ElasticSearch 代替。

按照底層存儲方式角度劃分:

  • 聚簇索引:索引結構和數據一起存放的索引,InnoDB 中的主鍵索引就屬于聚簇索引。
  • 非聚簇索引:索引結構和數據分開存放的索引,二級索引(輔助索引)就屬于非聚簇索引。MySQL 的 MyISAM 引擎,不管主鍵還是非主鍵,使用的都是非聚簇索引。

按照應用維度劃分:

  • 主鍵索引:加速查詢 + 列值唯一(不可以有 NULL)+ 表中只有一個。
  • 普通索引:僅加速查詢。
  • 唯一索引:加速查詢 + 列值唯一(可以有 NULL)。
  • 覆蓋索引:一個索引包含(或者說覆蓋)所有需要查詢的字段的值。
  • 聯合索引:多列值組成一個索引,專門用于組合搜索,其效率大于索引合并。
  • 全文索引:對文本的內容進行分詞,進行搜索。目前只有 CHARVARCHARTEXT 列上可以創建全文索引。一般不會使用,效率較低,通常使用搜索引擎如 ElasticSearch 代替。
  • 前綴索引:對文本的前幾個字符創建索引,相比普通索引建立的數據更小,因為只取前幾個字符。

5、主從同步有哪幾種

  1. 異步復制(Asynchronous)

    • 原理:主庫不等待從庫確認,直接提交事務。
    • 優缺點:性能高,但可能丟失數據。
  2. 半同步復制(Semi-Synchronous)

    • 原理:主庫等待至少一個從庫確認后再提交。
    • 優缺點:平衡性能與數據一致性,減少數據丟失風險。
  3. 全同步復制(Fully Synchronous)

    • 原理:主庫等待所有從庫確認后才提交。
    • 優缺點:數據零丟失,但延遲高,性能差。

6、長連接和短連接

7、SQL注入

  1. 動態SQL的構造方式
    應用程序在處理用戶輸入時,直接將輸入內容拼接到SQL語句中,形成動態SQL查詢。例如:

    SELECT * FROM users WHERE username = '輸入的用戶名' AND password = '輸入的密碼';

    如果用戶輸入未經過濾或轉義,攻擊者可以插入惡意SQL代碼,改變查詢邏輯。

  2. 輸入未過濾或驗證
    程序員未對用戶輸入的數據進行嚴格的校驗和轉義,導致惡意代碼能直接拼接到SQL語句中。

  3. 攻擊者構造惡意輸入
    攻擊者通過輸入特殊字符(如單引號'、分號;、注釋符--等)或邏輯表達式,閉合原SQL語句并注入新的SQL命令。惡意輸入會破壞原SQL語句的邏輯結構,執行攻擊者意圖的操作,例如:繞過身份驗證,獲取敏感數據,刪除或篡改數據,執行系統命令


    例如:

正常登錄流程
用戶輸入用戶名admin和密碼123,生成的SQL語句為:

SELECT * FROM users WHERE username = 'admin' AND password = '123';

攻擊者輸入惡意代碼
攻擊者在密碼字段輸入:1' OR '1'='1,則拼接后的SQL語句變為:

SELECT * FROM users WHERE username = 'admin' AND password = '1' OR '1'='1';

單引號'閉合原密碼字段的值。

OR '1'='1'始終為真,使得條件成立,無需正確密碼即可登錄。

執行結果
數據庫返回用戶名為admin的第一條記錄,攻擊者成功繞過登錄驗證。


防御關鍵點

?參數化查詢(預編譯語句)

  • 核心原理:將用戶輸入作為參數傳遞,而非直接拼接到SQL語句中,確保輸入數據不會被解釋為SQL代碼。
  • 實現方式
    • 使用PreparedStatement等API
      String sql = "SELECT * FROM orders WHERE user_id = ?";
      PreparedStatement pstmt = connection.prepareStatement(sql);
      pstmt.setString(1, id); // 自動處理引號和特殊字符
  • 優勢:徹底阻斷惡意SQL的注入路徑,是防御SQL注入的最有效方法

8、安全XXS

這篇文章寫的很清楚

XSS攻擊詳解_xxs原理-CSDN博客

總結

對于安全的知識不是那么了解,還需要繼續學習

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/78798.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/78798.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/78798.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Unity 動畫

Apply Root Motion 勾選的話就會使用動畫片段自帶的位移 Update Mode &#xff08;動畫重新計算骨骼位置轉向縮放的數值&#xff09;&#xff1a; Normal &#xff1a; 隨Update走&#xff0c;每次Update都計算Animate Physics &#xff1a;與 fixed Update() 同步&#xff0…

NDT和ICP構建點云地圖 |【點云建圖、Ubuntu、ROS】

### 本博客記錄學習NDT&#xff0c;ICP構建點云地圖的實驗過程&#xff0c;參考的以下兩篇博客&#xff1a; 無人駕駛汽車系統入門&#xff08;十三&#xff09;——正態分布變換&#xff08;NDT&#xff09;配準與無人車定位_settransformationepsilon-CSDN博客 PCL中點云配…

基于HTML + jQuery + Bootstrap 4實現(Web)地鐵票價信息生成系統

地鐵票價信息表生成系統 1. 需求分析 1.1 背景 地鐵已經成為大多數人出行的首選,北京地鐵有多條運營線路, 截至 2019 年 12 月,北京市軌道交通路網運營線路達 23 條、總里程 699.3 公里、車站 405 座。2019 年,北京地鐵年乘客量達到 45.3 億人次,日均客流為 1241.1 萬人次…

EtherNet/IP 轉 Modbus 協議網關

一、產品概述 1.1 產品用途 SG-EIP-MOD-210 網關可以實現將 Modbus 接口設備連接到 EtherNet/IP 網 絡中。用戶不需要了解具體的 Modbus 和 EtherNet/IP 協議即可實現將 Modbus 設 備掛載到 EtherNet/IP 接口的 PLC 上&#xff0c;并和 Modbus 設備進行數…

PostgreSQL:邏輯復制與物理復制

&#x1f9d1; 博主簡介&#xff1a;CSDN博客專家&#xff0c;歷代文學網&#xff08;PC端可以訪問&#xff1a;https://literature.sinhy.com/#/?__c1000&#xff0c;移動端可微信小程序搜索“歷代文學”&#xff09;總架構師&#xff0c;15年工作經驗&#xff0c;精通Java編…

騰訊云COS與ZKmall 開源商城的存儲集成方案

ZKmall 開源商城與騰訊云對象存儲&#xff08;COS&#xff09;的集成&#xff0c;可通過云端資源托管、自動化數據同步、高性能存儲架構實現本地存儲負載降低與訪問效率提升。以下是基于搜索結果的集成路徑與核心優化點&#xff1a; 一、存儲架構升級&#xff1a;本地與云端協同…

HTML — 浮動

浮動 HTML浮動&#xff08;Float&#xff09;是一種CSS布局技術&#xff0c;通過float: left或float: right使元素脫離常規文檔流并向左/右對齊&#xff0c;常用于圖文混排或橫向排列內容。浮動元素會緊貼父容器或相鄰浮動元素的邊緣&#xff0c;但脫離文檔流后可能導致父容器高…

【軟件測試學習day1】軟件測試概念

前言 本篇學習&#xff0c;測試相關基礎概念、常見的開發模型測和測試模型&#xff0c;搞懂4個問題&#xff1a; 什么是需求什么是 bug什么是測試用例開發模型和測試模型 目錄 1. 什么是需求 1.1 為什么要有需求 1.2 測試人員眼里的需求 1.3 如何深入了解需求 2. 測試用例…

Flutter常用組件實踐

Flutter常用組件實踐 1、MaterialApp 和 Center(組件居中)2、Scaffold3、Container(容器)4、BoxDecoration(裝飾器)5、Column(縱向布局)及Icon(圖標)6、Column/Row(橫向/橫向布局)+CloseButton/BackButton/IconButton(簡單按鈕)7、Expanded和Flexible8、Stack和Po…

劉火良FreeRTOS內核實現與應用學習之7——任務延時列表

在《劉火良FreeRTOS內核實現與應用學習之6——多優先級》的基礎上&#xff1a;關鍵是添加了全局變量&#xff1a;xNextTaskUnblockTime &#xff0c;與延時列表&#xff08;xDelayedTaskList1、xDelayedTaskList2&#xff09;來高效率的實現延時。 以前需要在掃描就緒列表中所…

圖像預處理-插值方法

一.插值方法 當我們對圖像進行縮放或旋轉等操作時&#xff0c;需要在新的像素位置上計算出對應的像素值。 而插值算法的作用就是根據已知的像素值來推測未知位置的像素值。 1.1 最近鄰插值 CV2.INTER_NEAREST 其為 warpAffine() 函數的參數 flags 的其一&#xff0c;表示最近…

智能配電保護:公共建筑安全的新 “防火墻”

安科瑞劉鴻鵬 摘要 隨著城市建筑體量的不斷增長和電氣設備的廣泛使用&#xff0c;現代建筑大樓的用電安全問題日益突出。傳統配電方式面臨監測盲區多、響應滯后、火災隱患難發現等問題。為提升建筑電氣系統的安全性和智能化水平&#xff0c;智慧用電系統應運而生。本文結合安…

如何解決DDoS攻擊問題 ?—專業解決方案深度分析

本文深入解析DDoS攻擊面臨的挑戰與解決策略&#xff0c;提供了一系列防御技術和實踐建議&#xff0c;幫助企業加強其網絡安全架構&#xff0c;有效防御DDoS攻擊。從攻擊的識別、防范措施到應急響應&#xff0c;為網絡安全工作者提供了詳細的操作指引。 DDoS攻擊概覽&#xff1a…

構建靈活的接口抽象層:支持多種后端數據存取的實戰指南

構建靈活的接口抽象層:支持多種后端數據存取的實戰指南 引言 在現代軟件開發中,數據存取成為業務邏輯的核心組成部分。然而,由于后端數據存儲方式的多樣性(如關系型數據庫、NoSQL數據庫和文件存儲),如何設計一套能夠適配多種后端數據存取的接口抽象層,成為技術團隊關注…

OpenCV 圖形API(23)圖像和通道合成

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 1.算法描述 在OpenCV的G-API模塊中&#xff0c;圖像和通道合成&#xff08;composition&#xff09;函數允許用戶對圖像進行復雜的操作&#xff0c;如合并…

帝國cms導航淘客新聞下載多功能網站源碼 二次元風格自適應附教程

一、本模板使用帝國cms7.5 utf8版本&#xff0c;二次元導航新聞下載工具淘客自適應響應式帝國cms模板。 1、網站后臺有3個系統模型&#xff0c;新聞系統模型&#xff0c;下載系統模型&#xff0c;導航系統模型&#xff0c;商城系統模型&#xff0c;可以根據自己的需求不同&…

本地部署大模型(ollama模式)

分享記錄一下本地部署大模型步驟。 大模型應用部署可以選擇 ollama 或者 LM Studio。本文介紹ollama本地部署 ollama官網為&#xff1a;https://ollama.com/ 進入官網&#xff0c;下載ollama。 ollama是一個模型管理工具和平臺&#xff0c;它提供了很多國內外常見的模型&…

C# virtual 和 abstract 詳解

簡介 在 C# 中&#xff0c;virtual 和 abstract 關鍵字都用于面向對象編程中的繼承和多態&#xff0c;它們主要用于方法、屬性和事件的定義&#xff0c;但在用法上存在一些重要的區別。 virtual 關鍵字 virtual 表示可重寫的方法&#xff0c;但可以提供默認實現&#xff0c;…

自動駕駛的數據集以及yolov8和yolop

項目背景 網絡全部是分割了沒有檢測。 自動駕駛的車道線和可行駛區域在數據集中的表示 自動駕駛系統中的車道線和可行駛區域的表示方式主要有以下幾種&#xff1a; 基于幾何模型&#xff1a;使用幾何模型來描述車道線和可行駛區域的形狀和位置&#xff0c;例如直線、曲線、多…

Oracle DROP、TRUNCATE 和 DELETE 原理

在 Oracle 11g 中&#xff0c;DROP、TRUNCATE 和 DELETE 是三種不同的數據清理操作&#xff0c;它們的底層原理和適用場景有顯著差異 1. DELETE 的原理 類型&#xff1a;DML&#xff08;數據操作語言&#xff09; 功能&#xff1a;逐行刪除表中符合條件的數據&#xff0c;保留…