2018年7月16日星期一

Anguler + Spring boot 整合(測試or Deploy)



  • Anguler  以及  Spring boot  可以分開兩個 project 開發 , 整合測試或者Deploy可以分開放
例如:  Angular 放在Apache , Spring boot 放在tomcat


  • 如果要放在一起的時候,可以參考以下的作法 :
    • Step 1 : 
找到Angular.json 這個檔案,修改以下的outputPath:
"outputPath": "dist/Angular6SpringBoot"

例如改為:
"outputPath": "D:\\SpringRestMySQL\\src\\main\\resources\\public",


    • Step 2 :
以下是Spring Boot放static content的位置 ,可以放入Angular build之後的檔案
/src/main/resources/static/
/src/main/resources/public/
/src/main/resources/resources/
/src/main/resources/META-INF/resources/


    • Step 3 : 
執行以下指令(Angular build)
ng build



  • 然後,可以在Spring boot的專案裡面找到ng build之後的檔案 : 



  • 參考範例 :  我是用以下的範例做測試與修改
http://javasampleapproach.com/spring-framework/spring-data/spring-boot-angular-6-example-spring-data-jpa-rest-mysql-crud-example




2018年7月3日星期二

Initialization Demand Holder (IoDH)的 Singleton



饿汉式Singleton不能实现延迟加载,不管将来用不用始终占据内存;懒汉式Singleton线程安全控制烦琐,而且性能受影响。

有没有一种方法,能够将两种单例的缺点都克服,而将两者的优点合二为一呢?答案是:Yes!下面我们来学习这种更好的被称之为Initialization Demand Holder (IoDH)的技术。

https://quanke.gitbooks.io/design-pattern-java/%E7%A1%AE%E4%BF%9D%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%94%AF%E4%B8%80%E6%80%A7%E2%80%94%E2%80%94%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F%20%EF%BC%88%E5%9B%9B%EF%BC%89.html

2018年7月2日星期一

IE 11 不支援 console.log


同事遇到 -->  IE 11 不支援 console.log


解決方案1  -->  console.dir


  window.console.log(PM); //Undefined
  window.console.dir(PM); //Works  

解決方案2  -->  jquery的log
$.log
範例:
   // log 會記錄時間跟事件
   $.log(new Date(e.timeStamp) + " 點擊了按鈕" + e.target.id);