每日知識記載總結54

2022-06-28 11:09:12 字數 2750 閱讀 3262

一、問題描述:

使用spring @transaction事務時,在for迴圈中需要多次執行同一查詢語句,第一次查詢出物件後,對物件進行修改後,結果再進行第二次查詢的時候,查詢返回的資料是自己第一次修改後的資料。因為業務需要每次查詢都需要取更改資料庫,以後的查詢都會根據上一次迴圈修改後的值進行操作。

二、解決方法:

在xml檔案 select語句新增 flushcache="true" ,告訴mybatis查詢結束後重新整理快取,不記錄查詢結果到一級快取中

三、原因:

mybatis有一級快取和二級快取,mybatis對查詢的語句會存在一級快取中,如果在乙個事務中,mybatis對同乙個session多次查詢同乙個sql語句就會去找快取而不是再去查一次資料庫

select * from table t where t.id not in (select id from table2)

-->

select a.* from table1 a left join table2 b on a.id = b.id where b.id is null;

-->

select a.* from table1 a left join table2 b on a.id = b.id where b.id is not null;

string.format()字串常規型別格式化的兩種過載方式

format(string format, object… args) 新字串使用本地語言環境,制定字串格式和引數生成格式化的新字串。

format(locale locale, string format, object… args) 使用指定的語言環境,制定字串格式和引數生成格式化的字串。

轉換符 詳細說明 示例

%s 字串型別 「喜歡請收藏」

%c 字元型別 『m』

%b 布林型別 true

%d 整數型別(十進位制) 88

%x 整數型別(十六進製制) ff

%o 整數型別(八進位制) 77

%f 浮點型別 8.888

%a 十六進製制浮點型別 ff.35ae

%e 指數型別 9.38e+5

%g 通用浮點型別(f和e型別中較短的) 不舉例(基本用不到)

%h 雜湊碼 不舉例(基本用不到)

%% 百分比型別 %(%特殊字元%%才能顯示%)

%n 換行符 不舉例(基本用不到)

%tx 日期與時間型別(x代表不同的日期與時間轉換符) 不舉例(基本用不到)

高階功能:

標誌 說明 示例 結果

第乙個例子中有說到 %tx x代表日期轉換符 我也順便列舉下日期轉換符

標誌 說明 示例

c 包括全部日期和時間資訊 星期六 十月 27 14:21:20 cst 2007

f 「年-月-日」格式 2007-10-27

d 「月/日/年」格式 10/27/07

r 「hh:mm:ss pm」格式(12時制) 02:25:51 下午

t 「hh:mm:ss」格式(24時制) 14:28:16

r 「hh:mm」格式(24時制) 14:28

用org.apache.commons.io這個包中的類

1.m轉f

file file = new file(path);

fileutils.copyinputstreamtofile(multipartfile.getinputstream(), file);

2.f轉m

file file = new file("src/test/resources/input.txt");

fileinputstream input = new fileinputstream(file);

multipartfile multipartfile =new mockmultipartfile("file", file.getname(), "text/plain", ioutils.tobytearray(input));

字串實現原理通過該類實現的。

stringbuffer可以對字串內容進行增刪。

stringbuffer是個容器。是字串緩衝區。

很多方法與string相同。

stringbuffer是可變長度。

容器的特點:

長度可變化,可以操作多個型別,最終可以通過tostring( )轉換為字串。

刪除。stringbuffer delete( start, end ):刪除緩衝區的資料,包含start,不包含end。

stringbuffer deletecharat( index ):刪除指定位置的字元。

獲取。char charat( int index )

int indexof( string str )

int lastindexof( string str)

int length( )

string substring(int start, int end)

修改。stringbuffer replace(int start, int end)

void setcharat(int index, char ch)

反轉。stringbuffer reverse( );

將緩衝區的指定的資料儲存到指定字元陣列中。

void getchars( int srcbegin, int srcend, char[ ] dst, int dstbegin)

每日記載內容總結34

1.資料庫以及伺服器方面 1 檢視電腦中 sql server 版本 1 select version 2 go 2 1.資料庫日期格式化 select id,nickname,addtime,date format addtime,h i s date format addtime,y m d f...

每日記載內容總結31

1.頁面知識 1 js去除乙個元素的點選方法 document.getelementbyname aaa onclick function 2 jquery獲取元素的父元素和查詢滿足條件的子元素 li value 1 span em em a.從不 span li one li span click...

每日記載內容總結4

1.回車實現div內按鈕的click事件 searcharea keydown function e if e.keycode else if e.which if code 13 日前,又發現更簡單的方法,親測可用相容ie6 7 8 9 10以及firefox chrome 為 searchare...