原创 字符串連接工具類

JoinType package org.eve.framework.string.join; /** * 連接類型 * * @author xiayc * @date 2018/9/7 */ public enum Jo

原创 【強制】表單、 AJAX 提交必須執行 CSRF 安全過濾。

  CSRF(Cross - site request forgery) 跨站請求僞造是一類常見編程漏洞。對於存在 CSRF 漏洞的應用/網站,攻擊者可以事先構造好 URL ,只要受害者用戶一訪問,後臺便在用戶   不知情情況下對數據庫中

原创 動態代理的注意點(一)

估計很多人都使用過動態代理,特別是處理事務時,動態代理是一個很好的解決方案,但是其中有一些注意點我們還是需要了解一下; 舉例 僞代碼如下: UserService { void a(){ this.b();

原创 ClassLoader的getResource和getResources

package org.eve.framework.nuwatest.resource; import java.io.IOException; import java.net.URL; import java.util.Enumera

原创 如何獲取Class的根路徑

package org.eve.framework.nuwatest.resource; /** * @author xiayc * @date 2018/9/6 */ public class ClassRootPath {

原创 單例模式的7種實現方式及分析

第一種 代碼 package com.xiayc.singleton; /** * 餓漢模式 * @author xyc * */ public class Hungry { private Hungry() {

原创 紅黑樹-旋轉

此篇博客我們討論紅黑樹的旋轉(左旋和右旋),爲了更好的理解旋轉,我們只關注紅黑樹中關於二叉查找樹部分的規則,而不關注紅黑樹中關於本身紅黑樹定義部分的規則。 二叉查找樹規則 規則一:若左子樹不空,則左子樹上所有結點的值均小於它的根結點的

原创 紅黑樹-起步

定義 說到紅黑樹(R-B Tree),首先要知道它是一顆二叉查找樹(二叉查找樹(Binary Search Tree),又稱二叉排序樹(Binary Sort Tree),亦稱二叉搜索樹,下文統稱爲二叉查找樹),其次才作爲一顆紅黑樹。所以

原创 紅黑樹-插入

前言 本篇博客我們說一說如何從無到有創建一顆紅黑樹,並在創建紅黑樹的過程中理解其構造原理。 紅黑樹規則 首先我們複習一下紅黑樹的五項規則,如下: - 規則一:每個節點或者是黑色,或者是紅色; - 規則二:根節點是黑色; - 規則三:

原创 Gson工具類

maven依賴 <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency>

原创 使用synchronized的注意點(補充)

在這篇博客https://blog.csdn.net/xyc_csdn/article/details/78159259中我提到了一些使用synchronized時的注意點,但是還是比較淺薄,特別通過最近的面試,認識到以前的總結還是有些

原创 多線程Object之wait、notify

代碼 package com.xiayc.waitnotify; import java.util.ArrayList; import java.util.List; /** * 1、wait、notify和notifyAll方法是

原创 自定義權限模塊3——後端代碼實現

本篇博客接着上篇博客自定義權限模塊2——自定義tld標籤,並在上篇博客項目的基礎上進行改造。在上篇博客中我們初步看到權限控制的效果,前端通過自定義標籤根據我們後端提供的權限值來選擇加載或不加載某些UI,但是後端的代碼還沒有完善,上篇博客

原创 synchronized鎖的重入問題

  我們知道通過synchronized關鍵字修飾的方法或代碼塊在同一時刻只能被一個線程訪問,還有一種就是鎖的重入問題,就是一個線程可以訪問多個被synchronized修飾的方法或代碼塊,代碼如下: 代碼 package com

原创 自定義權限模塊2——自定義tld標籤

本篇博客接着上篇博客自定義權限模塊1——SpringBoot支持JSP,並在上篇博客項目的基礎上進行改造。 目錄結構 LoginUserInfo.java package com.xyc.security.bo; impo