原创 徹底搞懂了 泛型上下邊界!跟普通泛型比,抽象層級都不同!

<? extends T>和<? super T>是Java泛型中的“通配符(Wildcards)”和“邊界(Bounds)”的概念。 <? extends T>:是指 “上界通配符(Upper Bounds Wildcards)” <?

原创 Mokito獲取參數值

mokito大家不陌生,之前一直這樣用的: @Resource private AllocaStrategyBatchService allocaStrategyBatchService; @Mock

原创 手寫帶包編譯,帶依賴包java文件編譯運行

1. idea工程在這裏: 編譯後的class 文件我自定義在  run 文件夾裏。  依賴包我自定義在lib文件裏裏。 2.工程結構: 3. 在任意文件夾運行: javac -cp C:\Users\elci1\workspace

原创 一步把啓動異常invalid constant type:15的解決了!

搞來搞去,什麼換 javasset版本之類都不行,就把jdk由1.8降級1.7,搞定了!

原创 啓動tomcat,控制檯亂碼問題,一招解決

因爲都是在window下開發,所一不管idea 也好還是eclipse也好,控制檯的字符集都是 GBK。 而tomcat 的字符集在 conf/catalina.properties 文件中。把這個文件的  UTF-8 都替換成GBK,重

原创 dubbo 本地調試全套攻略,親測完畢

服務提供端: 在下面標籤加上:port="20883" host="10.168.168.114" 因爲我的電腦由VPN,本機有2個ip,所以還加了個  host,沒有用vpn的可以不加host=.xxx。 <dubbo:protoco

原创 join on 後面的條件和where後面的條件的區別

join on後面的條件必須是定義連接關係的條件,其他條件不生效,其他條件應該放在where後面 例如: select * from PRODUCT_SUBJECT_GROUP_TEMP WHERE CHECK_STATUS = 'C

原创 關於光的波粒二象性的解釋--答覆年少時的疑惑

 有2個盲人,分別摸到了大象的腿和肚子,於是這兩個人就得出大象像牆和柱子的結論 。雖然有些奇怪,但是他們也只能知道這麼多了。 這兩個人就好像我們人類。在光這個充滿的未知的領域比盲人好不到哪裏去;我們只摸到了光的波動性和粒子性。雖然這兩者按

原创 論技術的學習

最近思考了很多關於學些的東西。 最開始,覺得自己什麼都可以幹,什麼都可以學,但最後發現自己被淹沒在浩如煙海的技術中,所有的東西都只懂得皮毛, 會用的東西出了問題也很難解決。 現在分析現狀: 基礎不夠,算法,計算機基礎不夠,導致很多會的東西

原创 悲觀鎖使用

樂觀鎖如果衝突,會更新失敗,要寫重試; 悲觀鎖如果衝突,程序會等待,直到超時,如果程序有問題,用了悲觀鎖,但是沒有事務,或是事務一直沒有提交或者回滾,其他的數據寫操作就會超時。   所以用悲觀鎖要注意不能太大事務,導致後面的寫操作等不起;

原创 關於子類父類構造器

子類的構造器,不管有無參數, 如果沒有 寫 super.(),系統會自動添加 super.(); 如果父類寫了有參構造,沒有無參構造,那麼系統就無法自動給子類的構造方法添加 super.();了,就會編譯報錯。

原创 自己Windows安裝oracle 12C 跑eclipse單元測試成功

因爲公司的oracle的實例名是 base,oracle express 版本的默認實例名是 XE,所以必須要安裝一個可以改實例名的oracle。 因爲我只能通過改hosts文件,使jdbc訪問我的本地數據庫。只能改變域名,其他都不能改變

原创 5分鐘搞懂Spring事務及@Transactional註解的使用

5分鐘搞懂Spring事務及@Transactional註解的使用切面常識Spring 事務代碼反例分析: 切面常識 事務是一種切面業務。事務的開啓和提交、回滾是在切面上完成的,也就是代理對象所新增的部分。 也就是需要用事務的時候

原创 mysql未使用索引情況總結

最近項目中,發現即使有索引,也沒有走,即使  force index 也沒有走索引。 後來得知, 範圍索引掃描到大於 30% ,就不走索引了,就全表掃描。 方法只能是縮小範圍,減少檢索的數據的行數。 還有兩個表字符集不一樣, 就無法走

原创 徹底搞懂了!Java Nio 之 selector ---爲什麼刪除已選擇鍵

學習Nio ,看到遍歷處理  selector.selectedKeys() 方法的集合時,處理完一個要用迭代器刪除這個已選擇鍵。 Set selectedKeys = selector.selectedKeys(); Iterat