JAVA采坑錄

判斷字符串相等

之前一只判斷字符串相等都是用的 ==

Sring a = "123";

String b = "123";

if (a==b) 是true的。因?yàn)閍和b指向同一個(gè)對(duì)象,也就是同一個(gè)內(nèi)存空間(a指針b指針指向同一個(gè)內(nèi)存)

但是!我在不同的地方初始化的字符串是不同的內(nèi)存空間,(a==b)就是false。

常見(jiàn)的應(yīng)用場(chǎng)景,你本地的對(duì)象和傳來(lái)的參數(shù)做值判斷(如:后臺(tái)數(shù)據(jù)庫(kù)有一個(gè)人“張三”,前臺(tái)根據(jù)姓名查詢“張三”的工資)。這時(shí)判斷的應(yīng)該是值相等。用equals()

String name = new String("張三");

String param = new String("張三");

name.equals(param) 則為true


數(shù)組,list 和 arrayList

數(shù)組在內(nèi)存中是連續(xù)存儲(chǔ)的,所以它的索引速度是非常的快,而且賦值與修改元素也很簡(jiǎn)單。但是當(dāng)元素?cái)?shù)量非常龐大的時(shí)候,就會(huì)嚴(yán)重影響存取性能。插入數(shù)據(jù)的時(shí)候也是在插入位置后面的所有元素后移,下標(biāo)改變。

ArrayList它的大小是按照其中存儲(chǔ)的數(shù)據(jù)來(lái)動(dòng)態(tài)擴(kuò)充與收縮的。所以,我們?cè)诼暶鰽rrayList對(duì)象時(shí)并不需要指定它的長(zhǎng)度。ArrayList繼承了List接口,所以它可以很方便的進(jìn)行數(shù)據(jù)的添加,插入和移除.

ArrayList arrList = new ArrayList();

//新增數(shù)據(jù)

arrList.Add("abc");

arrList.Add(123);

//修改數(shù)據(jù)

arrList[2] = 345;

//移除數(shù)據(jù)

arrList.RemoveAt(0);

//插入數(shù)據(jù)

arrList.Insert(0, "hello world");

arrList插入了字符串"abc",而且又插入了數(shù)字123。這樣在ArrayList中插入不同類型的數(shù)據(jù)是允許的,也就是說(shuō)ArrayList不是類型安全的。因?yàn)?b>ArrayList會(huì)把所有插入其中的數(shù)據(jù)都當(dāng)作為object類型來(lái)處理。既使我們保證在插入數(shù)據(jù)的時(shí)候都很小心,都有插入了同一類型的數(shù)據(jù),但在使用的時(shí)候,我們也需要將它們轉(zhuǎn)化為對(duì)應(yīng)的原類型來(lái)處理。這就存在了裝箱與拆箱的操作,會(huì)帶來(lái)很大的性能損耗。


List類是ArrayList類的泛型等效類。它的大部分用法都與ArrayList相似,因?yàn)長(zhǎng)ist類也繼承了IList接口。最關(guān)鍵的區(qū)別在于,在聲明List集合時(shí),我們同時(shí)需要為其聲明List集合內(nèi)數(shù)據(jù)的對(duì)象類型。

List list = new List();

//新增數(shù)據(jù)

list.Add(123);

//修改數(shù)據(jù)

list[0] = 345;

//移除數(shù)據(jù)

list.RemoveAt(0);

List泛型的好處:?

  通過(guò)允許指定泛型類或方法操作的特定類型,泛型功能將類型安全的任務(wù)從您轉(zhuǎn)移給了編譯器。不需要編寫代碼來(lái)檢測(cè)數(shù)據(jù)類型是否正確,因?yàn)闀?huì)在編譯時(shí)強(qiáng)制使用正確的數(shù)據(jù)類型。減少了類型強(qiáng)制轉(zhuǎn)換的需要和運(yùn)行時(shí)錯(cuò)誤的可能性。泛型提供了類型安全但沒(méi)有增加多個(gè)實(shí)現(xiàn)的開(kāi)銷。

上傳文件:

在上傳文件(圖片)的時(shí)候數(shù)據(jù)庫(kù)采用的是blob.一直報(bào)錯(cuò),最后發(fā)現(xiàn)blob但是只允許65k。

類型 大小(單位:字節(jié))

tinyblob 最大 255

blob 最大 65K

mediumblob 最大 16M

longblob 最大 4G

maven install

出現(xiàn)錯(cuò)誤:不能讀取/user/../m2./repositery/? xxx

解決:進(jìn)入m2.找到該包刪掉重新maven update。解決install錯(cuò)誤

war包在Tomcat中運(yùn)行

把打好的war放在Tomcat的webapps文件中。點(diǎn)擊運(yùn)行startup.sh。瀏覽器中輸入:localhost:8080/XXXX(項(xiàng)目名)

端口被占用,殺死占用端口進(jìn)程

因?yàn)橛械捻?xiàng)目改端口比較麻煩。殺死占用該端口的進(jìn)程PID:

1、打開(kāi)終端,使用如下命令:

lsof -i:****

以上命令中,****代表端口號(hào),我們首先要知道哪個(gè)(或哪些)進(jìn)程占用該端口,比如你可以運(yùn)行 lsof -i:8000,查看有哪個(gè)進(jìn)程占據(jù)了8000端口,同時(shí)還會(huì)顯示進(jìn)程 ID;我們記住該進(jìn)程ID

2、然后在用命令 “kill 進(jìn)程ID”,殺死進(jìn)程,如:

kill 1011

匯聚平臺(tái)上架一直404

找不到路徑原因竟然是因?yàn)橐恍㎝aven依賴平臺(tái)不支持,注釋掉依賴更新上架解決。

Swagger

新建SwaggerTools包,導(dǎo)入swagger.Java,修改文件包頭,地址。

添加依賴

<!-- Swagger -->? ? ? ?

<dependency>

????<groupId>io.springfox</groupId>? ? ? ? ? ? ????<artifactId>springfox-swagger2</artifactId>? ? ? ? ? ? ? <version>2.6.1</version>

</dependency>? ? ? ?

<dependency>

????<groupId>io.springfox</groupId>? ? ? ? ? ? ????<artifactId>springfox-swagger-ui</artifactId>? ? ? ? ? ? <version>2.6.1</version>

</dependency>

輸入地址? ?http://localhost:端口/swagger-ui.html#

有時(shí)需要導(dǎo)入webconfig類(網(wǎng)上搜)才能使用swagger,但是也會(huì)導(dǎo)致項(xiàng)目中的重定向界面打不開(kāi)。Could not resolve view with name 'redirect:http........'


......BeanCreationException: Error creating bean with name 'swagger2Controller': Lookup method resolution failed;.....

原因:


簡(jiǎn)答回調(diào)函數(shù):


針對(duì)數(shù)據(jù)庫(kù)可以查詢出結(jié)果,項(xiàng)目沒(méi)有結(jié)果的問(wèn)題:

如果出現(xiàn)以上問(wèn)題,多半是mapper.xml的問(wèn)題。

如果查詢的是單個(gè)字段,需要如下轉(zhuǎn)換:

String類型的json串轉(zhuǎn)實(shí)體類

//String 轉(zhuǎn)實(shí)體

eacher是實(shí)體類

Teachers entity =JSON.parseObject(JSON.parse(teachers).toString(),Teachers.class);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,623評(píng)論 18 399
  • 第2章 基本語(yǔ)法 2.1 概述 基本句法和變量 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,503評(píng)論 0 13
  • 小目標(biāo)第一天 o(^o^)o 早上好~雖然現(xiàn)在快中午了。最近突然有睡覺(jué)前看手機(jī)的習(xí)慣,不看總覺(jué)得哪里不對(duì),不能安心...
    D_H_mj閱讀 239評(píng)論 0 0
  • 2017年的九月十日,在澠池縣教體局的安排部署下與滬江互加機(jī)緣巧合,邂逅于青椒舞臺(tái),有幸成為青椒成員的一份子。 接...
    澠池1065董紅燕閱讀 405評(píng)論 1 3
  • 《三角梅》 姹紫嫣紅爭(zhēng)奇葩, 熱情奔放眾稱佳。 庭院街頭尋常見(jiàn), 兩廂幽會(huì)卻避她。 白云山人 20170312
    賽德傳播閱讀 156評(píng)論 0 0

友情鏈接更多精彩內(nèi)容