原创 javax.persistence.TransactionRequiredException: Executing an update/delete query
今天遇到了這樣一個問題,意思都懂,就是沒有加事務。 網上大部分的回答是: 在方法上加jpa的@Transaction註解。 試驗後發現不能解決問題,後在瀏覽stackOverflow時,瞭解到 有人將方法定義爲priva
原创 java8實現歸併操作,數據庫多個 多對多映射的處理技巧
需求如下:現有三個實體,A,B,C; A-B:一對多,A-C,一對多, A(一)-B(多)-C(多) 要作爲一個視圖整體呈現。現需要查出所有的A,及其對應B與C渲染在前端。 方案一: 寫一方法,逐個查詢: 遍歷查詢A
原创 數據庫查詢優化
老大傳授的數據庫查詢優化層次思路: 第一級別: 建立數據庫視圖; 第二級別: 建立物化視圖(Oracle支持雙向關聯,一般的數據庫不支持)。 第三級別: 建立一張表(利用觸發器--> 索引進行控制; 或者 利用代碼邏輯控
原创 微服務拆分
方法論: 領域驅動設計(Domain Driven Design); 面向對象(by name/by verb); 教師心得: 職責劃分; 通用性劃分; 微服務拆分的粒度: 良好的滿足業務; 幸福感;
原创 mybatis插件
通用Mapper: tk.mytatis:mapper-spring-boot-starter:2.1.5 @MapperScan(tk包的); mysql-connector 的版本>=6.x,則需要帶cj 代碼
原创 微服務的協作
實際項目中,對於核心業務,設計業務可以使用: 業務流程圖,活動圖,用例圖,序列圖等等 沒有建模的微服務是沒有靈魂的。 uml基本上已經成爲架構師的基本技能; 實際項目中的流程: ###Schema First 1
原创 微服務
單體應用: 一個歸檔包(如jar包),包含所有功能的應用程序,稱爲單體應用。 單體架構: 單體應用的方法論就是單體架構。 單體架構的缺點: 複雜性高; 部署慢頻率低;擴展能力有限; 阻礙技術創新; 單體應用的諸多缺點,因此
原创 restTemplate
簡介: springWeb提供的輕量級 HTTP Client,用於簡化HTTP調用; 使用: //用http get方法去請求,並返回一個對象 new RestTemplate().getForObject('url'
原创 springCloudAlibaba
spring cloud是什麼? 快速構建分佈式的工具集; 具體而言: 分佈式/版本化的配置管理 spring cloud config, consul ,nacos, zookeeper 服
原创 Nacos
是什麼? 是一個服務發現組件,同時也是一個配置服務器; 作用? 解決了兩個問題: 服務A 如何調用 服務B 的問題; 管理微服務的配置;
原创 sring的bean神器BeanUtils
用法: BeanUtils.copyProperties(source,target);
原创 瑞士軍刀的大砍刀-lombok
需要和 ide整合; org.projectlombok:lombok:1.18.8:provided 註解: @Getter @Setter @Tostring @EqualsAndHashCode @Data(組合註
原创 mapper與idea不兼容拋紅的處理
原因: UserMapper 不能爲spring容器解析; 解決方案: 1.required=false; 2.@Resource替換@Autowired (常見面視題) 3.在Mapper上加上@Compone
原创 centos7-java環境之jdk自動化配置
題接上文,繼docker容器的進行操作的方案放棄後,我便使用了自動化腳本的方式。 相較於mysql的自動化,jdk的自動化部署要簡易很多。 源碼如下: #!bin/sh jdk_version_targz=$1 mkdir /
原创 dto的作用
組裝數據,用於前臺展示; 相當於 framework的動態對象;