原创 基於註解和XML的AOP實現

   實現AOP功能的框架主要有Spring AOP和AspectJ,前者只能對方法進行創建joincut,而後者不僅可以對方法,還可以對字段和構造器創建joincut。一、註解配置AOP。public class Test {

原创 idea文件頭註釋和方法註釋設置

1.文件頭註釋 /** * @Description: TODO * @author: zhang shang * @date:${DATE} ${TIME} */ 2.方法註釋 * * @Description:

原创 MappingException: Following super classes referenced in extends not found

錯誤場景: 同一個Spring boot項目,其他同事的項目都可以啓動,而我是新裝的環境,啓動報錯如下: To display the auto-configuration report re-run your application w

原创 java 常用加解密算法總結

細心的開發會發現,我們在下載文件時,會帶有密文,這是幹嘛的呢,是用來校驗下載的文件完整性和正確性,防止文件被篡改。 如下圖: 加解密測試代碼: package com; import java.io.File; import ja

原创 jar包衝突cmd解決

在項目根目錄,執行 mvn dependency:tree -Dverbose -Dincludes=:httpclient httpclient:是衝突的jar的artifactId

原创 成爲一名Java高級架構師到底需要學習什麼?

轉載:https://blog.csdn.net/andyliulin/article/details/77888272Java架構師,應該算是一些Java程序員們的一個職業目標了吧。很多碼農碼了五六年的代碼也沒能成爲架構師。那成爲Jav

原创 Spring中註解@Autowired與@Resource的依賴注入源碼分析

   上篇文章Spring中Xml配置Bean的依賴注入源碼分析,講的是通過XML方式配置Bean來實現依賴注入的,主要是通過BeanWrapperImpl.setPropertyValue方法,調用java類提供的Setter方法,利用

原创 Mybatis執行sql核心方法增刪改Executor.update,查詢ResultSetHandler.handleResultSets

1.Mybatis執行增刪改的底層核心接口是Executor.update,如果我們想對它進行攔截處理,則需要攔截此方法 2.Mybatis執行查詢的底層核心接口是ResultSetHandler.handleResultSets,如果我

原创 在java中使用groovy的SimpleTemplateEngine獲取佔位符${}的值

在實際項目中,也許有這樣的需求,在方法上配置切面Aspect來蒐集日誌,或者業務數據落庫。就需要配置佔位符來統一處理了,下面是demo,僅供參考學習。 main方法: public static void main(String[] a

原创 java編程式事務

1.java編程式事務    1.1  有返回值事務      @Autowired private TransactionTemplate transactionTemplate; return transactionTem

原创 ActiveMQ通過Topic發送異步消息

    ActiveMq是實現JMS消息服務接口的技術。處理消息的方式有基於Queue的一對一方式和基於Topic的一對多方式。   下面是通過Topic發送常見的異步消息學習記錄。    首先下載activemq安裝包,我是在windo

原创 java多線程同步之對象鎖區分

     多線程同步:多個線程共同協作正確的執行任務。     我們經常見到多線程同步關鍵字synchronized,那它到底是利用誰做同步鎖呢。     要想實現多線程同步,必須要保證同步鎖是共享唯一的。     synchronize

原创 DispatcherServlet源碼分析

       首先,我們知道DispatcherServlet是前端控制器,是用來處理請求的,同時他也是一個Servlet,在初始化時,也是做了相關工作的。在Servlet調用init(),方法方法是,會回調DispatcherServl

原创 YAML的loadAs,dump讀寫

1.test.yml --- friends: - 1111 - 2222 - 3333 age: 17 username: {firstname: 'zhang', lastname: 'shan'} 2.

原创 idea創建webapp項目

idea創建一個webapp項目這裏要添加參數:archetypeCatalog=internal,否則,生成的是個空項目。解決方案:快捷鍵ctrl+alt+s,打開settings對話框,搜索“runner”,添加VM參數:-Dmave