不说废话,大牛初始亦菜鸟,成功之路贵执行,马上行动!如果想获得更优质的显示效果,请在Chrome、Firefox等现代浏览器浏览本站。

IntelliJ IDEA 12 与 Tomcat7 配置

Java EricHu 793℃ 0评论

IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn、github等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java等少数语言。

系统配置:win7 64bit,IntelliJ IDEA 12,tomcat7

先说一下与Tomcat相关的两个配置:

1、配置默认端口

在tomcat安装目录的conf目录下的server.xml文件中,以下内容中的port属性指定了默认端口:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2、将url与web程序目录绑定

默认的根目录是tomcat7\webapps\ROOT,我们可以在conf\server.xml文件Host标签中指定根目录和其他目录,例如:

<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log." suffix=".txt"/>
 <Context docBase="F:\aaa" path="/aaa" reloadable="true"/>
 <Context docBase="F:\bbb" path="/bbb" debug="0" reloadable="true" crossContext="true" />
</Host>

根据上面的配置,我们访问http://127.0.0.1/aaa时候,使用F:\aaa目录中的web程序,bbb同理。根路径不变。http://nj-apple-tree.iteye.com/blog/1635953中提到了三种设置根目录的方法:

在Tomcat默认安装后,tomcat的主目录是webapps/root目录,所以如果想改变tomcat的主目录的话可以如下所做,所以
第一种方法是:
打开C:/Tomcat/conf/server.xml,在<host></host>之间
加入代码:<Context docBase="d:/Tomcat 5.5/webapps/medi" path="" debug="0"  reloadable="true"/>
这样重新启动tomcat,我们的主目录就被设置为dolphin这个项目了。
 
第二种方法是:
将tomcat安装目录下的ROOT下的所有文件全部删除,然后将工程的解压后的文件全部拷进去。
 
第三种方法是:
Tomcat5.0以下版本在d:/Tomcat/conf/Catalina/localhost目录下会自动生成了一个ROOT.Xml,
但是5.0以上版本不再生成此文件,所以可以新建个ROOT.xml,在里面加入如下代码:
<?Xml version='1.0' encoding='utf-8'?>
  <Context crossContext="true" docBase="d:/Tomcat 5.5/webapps/medi" path="" reloadable="true">
</Context>

回到正题,说说如何配置IntelliJ IDEA 12 与 Tomcat7:

1、使用IDEA建立一个J2EE项目todo_web,放在F:\idea_wp\todo_web目录下,将index.jsp内容修改如下。

<%-- Created by IntelliJ IDEA. --%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
 <head>
 <title></title>
 </head>
 <body>
 hi, todo.
 </body>
</html>

同时。由于webapps\ROOT以前被我清空了,在该目录里建立文件index.html,内容如下:

hello tomcat

2、依次点击“File -> settings ->Application Servers”,在窗口右侧添加tomcat,设置tomcat home、base dir。
3、(可选)打开“File -> Project Structure”,查看Project SDK,libs,Artifact等有没有配置好。

project-structure

4、打开“Run -> Edit Configurations”,点击左侧的“+”以添加服务器,并作配置:

“OK”后,点击myTomcat右边的运行按钮(绿色三角形):

运行效果以及其他:

这时候,我们在浏览器中访问http://127.0.0.1:8080/,会看到“hello tomcat”,而访问http://localhost:8080/todo/可以看到“hi,todo”。
我们看到访问todo产生效果了,但是 tomcat\conf目录并未改变,比如我们关掉IDEA启动的tomcat进程。我们进入tomcat的bin目录直接运行startup.bat,这时候无法访问“/todo”,原因很简单,IDEA运行tomcat时候重新设置了变量,以下是其启动tomcat时候的部分输出:

[2013-10-30 06:57:57,692] Artifact web:war exploded: Server is not connected. Deploy is not available.
Using CATALINA_BASE: "C:\Users\letian\.IntelliJIdea12\system\tomcat\Unnamed_todo_web"
Using CATALINA_HOME: "D:\tomcat7"
Using CATALINA_TMPDIR: "D:\tomcat7\temp"
Using JRE_HOME: "D:\java\jre_7u25_32bit"

我们打开目录C:\Users\letian\.IntelliJIdea12\system\tomcat\Unnamed_todo_web,可以看到conf目录,server.xml文件中Host标签的appBase属性指定的目录被改成了绝对路径(D:\tomcat7\webapps),在\Catalina\localhost目录下有了新文件todo.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/todo" docBase="F:\idea_wp\todo_web\out\artifacts\web_war_exploded" />

所以IDEA能够做到对每一个web项目启动一个tomcat,只要port不同即可。

 继续

以上的配置开始时候都没有,一段时间后发现总是部署不了,没找到原因,干脆再配置一下,
1、打开“File -> Project Structure ->Artifacts”,添加web application exploded,命名为todo_web:

2、打开“Run -> Edit configurations ”,编辑myTomcat:

这时,运行成功。

 

常用快捷键

IntelliJ IDEA使用技巧:
1、写代码时用Alt-Insert(Code|Generate…)可以创建类里面任何字段的getter与setter方法。

2、右键点击断点标记(在文本的左边栏里)激活速查菜单,你可以快速设置enable/disable断点或者条件它的属性。

3、CodeCompletion(代码完成)属性里的一个特殊的变量是,激活Ctrl-Alt-Space可以完成在或不在当前文件里的类名。如果类没有引入则import标志会自动创建。

4、使用Ctrl-Shift-V快捷键可以将最近使用的剪贴板内容选择插入到文本。使用时系统会弹出一个含有剪贴内容的对话框,从中你可以选择你要粘贴的部分。

5、利用CodeCompletion(代码完成)属性可以快速地在代码中完成各种不同地语句,方法是先键入一个类名地前几个字母然后再用Ctrl-Space完成全称。如果有多个选项,它们会列在速查列表里。

6、用Ctrl-/与Ctrl-Shift-/来注释/反注释代码行与代码块。
-/用单行注释标记(“//…”)来注释/反注释当前行或者选择地代码块。而Ctrl-Shift-/则可以用块注释标记(“/*…*/”)把所选块包围起来。要反注释一个代码块就在块中任何一个地方按Ctrl-Shift-/即可。

7、按Alt-Q(View|Context Info)可以不需要移动代码就能查看当前方法地声明。连续按两次会显示当前所编辑的类名。

8、使用Refactor|Copy Class…可以创建一个所选择的类的“副本”。这一点很有用,比如,在你想要创建一个大部分内容都和已存在类相同的类时。

9、在编辑器里Ctrl-D可以复制选择的块或者没有所选块是的当前行。

10、Ctrl-W(选择字)在编辑器里的功能是先选择脱字符处的单词,然后选择源代码的扩展区域。举例来说,先选择一个方法名,然后是调用这个方法的表达式,然后是整个语句,然后包容块,等等。

11、如果你不想让指示事件细节的“亮球”图标在编辑器上显示,通过按Alt-Enter组合键打开所有事件列表然后用鼠标点击它就可以把这个事件文本附件的亮球置成非活动状态。这样以后就不会有指示特殊事件的亮球出现了,但是你仍然可以用Alt-Enter快捷键使用它。

12、在使用CodeCompletion时,可以用逗点(.)字符,逗号(,)分号(;),空格和其它字符输入弹出列表里的当前高亮部分。选择的名字会随着输入的字符自动输入到编辑器里。

13、在任何工具窗口里使用Escape键都可以把焦点移到编辑器上。
Shift-Escape不仅可以把焦点移到编辑器上而且还可以隐藏当前(或最后活动的)工具窗口。
F12键把焦点从编辑器移到最近使用的工具窗口。

14、在调试程序时查看任何表达式值的一个容易的方法就是在编辑器中选择文本(可以按几次Ctrl-W组合键更有效地执行这个操作)然后按Alt-F8。

15、要打开编辑器脱字符处使用的类或者方法Java文档的浏览器,就按Shift-F1(右键菜单的External JavaDoc)。
要使用这个功能须要把加入浏览器的路径,在“General”选项中设置(Options | IDE Settings),另外还要把创建的Java文档加入到工程中(File | Project Properties)。

16、用Ctrl-F12(View | File Structure Popup)键你可以在当前编辑的文件中快速导航。
这时它会显示当前类的成员列表。选中一个要导航的元素然后按Enter键或F4键。要轻松地定位到列表中的一个条目,只需键入它的名字即可。

17、在代码中把光标置于标记符或者它的检查点上再按Alt-F7(右键菜单中的Find Usages…)会很快地查找到在整个工程中使用地某一个类、方法或者变量的位置。

18、按Ctrl-N(Go to | Class…)再键入类的名字可以快速地在编辑器里打开任何一个类。从显示出来的下拉列表里选择类。

同样的方法你可以通过使用Ctrl-Shift-N(Go to | File…)打开工程中的非Java文件。

19、要导航代码中一些地方使用到的类、方法或者变量的声明,无把光标放在查看项上再按Ctrl-B即可。也可以通过按Ctrl键的同时在查看点上单击鼠标键调转到声明处。

20、把光标放到查看点上再按Ctrl-Alt-B可以导航到一个抽象方法的实现代码。

21、要看一个所选择的类的继承层次,按Ctrl-H(Browse Type Hierarchy)即可。也可以激活编辑器中的继承关系视图查看当前编辑类的继承关系。

22、使用Ctrl-Shift-F7(Search | Highlight Usages in File)可以快速高亮显示当前文件中某一变量的使用地方。按Escape清除高亮显示。

23、用Alt-F3(Search | Incremental Search)在编辑器中实现快速查查找功能。

在“Search for:”提示工具里输入字符,使用箭头键朝前和朝后搜索。按Escape退出。

24、按Ctrl-J组合键来执行一些你记不起来的Live Template缩写。比如,键“it”然后按Ctrl-J看看有什么发生。

25、Introduce Variable整合帮助你简化代码中复杂的声明。举个例子,在下面的代码片断里,在代码中选择一个表达式:

然后按Ctrl-Alt-V(Refactor | Introduce Variable)就会出现下面的结果:

26、Ctrl-Shift-J快捷键把两行合成一行并把不必要的空格去掉以匹配你的代码格式。

27、Ctrl-Shift-Backspace(Go to | Last Edit Location)让你调转到代码中所做改变的最后一个地方。
多按几次Ctrl-Shift-Backspace查看更深的修改历史。

28、用Tools | Reformat Code…根据你的代码样式参考(查看Options | IDE Setting | Code Style)格式化代码。

使用Tools | Optimize Imports…可以根据设置(查看Options | IDE Setting | Code Style | Imports)自动“优化”imports(清除无用的imports等)。

29、使用IDEA的Live Templates | Live Templates让你在眨眼间创建许多典型代码。比如,在一个方法里键入再按Tab键看有什么事情发生了。用Tab键在不同的模板域内移动。查看Options | Live Templates获取更多的细节。

30、要查看一个文件中修改的本地历史,激活右键菜单里的Local VCS | Show History…。也许你可以导航不同的文件版本,看看它们的不同之处再回滚到以前的任何一个版本吧。

使用同样的右键菜单条目还可以看到一个目录里修改的历史。有了这个特性你就不会丢失任何代码了。

31、如果要了解主菜单里每一个条目的用途,把鼠标指针移到菜单条目上再应用程序框架的底部的状态栏里就会显示它们的一些简短描述,也许会对你有帮助。

32、要在编辑器里显示方法间的分隔线,打开Options | IDE Settings | Editor,选中“Show method separators”检查盒(checkbox)。

33、用Alt-Up和Alt-Down键可以在编辑器里不同的方法之间快速移动。

34、用F2/Shift-F2键在高亮显示的语法错误间跳转。

用Ctrl-Alt-Down/Ctrl-Alt-Up快捷键则可以在编译器错误信息或者查找操作结果间跳转。

35、通过按Ctrl-O(Code | Override Methods…)可以很容易地重载基本类地方法。

要完成当前类implements的(或者抽象基本类的)接口的方法,就使用Ctrl-I(Code | Implement Methods…)。

36、如果光标置于一个方法调用的括号间,按Ctrl-P会显示一个可用参数的列表。

37、要快速查看编辑器脱字符处使用的类或方法的Java文档,按Ctrl-Q(在弹出菜单的Show Quick JavaDoc里)即可。

38、像Ctrl-Q(Show Quick JavaDoc显示简洁Java文档),Ctrl-P(Show Parameter Info显示参数信息),Ctrl-B(Go to Declaration跳转到声明),Shift-F1(External JavaDoc外部Java文档)以及其它一些快捷键不仅可以在编辑器里使用,也可以应用在代码完成右键列表里。

39、Ctrl-E(View | Recent Files)弹出最近访问的文件右键列表。选中文件按Enter键打开。

40、在IDEA中可以很容易地对你的类,方法以及变量进行重命名并在所有使用到它们的地方自动更正。

试一下,把编辑器脱字符置于任何一个变量名字上然后按Shift-F6(Refactor | Rename…)。在对话框里键入要显示地新名字再按Enter。你会浏览到使用这个变量地所有地方然后按“Do Refactor”按钮结束重命名操作。

41、要在任何视图(Project View工程视图,Structure View结构视图或者其它视图)里快速选择当前编辑地部分(类,文件,方法或者字段),按Alt-F1(View | Select in…)。

42、在“new”字符后实例化一个已知类型对象时也许你会用到SmartType代码完成这个特性。比如,键入再按Ctrl-Shift-Space:

43、通过使用SmartType代码完成,c教教Gf:业的供:育络\在IDEA中创建接口的整个匿名implementation也是非常容易的,比如,对于一些listener(监听器),可以键入

Component component;

component.addMouseListener(

new <caret is here>

);

然后再按Ctrl-Shift-Space看看有什么发生了。

44、在你需要设置一个已知类型的表达式的值时用SmartType代码完成也很有帮助。比如,键入

String s = (<caret is here>

再按Ctrl-Shift-Space看看会有什么出现。

45、在所有视图里都提供了速查功能:在树里只需键入字符就可以快速定位到一个条目。

46、当你想用代码片断捕捉异常时,在编辑器里选中这个片断,按Ctrl-Alt-T(Code | Surround with…)然后选择“try/catch”。它会自动产生代码片断中抛出的所有异常的捕捉块。在Options | File Templates | Code tab中你还可以自己定制产生捕捉块的模板。

用列表中的其它项可以包围别的一些结构。

47、在使用代码完成时,用Tab键可以输入弹出列表里的高亮显示部分。

不像用Enter键接受输入,这个选中的名字会覆盖掉脱字符右边名字的其它部分。这一点在用一个方法或者变量名替换另一个时特别有用。

48、在声明一个变量时代码完成特性会给你显示一个建议名。比如,开始键入“private FileOutputStream”然后按Ctrl-Space

在Options | IDE Setting | Code Style中还可以为本地变量,

转载请注明:RDIFramework.NET » IntelliJ IDEA 12 与 Tomcat7 配置

喜欢 (1)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址