原创 Spring-Mybatis整合學習筆記1

將Model層管理在工廠中,勢必要將Service和DAO的對象納入工廠,而Service和DAO中還依賴着Mybatis的相關封裝功能,所以,只有將Mybatis的相關功能組件也納入工廠,纔可以讓Service和DAO正常運行

原创 git學習筆記之遠程倉庫

1.1 概述 Git是分佈式版本控制系統,同一個Git倉庫,可以分佈到不同的機器上。怎麼分佈呢?最早,肯定只有一臺機器有一個原始版本庫,此後,別的機器可以“克隆”這個原始版本庫,而且每臺機器的版本庫其實都是一樣的,並沒有主次之分

原创 Mybatis中的關聯查詢

表之間的關係包括:一對一、一對多、多對多 一對多查詢 需求:查詢所有訂單信息,關聯查詢訂單用戶信息。 注意:因爲一個訂單信息只會是一個人下的訂單,所以從查詢訂單信息出發關聯查詢用戶信息爲一對一查詢。如果從用戶信息出發查詢用戶下的訂

原创 MyBatis高級應用學習筆記

輸入參數和輸出參數 輸入參數 環境準備 先創建項目,添加依賴 <dependencies> <dependency> <groupId>mysql</groupId> <arti

原创 spring-mybatis整合基於註解

1. 註解使用 @Service 業務類專用 @Repository DAO實現類專用 @Controller web層專用 @Component 通用,一般用於自己寫的類 @Scope 用戶控制bean的創建模式 部分<b

原创 日誌框架學習筆記

日誌框架 1.1 常見日誌框架 框架 說明 Log4j Apache Log4j是一個基於Java的日誌記錄工具。它是由Ceki首創的,現在則是Apache軟件基金會的一個項目。 Log4j是幾種Java日誌框架之一

原创 Maven和Mybatis的小問題

Maven有哪些優缺點 優點: 簡化了項目依賴管理 易於上手,對於新手可能一個mvn clean package命令就坑你滿足他的工作 便於與持續集成工具(jenkins)整合 便於項目升級,無論項目本身升級還是項目使用的依賴升

原创 異常總結(錯一次,記一次)

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder ‘druid.url’ in string value “${druid.u

原创 MyBatis中的動態sql

通過mybatis提供的各種標籤方法實現動態拼接sql。 需求:根據性別和名字查詢用戶 查詢語句: select * from user where sex=1 and username like ‘%張%’ If標籤 UserM

原创 反射學習筆記

爲什麼使用反射 比如某公司定義了一組接口,然後第三方公司按照這個公司的接口實現了一套功能,然後交給這個公司,但是這個公司的項目已經結束,如何實現動態加載第三方公司提供的功能。 什麼是反射 反射就是把Java類中的各種成分映射成一

原创 多線程同步基礎

一 多線程訪問臨界資源 1.1 多線程訪問臨界資源時的數據安全問題 臨界資源 :多個線程同時訪問的資源。 產生原因:有多個線程在同時訪問一個資源,如果一個線程在取值的過程中,時間片又被其他線程搶走了,臨界資源問題就產生了 1.2

原创 漢諾塔問題

漢諾塔問題, 當只有一個圓盤的時候,需要a–>c,當有兩個的時候需要a–>b,a---->c,b---->c 使用遞歸實現 package Test1; import java.util.Scanner; /* *2019/

原创 IO流

1.什麼是IO流 在工作中,經常會操作磁盤上的資源,這個過程中實現了數據的輸入和輸出操作,磁盤上的文件和內存之間進行交互,數據的交互需要有一個媒介或者管道,把這個媒介或者管道就稱爲IO流,也被稱爲輸入輸出流【I:Input

原创 多線程的基礎

一 進程和線程 1.1進程 1 正在運行的程序,是一個程序的運行狀態和資源佔用(內存,CPU)的描述,通過進程ID區分。 2 進程是程序的一個動態過程,它指的是從代碼加載到執行完畢的一個完成過程。 3 目前操作系統支持多進程多任務

原创 多線程在單例中的應用,生產者消費者模式(線程的通信)

單例的實現方式:懶漢式和餓漢式 其中,懶漢式是線程不安全的,當有多條線程同時訪問單例對象時,則會出現多線程臨界資源問題 單例實現步驟: 1 私有化構造方法 2 在類中創建對象 3 通過公開的方法返回這個對象 懶漢式出現線程安全問題