原创 泛型通配符extends和super的區別

1.<?extends T>只能用於方法返回,告訴編譯器此返參的類型的最小繼承邊界爲T,T和T的父類都能接收,但是入參類型無法確定,只能接受null的傳人 2.<?super T>只能用於限定方法入參,告訴編譯器入參只能是T或其子

原创 SQL優化(二)

不要在where 子句中的 = 左邊進行函數,算數運算或其他表達式運算,否則系統將可能無法正確使用索引 在使用索引字段作爲條件時,如果該索引是複合索引,那麼必須使用到該索引中的第一個字段作爲條件時才能 保證系統使用該字段. 不要

原创 SQL優化(三)

在新建臨時表時,如果一次性插入數據量很大,那麼可以使用 select into 代替 create table,避免造成大量 log ,以提高速度;如果數據量不大,爲了緩和系統表的資源,應先create table,然後ins

原创 SQL優化(一)

索引和拆分表可以極大的增加查詢速度 我們的在寫sql的時候也可以通過優化來增加查詢速度. 對查詢進行優化,要儘量避免全表掃描,首先應考慮在where和order by 涉及的列上建立索引. 應儘量避免在where子句中對字

原创 MySQL自帶數學函數方法

1. abs(n) 返回n的絕對值 mysql> select abs(2);   -> 2 mysql> select abs(-32);   -> 32 2. sign(n) 返回參數的符號(爲-1、0或1) mysql> sel

原创 MySQL日期函數方法

year(date) 返回date的年份(範圍在1000到9999) mysql> select year('98-02-03'); -> 1998 mysql> select year('1998-02-03'); -> 199

原创 MySQL自帶String(字符串)函數方法

1.字符串函數 ascii(str) 返回字符串Str的第一個字符的Ascii值(Str是空時返回0) mysql> select ascii(‘2’);   -> 50 mysql> select ascii(2);   ->

原创 IKExpression使用及jar包下載

類org.wltea.expression.ExpressionEvaluator public static Object evaluate(String expression, Collection variables) 說明

原创 如何實現負載均衡,有哪些算法可以實現?

【前言】 負載均衡技術對於中大型網站的性能提高有着很大的優勢,最近在學習《大型網站技術的架構》,其中對於負載均衡技術有一些介紹,將學習的經驗總結一下,分享下。多交流。 【協議層】http重定向協議實現負載均衡 原理:根據用戶的http

原创 七、死鎖

進程A中包含資源A,進程B中包含資源B,A的下一步需要資源B,B的下一步需要資源A,所以它們就互相等待對方佔有的資源釋放,所以也就產生了一個循環等待死鎖。 代碼如下: 1 public class DeadLock { 2 3

原创 五、線程狀態管理

1、線程睡眠—sleep:     線程睡眠的原因:線程執行的太快,或需要強制執行到下一個線程。    線程睡眠的方法(兩個):       sleep(long millis)在指定的毫秒數內讓正在執行的線程休眠。       sl

原创 二、線程的生命週期

**新建:**從新建一個線程對象到程序start() 這個 線程之間的狀態,都是新建狀態。 **就緒:**線程對象調用start()方法後,就處於就緒狀態,等到JVM裏的線程調度器的調度。 **運行:**就緒狀態下的線程在獲取CPU

原创 一、多線程是什麼?爲什麼要用多線程?

多線程是什麼? 在介紹多線程的時候,我們首先要知道什麼是線程,而要了解線程還要了解進程。 1.進程:一個正在執行中的程序,每個進程執行都有一個執行順序,該順序是一個執行路徑,或者是一個控制單元(個人偏向這種 )。 2.線程:進程中的一

原创 三,多線程的4種創建方法和對比

Java多線程實現方式 Java 多線程實現方式主要有四種,繼承Thread,實現Runnable,實現Callable,Future實現返回結果的多線程。 1. 繼承Thread類創建 public class MyThread e

原创 六、線程同步與鎖。

爲什麼要進行線程同步?       java允許多線程併發控制,當多個線程同時操作一個可共享資源變量時(如對其進行增刪改查操作),會導致數據不準確,而且相互之間產生衝突。所以加入同步鎖以避免該線程在沒有完成操作前被其他線程調用,從而保