原创 JDK動態代理

jdk動態代理是java.lang.reflect.*包提供的方式,必須接住接口才能產生代理對象,所以需要先創建一個接口: public interface HelloWorld{ public void sayHelloWorld

原创 CGLIB動態代理

JDK動態代理必須提供接口才能使用,在一些不能提供接口的環境中無法使用JDK代理,這時候可以採用CGLIB實現動態代理,它的有優點是只需要一個非抽象類就可以實現動態代理。 真實類代碼如下: public class TestHel

原创 觀察者模式

觀察者模式又稱爲發佈訂閱模式,時對象的行爲模式。觀察者模式定義了一種一對多的依賴關係,讓多個觀察者對象同時監視着被觀察者的狀態,當被觀察者的狀態發生變化時,會通知所有的觀察者,並讓其主動更新自己。 函數y=x^2的圖像如下圖所示:

原创 JDK動態代理實現責任鏈模式

當一個對象在一條鏈上被多個攔截器攔截處理(攔截器也可以選擇不攔截它)時,把這種設計模式稱爲責任鏈模式,它用於一個對象在多個角色中傳遞的場景。 依據上一篇文章中創建的攔截器接口,創建三個攔截器對象 public class Inte

原创 解決MacOS安裝VirtualBox後創建虛擬機點擊啓動報錯Kernel driver not installed (rc=-1908)的問題

Mac Mojave安裝VirtualBox後,創建一個虛擬機,點擊啓動報錯: 解決方法:打開系統偏好設置->安全性與隱私,下方有個允許Oracle …的請求,點擊後面的允許按鈕,再次啓動虛擬機就可以正常啓動了。 點太快沒來得及

原创 解決macos安裝升級時報錯安裝所選更新時發生錯誤的問題

系統有更新,下載到一半時點了取消下載,然後再等有空的時候點擊安裝更新一直失敗: 解決方法爲:重新啓動Mac,並按住Command+R進入恢復模式,找到Terminal後輸入csrutil disable,然後重啓Mac,再次下載並

原创 sql查詢clob類型數據顯示具體內容

pl/sql查詢數據表時,有些字段是clob類型,但是查詢出來不會顯示爲具體內容,尤其是需要把結果導出到Excel中的時候,不是很方便,但是使用dbms_lob.substr()函數時可能會碰到個問題:字符串緩衝區太小。 在網上查找

原创 解決jsp中後臺傳值中文到前臺亂碼的問題

臨時要在一個jsp頁面使用到後臺傳過來的一個參數,想到中文可能會亂碼,所以一開始是這樣寫的: 1. 後臺java代碼傳值過程: this.setName(URLEncoder.encode("測試","UTF-8")); 2.前臺jsp

原创 解決“打開Excel文件時會同時打開一個名爲Sheet1的未保存空白工作簿”的問題

問題描述 在一次偶然的請款下,我發現在打開本機上的所有Excel文件時,都會自動打開一個名爲“Sheet1”的未保存的空白工作簿,雖然不影響原有工作簿的使用,但是每次都要手動關閉空白的工作簿,讓人很惱火。如果是打開Excel應用程序,卻

原创 解決Eclipse編輯器保存(Ctrl+S)時卡頓問題

Eclipse開發項目時,發現越到後面,操作起來越卡,設置了一些優化的選項,但發現也只是啓動的時候時間短了,但敲代碼的時候還是很卡,最後發現問題出在Ctrl鍵上。解決Ctrl+S卡頓的方法:Window -> Preferences -

原创 Maven下載安裝及repository路徑修改

1. 從官網下載Maven並解壓到需要安裝的目錄中 2. 解壓完後,將bin路徑加入到window的環境變量path中 3. 在cmd中執行命令:mvn -v,將輸出如下的版本信息 Apache Maven 3.5.0 (ff8f5e7

原创 aspose設置兩個word拼接後連續頁碼

目前在做的有個功能,按照省份每個省生成一個word文檔,然後把每個省的word拼接成一個word文檔,最後從第一個word開始使用連續編碼,可以使用一下方法: 1. 模板word中插入頁碼,並設置使用連續頁碼 2. 生成所有wor

原创 org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an unmapped class

配置了一個@OneToMany註解,但是項目跑起來之後一直報下面的錯: org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an un

原创 Pycharm升級pip失敗的解決辦法

Pycharm升級pip失敗,添加Options: –trusted-host mirrors.aliyun.com也不行的時候,可以考慮在Terminal中升級,在項目路徑中找到pip的包 (/Users/username/Pychar

原创 Pycharm安裝matplotlib

在終端中通過pip3安裝matplotlib後,發現pycharm中引入會報錯,查了一下發現可以在Pycharm中安裝matplotlib來解決: 1. 打開Preferences,找到Project Interpreter,點“+”添