JAVAEE學習筆記

之後建立常量有三個名字:Constant   SystemParas   StaticValuejava

上限或者下限命名      max_    min_web

包含的範圍命名     first      lastspring

包含/排除範圍命名  begin  endsql

 

因爲海外數據商偶爾會出現網絡不穩定狀況,HttpClient請求無限超時,致使定時任務下一次執行阻塞
 解決:設置httpclient超時時間,本次任務超時不會影響下次任務正常執行
// nba quartz 開始更新

 

JAVA中間件:數據庫

1>遠程過程調用和對象訪問中間件:主要解決分佈式環境下應用的互相訪問問題,這也是支撐咱們介紹應用服務化的基礎。json

2>消息中間件:解決應用之間的消息傳遞、解耦異步的問題。瀏覽器

3>數據訪問中間件:主要解決應用訪問數據庫的共性問題的組件。網絡

 

SSH小問題集錦:app

1>大大簡化mapper.xml寫法之一:
 <sql id="Base_Column_List" >
         id, createdatetime, modifydatetime, name, pwd, create_time, update_time
  </sql>
 
 <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
        select 
        <include refid="Base_Column_List" />
        from tuser
        where id = #{id,jdbcType=VARCHAR}
  </select>
 
2><servlet-mapping>
  /*是攔截全部請求,包括視圖解析後跳轉的.jsp頁面,/則不會攔截視圖解析後的.jsp頁面!,可是其餘的靜態資源是比攔截的,直接映射到servlet中,
然而servlet沒有響應的路徑,故404,但我覺的其實jsp是被攔截到了一個默認的servlet進行了解析~~~
 
3>

 

 


ByteArrayHttpMessageConverter: 負責讀取二進制格式的數據和寫出二進制格式的數據;
StringHttpMessageConverter: 負責讀取字符串格式的數據和寫出二進制格式的數據;
MappingJacksonHttpMessageConverter: 負責讀取和寫入json格式的數據;
ResourceHttpMessageConverter:負責讀取資源文件和寫出資源文件數據;
FormHttpMessageConverter: 負責讀取form提交的數據(能讀取的數據格式爲 application/x-www-form-urlencoded,不能讀取multipart/form-data格式數據);異步

              負責寫入application/x-www-from-urlencoded和multipart/form-data格式的數據;

 

 

spring.factories文件裏每個xxxAutoConfiguration文件通常都會有下面的條件註解:
@ConditionalOnBean:當容器裏有指定Bean的條件下(僅僅在當前上下文中存在某個對象時,纔會實例化一個Bean)
@ConditionalOnClass:當類路徑下有指定類的條件下(某個class位於類路徑上,纔會實例化一個Bean)
@ConditionalOnExpression:基於SpEL表達式做爲判斷條件(當表達式爲true的時候,纔會實例化一個Bean)
@ConditionalOnJava:基於JV版本做爲判斷條件
@ConditionalOnJndi:在JNDI存在的條件下差在指定的位置
@ConditionalOnMissingBean:當容器裏沒有指定Bean的狀況下(僅僅在當前上下文中不存在某個對象時,纔會實例化一個Bean)
@ConditionalOnMissingClass:當類路徑下沒有指定類的條件下(某個class類路徑上不存在的時候,纔會實例化一個Bean)
@ConditionalOnNotWebApplication:當前項目不是Web項目的條件下(不是web應用)
@ConditionalOnProperty:指定的屬性是否有指定的值
@ConditionalOnResource:類路徑是否有指定的值
@ConditionalOnSingleCandidate:當指定Bean在容器中只有一個,或者雖然有多個可是指定首選Bean
@ConditionalOnWebApplication:當前項目是Web項目的條件下。
上面@ConditionalOnXXX都是組合@Conditional元註解,使用了不一樣的條件Condition

 

 

 

hosts切換不能當即生效緣由:

發現平常開發/測試 中須要頻繁切換hosts,嘗試了HostAdmin、SwitchHosts!, HostManager等工具,但都不滿意, 他們都有一個很大的問題:切換後不能當即生效,

須要重啓瀏覽器或者手動斷開sockets纔會生效。 這個 問題對我形成了很大的困擾, 由於平常工做中我會打開不少個tab,而重啓瀏覽器意味着這些tab我都找不回來了;

而手動斷開sockets, 至關繁瑣,有時候每每由於忘了手動去斷開致使發現了不少"bug", 經過觀察,發現瀏覽器不能當即生效是由於不少服務端爲了性能使用了TCP複用,

當hosts文件 被修改後,接着刷新瀏覽器頁面,此時瀏覽器做爲客戶端繼續重用以前的TCP鏈接, 所以沒法生效。

瞭解緣由後解決方案就比較簡單了:我只要在切換後斷開相應的TCP鏈接便可:一、獲取當前系統全部進程信息 二、獲取當前系統全部的TCP鏈接 三、根據PID斷開 某些TCP鏈接。

相關文章
相關標籤/搜索