175:maven命令:javascript
mvn -v //查看maven版本css
mvn help:system //打印Java系統屬性和環境變量html
ping repol.maven.org //檢查可否訪問公共的maven中央倉庫java
mvn clean compile //編譯項目主代碼web
mvn clean test //編譯項目測試代碼算法
mvn clean package //打包spring
mvn clean install //將項目輸出的jar安裝到了Maven本地倉庫。數據庫
mvn clean deploy //將項目構建輸出的構件部署到配置對應的遠程倉庫apache
mvn archetype:generate //使用Archetype生成項目骨架編程
mvn dependency:list //查看當前項目的已解析依賴
mvn dependency:tree //查看當前項目的依賴樹
mvn dependency:analyze //分析當前項目的依賴
執行test以前會先執行compile,執行package以前是會先執行test,執行install以前是會先執行compile。
默認打包的jar是不能直接執行的,由於帶有main方法的類信息不會添加到manifest中,爲了生成可執行的jar文件,須要藉助maven-shade-plugin。
175.項目構建方法
Make:Makefile
Ant:build.xml
Maven:pom.xml
176.Windows系統的默認編碼是GBK
177.pom.xml中若是不聲明依賴範圍,那麼默認值就是compile,表示該依賴對主代碼和測試代碼都有效。
groupId:對應項目名稱,例如:com.test.project
artifactId:對應模塊名稱,例如: project-model
178.maven的三種classpath:編譯classpath、測試classpath、運行classpath。
Maven的幾種依賴範圍:
compile:編譯依賴範圍,對三種classpath都有效。
test:測試依賴範圍,只對測試classpath有效。
provided:已提供依賴範圍,對於編譯和測試classpath有效,典型的例子是servlet-api,運行時因爲容器已經提供,因此不須要maven重複引入。
runtime:運行時依賴範圍,對於測試和運行classpath有效,典型的例子是JDBC驅動實現。
system:系統依賴範圍,對於編譯和測試classpath有效,須要使用<systemPath>指定本地jar包路徑,會形成構建的不可移植。
import:導入依賴範圍,該依賴範圍不會對三種classpath產生實際的影響。
179.maven依賴調解:
第一原則:路徑最近者優先
第二原則:第一聲明者優先
180.maven的排除依賴,exclusion用來排除傳遞性依賴。
歸類依賴:
<properties>
<spring.version>2.5.6</spring.version>
</properties>
181.maven私服管理軟件Nexus
182.Maven遠程倉庫地址
中央倉庫:http://repo1.maven.org/maven2
中央倉庫的中國鏡像:http://maven.net.cn/content/groups/public/
JBoss Maven倉庫:http://repository.jboss.com/maven2/
能夠在pom.xml文件中使用<repositories>元素聲明一個或者多個遠程倉庫。
使用<distributionManagement>元素將構件部署到遠程倉庫
183.maven倉庫訪問的認證信息配置在settings.xml文件中。
184.當maven項目的依賴中包含一個快照版本時,maven在構建項目的時候會自動從倉庫中檢查依賴模塊的最新版本。
185.maven倉庫鏡像和私服的配置須要在settings.xml文件中進行。
使用鏡像倉庫時會徹底屏蔽被鏡像倉庫。
186.maven倉庫搜索服務:
http://repository.sonatype.org/
http://www.jarvana.com/jarvana/
http://www.mvnbrowser.com
187.pom.xml文件中的
<phase>指定生命週期
<goals>指定要執行的插件目標
188.maven在線插件信息
http://maven.apache.org/plugins/index.html
http://repo1.maven.org/maven2/org/apache/maven/plugins/
maven會區別對待依賴的遠程倉庫與插件的遠程倉庫。
189.$(document).ready(function(){
//
})
的簡寫形式爲:
$(function(){
//
})
190.AVL樹和紅黑樹是具備自平衡功能的二叉查找樹
多叉樹的典型例子就是B樹和各類B樹的變形樹,B樹是一種自平衡多叉查找樹,經常使用於文件管理系統和數據庫系統。
191.大多數狀況下,因爲選擇策略的短視,貪婪法會錯過真正的最優解,得不到問題的真正解。
192.若是你須要在XML中引用一個id,就使用@id/id_name這種語法,若是你須要在XML中定義一個id,就使用@+id/id_name這種語法
193.Android中,dp是密度無關像素的意思,sp是可伸縮像素的意思。若是必需要指定一個固定值,則使用dp來做爲單位,指定文字大小的時候使用sp做爲單位。
194.ORM(對象/關係數據庫映射)的基本映射方式:
(1)數據表映射類
(2)數據表的行映射對象(即實例)
(3)數據表的列(字段)映射對象的屬性
PO:persistent object,持久化對象
爲了是POJO具有持久化操做的能力, Hibernate採用XML映射文件,即
PO=POJO+XML
195.JNDI是 Java 命名與目錄接口(Java Naming and Directory Interface)
196.Hibernate的Session持有一個必選的一級緩存,還有一個可配置的二級緩存。
197.單點登陸(Single Sign On),簡稱爲 SSO,是目前比較流行的企業業務整合的解決方案之一。SSO的定義是在多個應用系統中,用戶只須要登陸一次就能夠訪問全部相互信任的應用系統。
198.jfinal中handler,controller和interceptor的做用和區別
Handler 會接管全部請求,包括靜態請求,如 localhost/css/style.css 或者 locahost/img/logo.jpg,而且能夠改變請求所指向的資源參數如 String target參數,因此 Handler 具備能夠處理更多的事情,例如改變 target 參數作url 僞靜態或者 url 重寫。 而攔截器只能攔截對 action 的請求,對靜態資源的請求是徹底沒法感知的,而且攔截器沒法改變 starget 參數,當攔截髮生時,不少事情已經肯定了,例如攔截的 controller 和 action 都肯定了 Controller是請求但願到達的最終目標,一般只作三件事:接收參數、調用業務、使用業務結果渲染頁面。Handler、Interceptor 輔助 Controller 解決切面問題,例如權限驗證、事務處理等等。
199.樹的經常使用遍歷方法:
先序遍歷:列出目錄中的文件名
後序遍歷:計算目錄所佔用的磁盤空間大小
中序遍歷:表達式數(左,節點,中)
200.二叉查找樹:對於樹中的每一個節點X,它的左子樹中全部項的值小於X中的值,而它的右子樹中全部項的值大於X中的值。
201.javascript的變量默認是全局變量,若是定義變量時不使用關鍵字var,即使是在一個函數內定義該變量,它也是全局變量。javascript沒有塊級做用域
202.javascript中的switch語句和其它編程語言的一個主要區別是用來判斷的表達式能夠是任意類型。
203.javascript中函數的參數傳遞方式都是按值傳遞。
204.瀏覽器提交遵循HTTP協議的文本,文本由Tomcat接收並解析,封裝成HttpServletRequest類型的request對象,同時把輸出流封裝成HttpServletResponse類型的response對象。
205.HTTP中的referer是指從哪一個網頁中單擊連接到達本頁,若是直接輸入網址打開的本頁面,則爲null。
206.Servlet中提供經過getInitParameter(String param)、ServletConfig.getServletConfig()、getInitParameterNames()來獲取配置在web.xml中的初始化參數值
207.經過HttpServletResponse.getWriter()得到一個PrintWriter對象,該對象是OutputStream的子類,PrintWriter只能寫字符型的數據,若是須要寫二進制數據,可使用HttpServletResponse.getOutputStream()。
208.長下文參數ContextParam對於全部的Servlet都可以讀取。
209.不管是GET方式仍是POST方式,均可以使用request.getParameter()獲取參數值。
210.servlet會在服務器啓動或第一次請求該servlet的時候開始生命週期,在服務器結束的時候結束生命週期,不管請求多少次servlet,最多隻有一個servlet實例,多個客戶端併發請求servlet時,服務器會啓動多個線程分別執行該servlet的service()方法。因此servlet不是線程安全的。
服務器加載servlet->servlet構造器->@PostConstruct->init()->Service()->destory()->@PreDestory->服務器卸載servlet
211.使用forward形式跳轉servlet時,是服務器端跳轉,客戶端瀏覽器的地址不會改變。
當使用redirect跳轉servlet時,跳轉是在客戶端實現的,客戶端瀏覽器實際上請求了2次服務器,第1次獲取了重定向狀態碼與重定向的網址,第2次訪問真實地址。
212.若是Tomcat檢測到JSP源代碼發生了改動,會在下次客戶端請求JSP時從新編譯JSP,而不須要重啓Tomcat.
213.JSP有本身的初始化方法和銷燬方法_jspInit()與_jspDestroy().
214.JSP中可使用<%! %>聲明方法與屬性(全局變量).
215.Java Bean就是普通的Java類,也被稱爲POJO類,這種類簡單到只有私有的屬性與對應的getter方法與setter方法。
216.page、request、session、application的範圍是依次增大的,設置爲page時,只有本頁有效,設置爲request時,一個request能夠經過forward,include等貫穿於若干JSP頁面。
217.JSP有9個內置隱藏對象:out request response config session application page pageContext exception
218.(function(){})表示一個匿名函數。function(arg){...}定義了一個參數爲arg的匿名函數,而後使用(function(arg){...})(param)來調用這個匿名函數。其中param是傳入這個匿名函數的參數。
須要注意與$(function(){})的區別:$(function(){}) 是 $(document).ready(function(){}) 的簡寫,用來在DOM加載完成以後執行一系列預先定義好的函數。
219.查看某個網站頒發的cookie很簡單,在瀏覽器地址欄輸入:javascript:alert(document.cookie)
220.Session須要使用cookie做爲識別標誌,Session不能依據HTTP鏈接來判斷是否爲同一個客戶,所以服務器向客戶端瀏覽器發送一個名爲JSESSIONID的cookie,Session依據該cookie來識別是否爲同一個用戶。
221.分庫提升數據庫寫入能力,分表提升數據庫查詢能力。
業務拆分+分庫分表
222.
數字摘要算法:MD五、SHA-一、十六進制編碼、Base64編碼。
對稱加密算法:DES、3DES、AES
非對稱加密算法:RSA
223.對稱加密與非對稱加密結合使用:對稱加密快用來加密較長的文件,非對稱加密慢但安全性更高,用來給文件密鑰加密。
224.RSA算法原理:將兩個大素數相乘十分容易,但反過來想要對其乘積進行因式分解卻極其困難,所以能夠將乘積公開做爲加密密鑰。
225.簽名認證是對非對稱加密技術和數字摘要技術的綜合運用,指的是將通訊內容的摘要信息使用發送者的私鑰進行加密,而後將密文與原文一塊兒傳輸給信息的接收者,接收者經過發送者的公鑰解密被加密的摘要的信息,而後使用與發動者相同的摘要算法對接收的內容採用相同的方式產生摘要串,與解密的摘要串進行對比,若是相同,則說明接收到的內容是完整的,在傳輸過程當中沒有瘦到第三方的篡改,不然說明通訊內容已被第三方修改。
常見的數字簽名算法:MD5withRSA,SHA1withRSA
226.數字證書一般包含以下內容:
對象的名稱(人、服務器、組織)
證書的過時時間
證書的頒發機構
證書頒發機構對證書信息的數字簽名
簽名算法
對象的公鑰。
227.X.509
X.509提供了一種標準的方式,將證書信息規範地存儲到一系列可解析的字段當中,X.509 V3是X.509標準目前使用最爲普遍的版本。
228.網絡用戶的數字證書則須要數字證書認證機構(CA)來進行頒發,只有通過CA頒發的數字證書在網絡中才具有可認證性。
229.用戶在使用數字證書以前必須先安裝頒發該證書的根證書,大多數操做系統都會預先安裝一些較爲權威的證書認證機構的根證書,如VeriSign、GeoTrust等。
230.數字證書管理工具:keytool、OpenSSL
keytool是Java的數字證書管理工具
CSR:數字證書籤發申請
231.免費證書認證機構:http://www.cacert.org/
232.OpenSSL包含三個組成部分:SSL協議庫、密碼算法庫、以及各類與之相關的應用程序。