2 lomboz J2EE插件,開發JSP,EJB
http://forge.objectweb.org/projects/lomboz
3 MyEclipse J2EE開發插件,支持SERVLET/JSP/EJB/數據庫操縱等
http://www.myeclipseide.com
4 Properties Editor 編輯java的屬性文件,并可以自動存盤為Unicode格式
http://propedit.sourceforge.jp/index_en.html
5 Colorer Take 為上百種類型的文件按語法著色
http://colorer.sourceforge.net/
6 XMLBuddy 編輯xml文件
http://www.xmlbuddy.com
7 Code Folding 加入多種代碼折疊功能(比eclipse自帶的更多)
http://www.coffee-bytes.com/servlet/PlatformSupport
8 Easy Explorer 從eclipse中訪問選定文件、目錄所在的文件夾
http://easystruts.sourceforge.net/
9 Fat Jar 打包插件,可以方便的完成各種打包任務,可以包含外部的包等
http://fjep.sourceforge.net/
10 RegEx Test 測試正則表達式
http://brosinski.com/stephan/archives/000028.php
11 JasperAssistant 報表插件(要錢的哦~)
http://www.jasperassistant.com/
12 Jigloo GUI Builder JAVA的GUI編輯插件
http://cloudgarden.com/jigloo/
13 Profiler 性能跟蹤、測量工具,能跟蹤、測量B/S程序
http://sourceforge.net/projects/eclipsecolorer/
14 AdvanQas 提供對if/else等條件語句的提示和快捷幫助(自動更改結構等)
http://eclipsecolorer.sourceforge.net/advanqas/index.html
15 Log4E Log4j插件,提供各種和Log4j相關的任務,如為方法、類添加一個logger等
http://log4e.jayefem.de/update
16 VSSPlugin VSS插件
http://sourceforge.net/projects/vssplugin
17 Implementors 提供跳轉到一個方法的實現類,而不是接口的功能(實用!)
http://eclipse-tools.sourceforge.net/implementors/
18 Call Hierarchy 顯示一個方法的調用層次(被哪些方法調,調了哪些方法)
http://eclipse-tools.sourceforge.net/call-hierarchy/index.html
19 EclipseTidy 檢查和格式化HTML/XML文件
http://eclipsetidy.sourceforge.net/
20 Checkclipse 檢查代碼的風格、寫法是否符合規范
http://www.mvmsoft.de/content/plugins/checkclipse/checkclipse.htm
21 Hibernate Synchronizer Hibernate插件,自動映射等
http://www.binamics.com/hibernatesync/
22 VeloEclipse Velocity插件
http://propsorter.sourceforge.net/
23 EditorList 方便的列出所有打開的Editor
http://editorlist.sourceforge.net/
24 MemoryManager 內存占用率的監視
http://cloudgarden.com/memorymanager/
25 swt-designer java的GUI插件
http://www.swt-designer.com/
26 TomcatPlugin 支持Tomcat插件
http://www.sysdeo.com/eclipse/tomcatPlugin.html
27 XML Viewer
http://tabaquismo.freehosting.net/ignacio/eclipse/xmlview/index.html
28 quantum 數據庫插件
http://quantum.sourceforge.net/
29 Dbedit 數據庫插件
http://sourceforge.net/projects/dbedit
30 clay.core 可視化的數據庫插件
http://www.azzurri.jp/en/software/index.jsp
http://www.azzurri.jp/eclipse/plugins
31 hiberclipse hibernate插件
http://hiberclipse.sourceforge.net
http://www.binamics.com/hibernatesync
32 struts-console Struts插件
http://www.jamesholmes.com/struts/console/
33 easystruts Struts插件
http://easystruts.sourceforge.net
34 veloedit Velocity插件
http://veloedit.sourceforge.net/
35 jalopy 代碼整理插件
http://jalopy.sourceforge.net/
36 JDepend 包關系分析
http://andrei.gmxhome.de/jdepend4eclipse/links.html
37 Spring IDE Spring插件
http://springide-eclip.sourceforge.net/updatesite/
38 doclipse 可以產生xdoclet 的代碼提示
http://beust.com/doclipse/
39 SQLExplorer,在Eclipse 中連接各種數據庫進行操作使用
http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=124&threadID=31124
JSEclipse
eclipseME
http://eclipseme.org/updates/
Eclipse加速插件KeepResident
http://suif.stanford.edu/pub/keepresident/
MyEclipse J2EE開發插件,支持SERVLET/JSP/EJB/數據庫操縱等
www.myeclipseide.com
Properties Editor 編輯java的屬性文件,并可以自動存盤為Unicode格式
http://propedit.sourceforge.jp/index_en.html
http://propedit.sourceforge.jp/eclipse/updates/
Colorer Take 為上百種類型的文件按語法著色
http://colorer.sourceforge.net/
XMLBuddy 編輯xml文件
www.xmlbuddy.com
Code Folding 加入多種代碼折疊功能(比eclipse自帶的更多)
http://www.coffee-bytes.com/servlet/PlatformSupport
Easy Explorer 從eclipse中訪問選定文件、目錄所在的文件夾
http://easystruts.sourceforge.net/
Fat Jar 打包插件,可以方便的完成各種打包任務,可以包含外部的包等
http://fjep.sourceforge.net/
RegEx Test 測試正則表達式
http://brosinski.com/stephan/archives/000028.php
JasperAssistant 報表插件(強,要錢的)
http://www.jasperassistant.com/
Jigloo GUI Builder JAVA的GUI編輯插件
http://cloudgarden.com/jigloo/
Profiler 性能跟蹤、測量工具,能跟蹤、測量BS程序
http://sourceforge.net/projects/eclipsecolorer/
AdvanQas 提供對if/else等條件語句的提示和快捷幫助(自動更改結構等)
http://eclipsecolorer.sourceforge.net/advanqas/index.html
Log4E Log4j插件,提供各種和Log4j相關的任務,如為方法、類添加一個logger等
http://log4e.jayefem.de/index.php/Main_Page
VSSPlugin VSS插件
http://sourceforge.net/projects/vssplugin
Implementors 提供跳轉到一個方法的實現類,而不是接中的功能(實用!)
http://eclipse-tools.sourceforge.net/implementors/
Call Hierarchy 顯示一個方法的調用層次(被哪些方法調,調了哪些方法)
http://eclipse-tools.sourceforge.net/call-hierarchy/index.html
EclipseTidy 檢查和格式化HTML/XML文件
http://eclipsetidy.sourceforge.net/
Checkclipse 檢查代碼的風格、寫法是否符合規范
http://www.mvmsoft.de/content/plugins/checkclipse/checkclipse.htm
Hibernate Synchronizer Hibernate插件,自動映射等
http://www.binamics.com/hibernatesync/
spring updatesite 插件
http://springide.org/updatesite/
VeloEclipse Velocity插件
http://propsorter.sourceforge.net/
EditorList 方便的列出所有打開的Editor
http://editorlist.sourceforge.net/
MemoryManager 內存占用率的監視
http://cloudgarden.com/memorymanager/
Eclipse的游戲插件
http://eclipse-games.sourceforge.net/
JBoss-IDE
http://jboss.sourceforge.net/jbosside/updates/
自動反編譯class,安裝后要設定class文件缺省關聯到jode
http://www.technoetic.com/eclipse/update
jigloo swing/sw設計工具,里面自帶的form/anchor布局很好用!
http://cloudgarden.soft-gems.net/update-site/
jinto的資源文件編輯工具,同時編輯多種語言,而且自動轉換成iso8859-1編碼。很好用!
http://www.guh-software.de/eclipse/
我在jar里讀取.properties文件時,總是找不到文件路徑,后來用ResourceBundle讀取.properties文件即可避免路徑問題,代碼如下:
Session altered.
SQL>
然后重建這個失效的索引
SQL> alter index idxt rebuild;
Index altered.
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDXT';
INDEX_NAME INDEX_TYPE TABLESPACE_NAME TABLE_TYPE STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDXT NORMAL DATA_DYNAMIC TABLE VALID
SQL>
我們看到重建索引后,索引的狀態就正常了。
現在插入數據,看看是正常:
SQL> insert into t values(12);
1 row created.
SQL> commit;
Commit complete.
雖然hibernate自帶了連接池,也支持一些其他的連接池,但是查看各方面的資料,覺得還是proxool連接池占主流,現在對配置的方法做些記錄,以備后用:1. hibernate.cfg.xml
<session-factory >
<property name="hibernate.connection.provider_class">
org.hibernate.connection.ProxoolConnectionProvider
</property>
<property name="hibernate.proxool.pool_alias">MYPool</property>
<property name="hibernate.proxool.xml">proxool.xml</property>
<property name="show_sql">true</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
<mapping resource="userinfo.hbm.xml"/>
</session-factory>
2 . proxool.xml
<proxool>
<alias>MYPool</alias> <!--連接池的別名-->
<driver-url>
jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testhibernate;SelectMethod=cursor
</driver-url>
<!--JDBC驅動程序-->
<driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
<driver-properties>
<property name="user" value="sa"/>
<property name="password" value="123"/>
</driver-properties>
<!-- proxool自動偵察各個連接狀態的時間間隔(毫秒),偵察到空閑的連接就馬上回收,超時的銷毀-->
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<!-- 指因未有空閑連接可以分配而在隊列中等候的最大請求數,超過這個請求數的用戶連接就不會被接受-->
<maximum-new-connections>20</maximum-new-connections>
<!-- 最少保持的空閑連接數-->
<prototype-count>5</prototype-count>
<!-- 允許最大連接數,超過了這個連接,再有請求時,就排在隊列中等候,最大的等待請求數由maximum-new-connections決定-->
<maximum-connection-count>100</maximum-connection-count>
<!-- 最小連接數-->
<minimum-connection-count>10</minimum-connection-count>
</proxool>
在ORACLE里如果遇到特別大的表,可以使用分區的表來改變其應用程序的性能。
某公司的每年產生巨大的銷售記錄,DBA向公司建議每季度的數據放在一個分區內,以下示范的是該公司1999年的數據(假設每月產生30M的數據),操作如下:
范圍分區表:
CREATE TABLE sales
(invoice_no NUMBER,
...
sale_date DATE NOT NULL )
PARTITION BY RANGE (sale_date)
(PARTITION sales1999_q1
VALUES LESS THAN (TO_DATE(‘1999-04-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q1,
PARTITION sales1999_q2
VALUES LESS THAN (TO_DATE(‘1999-07-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q2,
PARTITION sales1999_q3
VALUES LESS THAN (TO_DATE(‘1999-10-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q3,
PARTITION sales1999_q4
VALUES LESS THAN (TO_DATE(‘2000-01-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q4 );
--values less than (maxvalue)
列表分區表:
create table emp (
empno number(4),
ename varchar2(30),
location varchar2(30))
partition by list (location)
(partition p1 values ('北京'),
partition p2 values ('上海','天津','重慶'),
partition p3 values ('廣東','福建')
partition p0 values (default)
);
哈希分區:
create table emp (
empno number(4),
ename varchar2(30),
sal number)
partition by hash (empno)
partitions 8
store in (emp1,emp2,emp3,emp4,emp5,emp6,emp7,emp8);
組合分區:
范圍哈希組合分區:
create table emp (
empno number(4),
ename varchar2(30),
hiredate date)
partition by range (hiredate)
subpartition by hash (empno)
subpartitions 2
(partition e1 values less than (to_date('20020501','YYYYMMDD')),
partition e2 values less than (to_date('20021001','YYYYMMDD')),
partition e3 values less than (maxvalue));
范圍列表組合分區:
CREATE TABLE customers_part (
customer_id NUMBER(6),
cust_first_name VARCHAR2(20),
cust_last_name VARCHAR2(20),
nls_territory VARCHAR2(30),
credit_limit NUMBER(9,2))
PARTITION BY RANGE (credit_limit)
SUBPARTITION BY LIST (nls_territory)
SUBPARTITION TEMPLATE
(SUBPARTITION east VALUES ('CHINA', 'JAPAN', 'INDIA', 'THAILAND'),
SUBPARTITION west VALUES ('AMERICA', 'GERMANY', 'ITALY', 'SWITZERLAND'),
SUBPARTITION other VALUES (DEFAULT))
(PARTITION p1 VALUES LESS THAN (1000),
PARTITION p2 VALUES LESS THAN (2500),
PARTITION p3 VALUES LESS THAN (MAXVALUE));
create table t1 (id1 number,id2 number)
partition by range (id1) subpartition by list (id2)
(partition p11 values less than (11)
(subpartition subp1 values (1))
);
索引分區:
CREATE INDEX month_ix ON sales(sales_month)
GLOBAL PARTITION BY RANGE(sales_month)
(PARTITION pm1_ix VALUES LESS THAN (2)
PARTITION pm12_ix VALUES LESS THAN (MAXVALUE));
增加分區:
ALTER TABLE sales ADD PARTITION sales2000_q1
VALUES LESS THAN (TO_DATE(‘2000-04-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale2000q1;
如果已有maxvalue分區,不能增加分區,可以采取分裂分區的辦法增加分區!
刪除分區:
ALTER TABLE sales DROP PARTION sales1999_q1;
截短分區:
alter table sales truncate partiton sales1999_q2;
合并分區:
alter table sales merge partitons sales1999_q2, sales1999_q3 into sales1999_q23;
alter index ind_t2 rebuild partition p123 parallel 2;
分裂分區:
ALTER TABLE sales
SPLIT PARTITON sales1999_q4
AT TO_DATE (‘1999-11-01’,’YYYY-MM-DD’)
INTO (partition sales1999_q4_p1, partition sales1999_q4_p2) ;
alter table t2 split partition p123 values (1,2) into (partition p12,partition p3);
交換分區:
alter table x exchange partition p0 with table bsvcbusrundatald ;
訪問指定分區:
select * from sales partition(sales1999_q2)
EXPORT指定分區:
exp sales/sales_password tables=sales:sales1999_q1
file=sales1999_q1.dmp
IMPORT指定分區:
imp sales/sales_password FILE =sales1999_q1.dmp
TABLES = (sales:sales1999_q1) IGNORE=y
查看分區信息:
user_tab_partitions, user_segments
注:若分區表跨不同表空間,做導出、導入時目標數據庫必須預建這些表空間。分表區各區所在表空間在做導入時目標數據庫一定要預建這些表空間!這些表空間不一定是用戶的默認表空間,只要存在即可。如果有一個不存在,就會報錯!
默認時,對分區表的許多表維護操作會使全局索引不可用,標記成UNUSABLE。 那么就必須重建整個全局索引或其全部分區。如果已被分區,Oracle 允許在用于維護操作的ALTER TABLE 語句中指定UPDATE GLOBAL INDEXES 來重載這個默認特性,指定這個子句也就告訴Oracle 當它執行維護操作的DDL 語句時更新全局索引,這提供了如下好處:
1.在操作基礎表的同時更新全局索引這就不需要后來單獨地重建全局索引;
2.因為沒有被標記成UNUSABLE, 所以全局索引的可用性更高了,甚至正在執行分區的DDL 語句時仍然可用索引來訪問表中的其他分區,避免了查詢所有失效的全局索引的名字以便重建它們;
另外在指定UPDATE GLOBAL INDEXES 之前還要考慮如下性能因素:
1.因為要更新事先被標記成UNUSABLE 的索引,所以分區的DDL 語句要執行更長時間,當然這要與先不更新索引而執行DDL 然后再重建索引所花的時間做個比較,一個適用的規則是如果分區的大小小于表的大小的5% ,則更新索引更快一點;
2.DROP TRUNCATE 和EXCHANGE 操作也不那么快了,同樣這必須與先執行DDL 然后再重建所有全局索引所花的時間做個比較;
3.要登記對索引的更新并產生重做記錄和撤消記錄,重建整個索引時可選擇NOLOGGING;
4.重建整個索引產生一個更有效的索引,因為這更利于使用空間,再者重建索引時允許修改存儲選項。
注意分區索引結構表不支持UPDATE GLOBAL INDEXES 子句。
1、創建表
2、插入數據
3、在線重定義的表自行驗證,看該表是否可以重定義,
4、建個和源表表結構一樣的分區表,作為中間表。按日期范圍分區
5、執行表的在線重定義:
6、執行把中間表的內容和數據源表進行同步。
7、執行結束在線定義過程
8、查看數據字典,可以看到改表已經成為了分區表。
至此普通表轉為分區操作完成
9、如果執行在線重定義的過程中出錯
10、如果出現以下錯誤:
詳細原理請查看:
Oracle的在線重定義表功能:http://tb.blog.csdn.net/TrackBack.aspx?PostId=900018
Oracle的在線重定義表功能(二):http://blog.itpub.net/post/468/12962