??xml version="1.0" encoding="utf-8" standalone="yes"?>
安装q程其实比较easy?不过刚开始弄了半天都没有搞出?l果到后来只用几分钟搞定了,看来有时候静下来一个h思考一下还是比较重要的.
下面单的说一下我以Sqlserver为数据库的安装过E?
首先到http://sourceforge.net/project/showfiles.php?group_id=73357&package_id=173644上去下蝲spring的新版本,我刚开始安装的时候是用的旧版本的jpetstore,
l果它的lib中的应该有的好多包都没有,q得自己d?g好就会好多错误的, 我的好多旉都浪费到q个上了,而且旧版本启动spring容器只能?br>
Servlet org.springframework.web.context.ContextLoaderServletq个servlet来启动的,它用不了容器监听器的.当时个也挺郁L.另外jpetstore有两U模式的,
一U是Zstruts?一U是Zspring.,至于你启动那U模?只需要在web.xml改一下就行了.
W一:
下蝲完毕后到samples文g夹中扑ֈjpetstore.在其中运行warfile.bat.q行后它会自动生成一个dist文g?把这个文件夹中的jpetstore.war拷到tomcat下的webapps?
q行tomcat,它会自动生成一个jpetstore文g.然后拿samples\jpetstore\db\hsqldb中的两个sql脚本到Sqlserver的查询分析器中去执行,q是建立?q对表进行了插?
当然之前你要Z个名为jpetstore的数据库.
W二:改一下web-inf下的jdbc.property配置文g,如果用sqlserver的话,Ҏ以下的配|就?br>
jdbc.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.url=jdbc:jtds:sqlserver://localhost:1433;DatabaseName=jpetstore
jdbc.username=sa
jdbc.password=sa
我用的是jtds驱动,所以你q得把这个jar包放到lib文g夹中,否则会报错的.
然后启动tomcat,用http://localhost:8080/jpetstore/应该可以讉K?
]]>
1、如果用“.”作ؓ分隔的话Q必L如下写法QString.split("\\."),q样才能正确的分隔开Q不能用String.split(".");
2、如果用“|”作ؓ分隔的话Q必L如下写法QString.split("\\|"),q样才能正确的分隔开Q不能用String.split("|");
“.”?#8220;|”都是转义字符Q必d?\\";
3、如果在一个字W串中有多个分隔W,可以?#8220;|”作ؓq字W,比如Q?#8220;acount=? and uu =? or n=?”,把三个都分隔出来Q可以用String.split("and|or");
/*
*取文件中?. 的后辍名
*
package com.test;
public class Test {
/**
* @param args
*/
public static void main(String[] args)
{
String str = "pp.liv.picture.jpg";
String[] arr = str.split("\\.");
System.out.println(arr[arr.length-1]);
}
}
]]>
C++通过模板技术可以指定集合的元素cdQ?/span>Java?/span>1.5之前一直没有相对应的功能。一个集合可以放Mcd的对象,相应C集合里面拿对象的时候我们也不得不对他们q行强制得类型{换。猛虎引入了泛型Q它允许指定集合里元素的cdQ这样你可以得到强类型在~译时刻q行cd查的好处?/span>
Collection<String> c = new ArrayList(); |
~译器会l出一个错误:
add(java.lang.String) in java.util.Collection<java.lang.String> cannot be applied to (java.util.Date) |
2.For-Each循环
For-Each循环得加入简化了集合的遍历。假设我们要遍历一个集合对其中的元素进行一些处理。典型的代码为:
void processAll(Collection c){ |
使用For-Each循环Q我们可以把代码改写成:
void processAll(Collection<MyClass> c){ |
q段代码要比上面清晰许多Qƈ且避免了强制cd转换?/span>
3.自动装包/拆包(Autoboxing/unboxing)
自动装包/拆包大大方便了基本类型数据和它们包装cd使用?/span>
自动装包Q基本类型自动{为包装类.(int >> Integer)
自动拆包Q包装类自动转ؓ基本cd.(Integer >> int)
?/span>JDK1.5之前Q我们L寚w合不能存攑֟本类型而耿耿于怀Q现在自动{换机制解决了我们的问题?/span>
int a = 3; |
q里Integer先自动{换ؓintq行加法q算Q然?/span>int再次转换?/span>Integer.
4.枚D(Enums)
JDK1.5加入了一个全新类型的“c?/span>”Q枚丄型。ؓ?/span>JDK1.5引入了一个新关键?/span>enmu. 我们可以q样来定义一个枚丄型?/span>
public enum Color |
然后可以q样来?/span>Color myColor = Color.Red.
枚Dcdq提供了两个有用的静态方?/span>values()?/span>valueOf(). 我们可以很方便地使用它们Q例?/span>
for (Color c : Color.values()) |
5.可变参数(Varargs)
可变参数使程序员可以声明一个接受可变数目参数的Ҏ。注意,可变参数必须是函数声明中的最后一个参数。假设我们要写一个简单的Ҏ打印一些对象,
util.write(obj1); |
?/span>JDK1.5之前Q我们可以用重蝲来实玎ͼ但是q样需要写很多的重载函敎ͼ昑־不是很有效。如果用可变参数的话我们只需要一个函数就行了
public void write(Object... objs) { |
在引入可变参C后,Java的反包也更加方便用了。对?/span>c.getMethod("test", new Object[0]).invoke(c.newInstance(), new Object[0]))Q现在我们可以这样写?/span>c.getMethod("test").invoke(c.newInstance())Q这L代码比原来清楚了很多。
6.静态导?/span>(Static Imports)
要用用静态成员(Ҏ和变量)我们必须l出提供q个Ҏ的类。用静态导入可以被导入类的所有静态变量和静态方法在当前cȝ接可见,使用q些静态成员无需再给Z们的cd?/span>
import static java.lang.Math.*; |
不过Q过度用这个特性也会一定程度上降低代码地可L?/span>
Q-Q待l?/p>
[以下{载]
Eclipse快捷键大?br>
Ctrl+1 快速修?最l典的快捷键,׃用多说了)
Ctrl+D: 删除当前?
Ctrl+Alt+↓ 复制当前行到下一?复制增加)
Ctrl+Alt+↑ 复制当前行到上一?复制增加)
Alt+↓ 当前行和下面一行交互位|?特别实用,可以省去先剪?再粘贴了)
Alt+↑ 当前行和上面一行交互位|?同上)
Alt+← 前一个编辑的面
Alt+→ 下一个编辑的面(当然是针对上面那条来说了)
Alt+Enter 昄当前选择资源(工程,or 文g or文g)的属?/p>
Shift+Enter 在当前行的下一行插入空?q时鼠标可以在当前行的Q一位置,不一定是最?
Shift+Ctrl+Enter 在当前行插入I(原理同上?
Ctrl+Q 定位到最后编辑的地方
Ctrl+L 定位在某?(对于E序过100的h有音?
Ctrl+M 最大化当前的Edit或View (再按则反?
Ctrl+/ 注释当前?再按则取消注?br>
Ctrl+O 快速显C?OutLine
Ctrl+T 快速显C当前类的承结?br>
Ctrl+W 关闭当前Editer
Ctrl+K 参照选中的Word快速定位到下一?br>
Ctrl+E 快速显C当前Editer的下拉列?如果当前面没有昄的用黑体表示)
Ctrl+/(键? 折叠当前cM的所有代?/p>
Ctrl+×(键? 展开当前cM的所有代?/p>
Ctrl+Space 代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代?
Ctrl+Shift+E 昄理当前打开的所有的View的管理器(可以选择关闭,Ȁzȝ操作)
Ctrl+J 正向增量查找(按下Ctrl+J?你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutes line中显C没有找C,查一个单词时,特别实用,q个功能Idea两年前就有了)
Ctrl+Shift+J 反向增量查找(和上条相?只不q是从后往前查)
Ctrl+Shift+F4 关闭所有打开的Editer
Ctrl+Shift+X 把当前选中的文本全部变呛_?/p>
Ctrl+Shift+Y 把当前选中的文本全部变为小?/p>
Ctrl+Shift+F 格式化当前代?/p>
Ctrl+Shift+P 定位到对于的匚wW?譬如{}) (从前面定位后面时,光标要在匚wW里?后面到前?则反?
下面的快捷键是重构里面常用的,本hp己喜Ƣ且常用的整理一??一般重构的快捷键都是Alt+Shift开头的?
Alt+Shift+R 重命?(是我自己最q的一个了,其是变量和cȝRename,比手工方法能节省很多力_?
Alt+Shift+M 抽取Ҏ (q是重构里面最常用的方法之一?其是对一大堆泥团代码有用)
Alt+Shift+C 修改函数l构(比较实用,有N个函数调用了q个Ҏ,修改一ơ搞?
Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变?其是多处调用的时?
Alt+Shift+F 把Class中的local变量变ؓfield变量 (比较实用的功?
Alt+Shift+I 合ƈ变量(可能q样说有点不妥Inline)
Alt+Shift+V Ud函数和变?不怎么常用)
Alt+Shift+Z 重构的后悔药(Undo)
来源:javaresearch
2001 q?nbsp;11 月,IBM 向开源社区捐献了 Eclipse 代码Q自?nbsp;Eclipse 在开发者社区得到飞速发展?006 q?nbsp;1? 19日,Eclipse 国际高峰论坛也首ơ登陆中国,在清华大学信息科学技术大gD行。在q次 Eclipse 大会? developerWorks ~辑团队?nbsp;IBM ?nbsp;Eclipse {略l理 John Kellerman q行了谈,聆听了他? Eclipse 历史的追溯、对 Eclipse 架构的分析、对 Eclipse 现状分析、对未来发展的展望?br> John KellermanQIBM 软g?nbsp;Rational 产品ȝ理,?nbsp;1984 q加?nbsp;IBM, 一直从事应用开发工作? 2000 q初QJohn 开始加入了 Eclipse 目Q现在Q?nbsp;IBM Eclipse {略部ȝ理。他现在的主要工作是? Eclipse 基金会、Eclipse C中代?nbsp;IBM 的利益,?nbsp;Eclipse 成员公司合作?br>E序代码自动排版QCtrl+Shift+F
修改处:H口->喜好讑֮->工作?>按键->E序代码->格式?br />个h习惯QAlt+Z?br />自动排版讑֮Q窗?>喜好讑֮->Java->E序代码格式制作E序?br />样式面->插入tab(而非I格?以内~,该选项取消N?br />Q下面空格数目填4Q这样在自动~排时会以空?作羃排?/p>
快速执行程序:Ctrl + F11
个h习惯QALT+X
修改处:H口->喜好讑֮->工作?>按键->执行->Ȁzd一ơ的ȀzM业?br />易说明:W一ơ执行时Q它会询问您执行模式Q?br />讄好后Q以后只要按q个热键Q它׃快速执行?br /><ALT+Z(排版?、ATL+X(执行)>..我觉得很手^___^
自动汇入所需要的cdQCtrl+Shift+O
易说明:
假设我们没有ImportMcdӞ当我们在E序里打入:
BufferedReader buf =
new BufferedReader(new InputStreamReader(System.in));
此时Eclipse会警C没有汇入cdQ这时我们只要按下Ctrl+Shift+O
Q它׃自动帮我们Importcd?/p>
查看使用cd的原始码QCtrl+鼠标左键点击
易说明:可以看到您所使用cd的原始码?/p>
选取的文字批注v来:Ctrl+/
易说明:Debug时很方便?br />修改处:H口->喜好讑֮->工作?>按键->E序代码->Ҏ
视景切换QCtrl+F8
个h习惯QAlt+S?br />修改处:H口->喜好讑֮->工作?>按键->H口->下一个视景?br />易说明:可以方便我们快速切换编辑、除错等视景?/p>
密技:
一套Eclipse可同时切换,英文、繁体、简体显C:
1.首先要先安装完中文化包?br />2.在桌面的快捷方式后面加上参数卛_Q?br />英文-> -nl "zh_US"
J体-> -nl "zh_TW"
?> -nl "zh_CN"?br />(其它语系以此cL)
像我2.1.2中文化后Q我在我桌面的Eclipse快捷方式加入参数-n1 "zh_US"?br />"C:\Program Files\eclipse\eclipse.exe" -n "zh_US"
接口׃变回英文语系噜?/p>
利用EclipseQ在Word~辑文书时可不必程序代码重新编排:
EclipseE序~辑区的E序代码整个复制下来(Ctrl+C)Q直接脓(Ctrl+V)?br />Word或WordPad上,您将会发现在Word里的E序代码格式Q跟Eclipse
所讑֮的完全一P包括字型、羃排、关键词颜色。我曾试qJBuilder
、GEL、NetBeans...使用复制贴上Ӟ只有~排格式一P字型、颜
色等都不会改变?/p>
外挂:
外挂安装Q将外挂包下载回来后Q将其解压羃后,您会发现features?br />pluginsq?个资料夹Q将里面的东襉K复制或移动到Eclipse的features
、plugins资料夹内后,重新ȀzEclipse卛_?/p>
让Eclipse可以像JBuilderX一样用拖拉方式徏构GUI的外挂:
1.Jigloo SWT/Swing GUI Builder Q?br />http://cloudgarden.com/jigloo/index.html
下蝲此版本:Jigloo plugin for Eclipse (using Java 1.4 or 1.5)
安装后即可由档案->新徏->其它->GUI Form选取要徏构的GUIcd?/p>
2.Eclipse Visual Editor ProjectQ?br />http://www.eclipse.org/vep/
炚w下方Download PageQ再炚wLatest Release 0.5.0q入下蝲?br />除了VE-runtime-0.5.0.zip要下载外Q以下这2个也要:
EMF build 1.1.1: (build page) (download zip)
GEF Build 2.1.2: (build page) (download zip)
3.0 M8版本Q请下蝲Q?br />EMF build I200403250631
GEF Build I20040330
VE-runtime-1.0M1
安装成功后,便可由File->New->Visual Class开始UI设计?br />安装成功后,卛_由新?>Java->AWT与Swing里选择
所要徏构的GUIcd开始进行设计。VE必须配合着对应
版本Q才能正怋用,否则即安装成功Q用上仍会
有问题?/p>
使用Eclipse来开发JSPE序Q?br />外挂名称Qlomboz(下蝲面)
http://forge.objectweb.org/project/showfiles.php?group_id=97
请选择适合自己版本的lomboz下蝲Qlomboz.212.p1.zip表示2.1.2版,
lomboz.3m7.zip表示M7版本....以此cL?br />lomboz安装以及讄教学Q?br />Eclipse开发JSP-教学文g
Java转exe:
实现方式QEclipse搭配JSmooth(免费)?br />1.先由Eclipse制作包含Manifest的JAR?br />制作教学
2.使用JSmooth做好的JAR包装成EXE?br />JSmooth下蝲面Q?br />http://jsmooth.sourceforge.net/index.php
3.制作完成的exe文gQ可在有装置JRE的Windows上执行?/p>
Eclipse-Java~辑器最佌定:
~辑器字型设定:工作?>字型->Java~辑器文字字型?br />(讑֮Courier New -regular 10)
~辑器相兌定:H口->喜好讑֮->Java->~辑?/p>
外观Q显C受强调对U显C的Ҏ受强调显C现行行?br />昄打印边距Q将其勾选,Tab宽度?Q打印编距字D设80?br />E序代码协助Q采预设卛_?br />语法Q可讑֮关键词、字W串{等的显C颜艌Ӏ?br />附注Q采预设卛_?br />输入Q全部字D都N?br />动说明Q采预设卛_?br />DQ采预设卛_?/p>
使自动排版排出来的效果,最W合Java设计惯例的设定:
自动排版讑֮Q窗?>喜好讑֮->Java->E序代码制作格式?/p>
换行Q全部不N?br />分行Q行长度上限设:80?br />样式Q只强制{型后插入I白N?br />内羃I格数目Q设??/p>
Eclipse的教学文Ӟ
sungo发表Q?br />Eclipse 3.0pd热键?- 中英对照解说?(by sungo) ~New~
Window+GCC+CDT用Eclipse开发C、C++ (by sungo) ~New~
其它Q?br />扩充Eclipse的Java 开发工?中文)
使用Eclipse开发J2EE 应用E序(中文)
使用Eclipseq_q行除错(中文)
用Eclipseq行XML 开?中文)
开发Eclipse外挂E序(中文)
国际化您的Eclipse外挂E序(英文)
Swing~辑器加入Eclipse(英文)
如何试你的Eclipse plug-inW合国际市场需?英文)
Eclipse的相关网站:
http://eclipse-plugins.2y.net/eclipse/index.jsp
http://www.eclipseplugincentral.com/
Eclipse相关教学[体]
原蝲:http://m.tkk7.com/rickhunter/articles/16180.html
原文出处:
http://www.javatang.com/archives/2006/06/27/512049.html
~辑: Jaunt
声明: L持文章的完整性Q意{?/font>
SingletonTest.javaQ?/strong>
class Singleton {
private static int nextID = 0;
private static Singleton instance = null;
private Singleton() {};
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
// inside data
public synchronized int getNextID() {
return ++nextID;
}
}
输出l果Q?/strong>
s1=s2?true
s1.getNextID = 1
s2.getNextID = 2
s1.getNextID = 3
s1.getNextID = 4
s2.getNextID = 5
s2.getNextID = 6
Sun公司一名员工自己创作的歌,关于Java EE 5Q很有意思的一首歌Q程序员业余生活也可以这么丰富!
Ladies and gentlemen, this is Java EE 5!
One, two, three, four, five
There’s a technology I use day and night
For my application with a web frontend
They told me to use .Net
But I really don´t wannaSo many bugs I fixed last week.
My code is neat and talk is a cheap
I like Glassfish, JSF, persistence API
And as I continue you know they´re gettin´ sweeterSo what can I do I really beg you my Lord
To me codin?it´s just like a sport
All the bad code from the past, let me dump it
Please set in the trumpetA little bit of injection in my life
A little bit of persistence by my side
A little bit of NetBeans is all I need
A little bit of EJB’s what I see
A little bit of standards in the sun
A little bit of XML all night long
A little bit web services here I am
A little bit of code makes me real manThis is Java EE 5!
Jump up and down and move your code around
Shake your head to the sound bury bad code under ground
Move one step left and one step right
One to the front and one to the side
Refactor it once and refactor it twice
If it looks like this you’re doin´ it rightA little bit of injection in my life
A little bit of persistence by my side
A little bit of NetBeans is all I need
A little bit of EJB’s is what I see
A little bit of standards in the sun
A little bit of XML all night long
A little bit web services here I am
A little bit of code makes me real manThis is Java EE 5!
MP3地址下蝲Q?a >q程 本地