一、tomcat啓動一直保持在starting狀態時,最簡單的緣由就是時間太短,將時間變長就能夠了。
若還不能解決時,還可能就是端口號被佔用了。
經過netstat -nao | findstr ""能夠看到佔用你所使用的端口號的進程id,而後經過tasklist | java
findstr "" 命令查看該進程ID對應的進程。
備註:a.toad中f_server(不修改的話,項目啓動後,數據刷新不出來)
b.global.properties 中#根地址
rootUrl=http://www.mvc.com:7000修改爲對應的端口號
c.tomcat相關端口號web
二、鏈接池耗盡解決辦法:
通常來講,在tomcat中配置數據庫鏈接池,而咱們不停的創建數據庫鏈接,而沒有關閉數據庫的鏈接的spring
話就會產生這樣的異常:Cannot get a connection, pool exhaustedCannot get a connection, pool sql
exhausted 。其實,這是因爲鏈接池中的鏈接被消耗殆盡的緣故。咱們實際上,在開發中應該養成良好數據庫
的開發習慣,就是在用完鏈接後應該立刻關閉Connection,這樣就很好的解決了這樣的問題。 編程
可能有人會說,那每次用完池的鏈接都要關閉數據庫的鏈接,那池就不起做用了嗎?那不就是用完api
一次鏈接就關閉,而後再次創建鏈接,這樣效率不是依然很低嗎?其實否則,這裏調用con.close()其瀏覽器
實並無把這個鏈接真正的關閉掉,而是允許池把此鏈接再次放回到池中分配給別的客戶端來使用,所tomcat
以大能夠放心的關閉鏈接,而不影響鏈接池的效率。 服務器
固然,這不是惟一的解決方案,可是我認爲這是最好的解決方案。可是,若是你在編程的時候的確
是忘記關閉數據庫的鏈接,那依然有其餘的解決方案:(固然最好是在finally中關閉con)
1). 能夠從新啓動你的tomcat服務器,這是最靈的解決方案,不過沒什麼技術含量
2). 在數據源的配置文件中把maxactive屬性的值調整到更大,好比100
三、
server.xml配置簡介
Logger timestamp 若是爲true,則log文件名中要加入時間,以下例:localhost_log.2001-10-04.txt
元素名 屬性 解釋
server port 指定一個端口,這個端口負責監聽關閉tomcat的請求
shutdown 指定向端口發送的命令字符串
service name 指定service的名字
Connector
(表示客戶端和service之間的鏈接) port 指定服務器端要建立的端口號,並在這個斷口監聽來自客戶
端的請求
minProcessors 服務器啓動時建立的處理請求的線程數
maxProcessors 最大能夠建立的處理請求的線程數
enableLookups 若是爲true,則能夠經過調用request.getRemoteHost()進行DNS查詢來獲得遠程客戶端
的實際主機名,若爲false則不進行DNS查詢,而是返回其ip地址
redirectPort 指定服務器正在處理http請求時收到了一個SSL傳輸請求後重定向的端口號
acceptCount 指定當全部可使用的處理請求的線程數都被使用時,能夠放處處理隊列中的請求數,超
過這個數的請求將不予處理
connectionTimeout 指定超時的時間數(以毫秒爲單位)
Engine
(表示指定service中的請求處理機,接收和處理來自Connector的請求) defaultHost 指定缺省的處理
請求的主機名,它至少與其中的一個host元素的name屬性值是同樣的
Context
(表示一個web應用程序,一般爲WAR文件,關於WAR的具體信息見servlet規範) docBase 應用程序的路
徑或者是WAR文件存放的路徑
path 表示此web應用程序的url的前綴,這樣請求的url爲http://localhost:8080/path/****
reloadable 這個屬性很是重要,若是爲true,則tomcat會自動檢測應用程序的/WEB-INF/lib 和/WEB-
INF/classes目錄的變化,自動裝載新的應用程序,咱們能夠在不重起tomcat的狀況下改變應用程序
host
(表示一個虛擬主機)
name 指定主機名
appBase 應用程序基本目錄,即存放應用程序的目錄
unpackWARs 若是爲true,則tomcat會自動將WAR文件解壓,不然不解壓,直接從WAR文件中運行應用程
序
--------
四、setInterval(function() {
$("#content").load(location.href+" #content>*","");
}, 5000);5秒刷新
$(document).ready(function() {
});
五、input顯示空值的問題在瀏覽器端有兼容性問題IE(trident核心)會顯示'null',火狐(gecko核心)和
谷歌(webkit核心)顯示空字符串'', 其它不經常使用瀏覽器未測過好的解決辦法是在服務器端輸出數據時增
加監聽將空值幅空字符串, 或在瀏覽器端增長數據預處理, 將null, undefined等替換爲空字符串'';如
果只想在模塊級別解決該問題, 像樓上說的設置數據後把input遍歷一遍替換掉就好了.
六、對齊方式
AbsBottom 圖像的下邊緣與同一行中最大元素的下邊緣對齊。
AbsMiddle 圖像的中間與同一行中最大元素的中間對齊。
Baseline 圖像的下邊緣與第一行文本的下邊緣對齊。
Bottom 圖像的下邊緣與第一行文本的下邊緣對齊。
Left 圖像沿網頁的左邊緣對齊,文字在圖像右邊換行。
Middle 圖像的中間與第一行文本的下邊緣對齊。
NotSet 未設定對齊方式。
Right 圖像沿網頁的右邊緣對齊,文字在圖像左邊換行。
TextTop 圖像的上邊緣與同一行上最高文本的上邊緣對齊。
Top 圖像的上邊緣與同一行上最高元素的上邊緣對齊。
align="";
七、相同ID,用getElementById取,始終只能獲取第一個
-----------
八、能用sql處理的不要用java代碼。sql處理批量數據更有優點。
在sql這,true or null =>true
false or null=>null
九、建索引的時候應該根據具體的業務SQL來建立,特別是where條件,還有where條件的順序,儘可能將過
濾大範圍的放在後面,由於SQL執行是從後往前的.
如何快速新建大數據量表的索引
若是一個表的記錄達到100萬以上的話,要對其中一個字段建索引可能要花很長的時間,甚至致使服務
器數據庫死機,由於在建索引的時候ORACLE要將索引字段全部的內容取出並進行全面排序,數據量大的
話可能致使服務器排序內存不足而引用磁盤交換空間進行,這將嚴重影響服務器數據庫的工做。解決方
法是增大數據庫啓動初始化中的排序內存參數,若是要進行大量的索引修改能夠設置10M以上的排序內
存(ORACLE缺省大小爲64K),在索引創建完成後應將參數修改回來,由於在實際OLTP數據庫應用中一
般不會用到這麼大的排序內存。
基於優化器對SQL語句的優化處理,咱們在建立索引時能夠遵循下面的通常性原則:
(1)爲常常出如今關鍵字order by、group by、distinct後面的字段,創建索引。
在這些字段上創建索引,能夠有效地避免排序操做。若是創建的是複合索引,索引的字段順序要和這些
關鍵字後面的字段順序一致,不然索引不會被使用。
(2)在union等集合操做的結果集字段上,創建索引。其創建索引的目的同上。
(3)爲常常用做查詢選擇的字段,創建索引。
(4)在常常用做錶鏈接的屬性上,創建索引。
(5)考慮使用索引覆蓋。對數據不多被更新的表,若是用戶常常只查詢其中的幾個字段,能夠考慮在
這幾個字段上創建索引,從而將表的掃描改變爲索引的掃描。
除了以上原則,在建立索引時,咱們還應當注意如下的限制:
(1)限制表上的索引數目。
對一個存在大量更新操做的表,所建索引的數目通常不要超過3個,最多不要超過5個。索引雖然說提升了
訪問速度,但太多索引會影響數據的更新操做。
(2)不要在有大量相同取值的字段上,創建索引。
在這樣的字段(例如:性別)上創建索引,字段做爲選擇條件時將返回大量知足條件的記錄,優化器不
會使用該索引做爲訪問路徑。
(3)避免在取值朝一個方向增加的字段(例如:日期類型的字段)上,創建索引;對複合索引,避免
將這種類型的字段放置在最前面。
因爲字段的取值老是朝一個方向增加,新記錄老是存放在索引的最後一個葉頁中,從而不斷地引發該葉
頁的訪問競爭、新葉頁的分配、中間分支頁的拆分。此外,若是所建索引是彙集索引,表中數據按照索
引的排列順序存放,全部的插入操做都集中在最後一個數據頁上進行,從而引發插入「熱點」。
(4)對複合索引,按照字段在查詢條件中出現的頻度創建索引。
在複合索引中,記錄首先按照第一個字段排序。對於在第一個字段上取值相同的記錄,系統再按照第二
個字段的取值排序,以此類推。所以只有複合索引的第一個字段出如今查詢條件中,該索引纔可能被使
用。
所以將應用頻度高的字段,放置在複合索引的前面,會使系統最大可能地使用此索引,發揮索引的做用
。
(5)刪除再也不使用,或者不多被使用的索引。
表中的數據被大量更新,或者數據的使用方式被改變後,原有的一些索引可能再也不被須要。數據庫管理
員應當按期找出這些索引,將它們刪除,從而減小索引對更新操做的影響。
十、sql server不經過create的建表方式:
SELECT INTO FROM語句
語句形式爲:SELECT vale1, value2 into Table2 from Table1
要求目標表Table2不存在,由於在插入時會自動建立表Table2,並將Table1中指定字段數據複製到
Table2中
十一、將當前時間放入數據庫的表字段中的兩種方式:
1)建表時設置默認值
create table emp
(location varchar2(5),
description varchar2(35),
type varchar2(20),
rowversion date default sysdate);
2)經過插入語句
insert into emp values(a,b,c,sysdate)
insert into emp values(1145,'ss','dd',12,to_date((select to_char(sysdate,'yyyy-mm-dd')from
dual),'yyyy-mm-dd'),111,123,30);
------------
十二、jdk路徑配置
D:\oracle\product\10.2.0\db_1\bin;%JAVA_HOME%\bin;%M2_HOME%\bin;F:\oracle\product
\10.2.0\db_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
.;%JAVA_HOME%\lib\dt.jar,%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-
api.jar;
1三、spring順序:content-param --> listener --> filter --> servlet
1四、本位碼
86 9 03790 00003 1
藥品國別碼、藥品類別碼,藥品本體碼和校驗碼