Intellij Idea 15 三分钟创建 基于maven管理的JAVAWEB项目并用tomcat部署

写在前面:

由于最近要从Myeclipse中将一个项目转到Intellij idea,但是我没有进行直接导入eclipse项目,我就想重新建一个java WEB项目,并利用Maven进行管理,正好重新认识一下Intellij 。如果想将项目直接从eclipse导入到Intellij,可以直接搜索如何导入网上有很多教程。
当然我这篇文章不会把每个步骤都详细的列出来,比如一步一步点击和截图,但是我会强调容易出错的地方,而且会贴出详细步骤的链接。我要说的是大方向上的创建以及创建中遇到的坑,自己找出解决方法的步骤。也是方便自己后续使用。

1)用Maven创建工程,只需2分钟,多了剁手

新建Maven

新建Project,“在Intellij中Project相当于eclipse中的Workspace,而Module相当于eclipse中的project。”相信这句话在很多地方都有看到过,但是我感觉这句话挺误导人的,因为我觉得没这个必要。就直接新建一个Project,他就是一个Project,不用再去新建Module,因为一般用一个Intellij建的项目就一个程序,除非你是很大的项目,当然可能我是新手还没遇到。像Android Studio中一个Project中就一个APP新建的Module不过是存放一些文件。

OK新建Project,选择Maven,然后这里很重要的一点
不要选creat from archetype,把这个取消
,因为这个是构建Maven项目骨架,而这个骨架就是你自己创建几个文件夹2分钟就能搞定,如果你勾选了则他要通过网上下载骨架,而他这个网速没有半个小时你是搞不定的,可能网上教程有说什么修改archetype=internal啊,我试过,根本没用,还是要等很久。
取消这个进行下一步输入项目名称创建好了。
然后到这里你会发现下面有一个在跑的downloading maven plugins这个东西很气人一直在跑

使用自己的Maven版本

其实他根本就是连不上网,所以一直卡在那。我在网上搜了一下,没有相关资料,可能别人没遇到过所以我就想,应该是maven自身版本的问题,因为Intellij自己有Maven插件,那他的插件肯定不是最新版本。那我不用他Maven,我们去Maven官网下载最新版然后安装到本机,配置一下Maven环境变量,这个相当快,你直接下载解压包,具体教程Maven环境变量配置。很详细。然后我们把Intellij中找到,File->settings->Build,Execution ->Build TOOLS ->Maven ->Maven home directory这里就是Maven插件,我们换成自己新安装的最新版。这里就设置完成了,刷新一下,右键项目,Maven->reimport,应该成功了,没有downloading了,如果还有就stop download重新reimport,如果暂停不了就关了项目重新打开一下intellij。反正肯定好使。

生成javaweb骨架

然后File->Add Framework Support,添加Web Service ,也就是java WEB骨架基本该有的都有,可以根据自己需要自己添加。
这里生成之后我把我的项目结构贴出来:
Intellij Idea 15 三分钟创建 基于maven管理的JAVAWEB项目并用tomcat部署_第1张图片

maven的作用

这里Maven就创建完成了,Maven的作用我理解的就是你可以在他的POM.XML文件下添加任何你想要添加的功能,他会自动下载并整合到Library,这样你在转移项目的时候也会很方便,因为只要配置Maven下的pom.xml文件
这里我把我的pom.xml文件给出,也就是要引入的一些常用的包,可以根据需要添加与删除。
pom.xml



    4.0.0
    com.tcb.appservice
    web-ssm
    1.0-SNAPSHOT
    war
    
        
        UTF-8
        UTF-8
        
        4.1.6.RELEASE
        
        3.3.0
        
        1.7.7
        1.2.17
    

    
        
        
            junit
            junit
            4.11
            test
        
        
        
            jstl
            jstl
            1.2
        
        
        
            javax
            javaee-api
            7.0
        

        
        
            org.springframework
            spring-core
            ${spring.version}
        
        
            org.springframework
            spring-web
            ${spring.version}
        
        
            org.springframework
            spring-oxm
            ${spring.version}
        
        
            org.springframework
            spring-tx
            ${spring.version}
        

        
            org.springframework
            spring-jdbc
            ${spring.version}
        

        
            org.springframework
            spring-webmvc
            ${spring.version}
        
        
            org.springframework
            spring-aop
            ${spring.version}
        

        
            org.springframework
            spring-context-support
            ${spring.version}
        

        
            org.springframework
            spring-test
            ${spring.version}
        
        
            org.springframework
            spring-aspects
            ${spring.version}
        
        
            org.springframework
            spring-orm
            ${spring.version}
        

        
        
        
            org.mybatis
            mybatis
            ${mybatis.version}
        
        
        
            org.mybatis
            mybatis-spring
            1.2.2
        
        
        
            mysql
            mysql-connector-java
            5.1.30
        

        
        
            org.apache.mina
            mina-core
            2.0.13
        
        
        
            commons-dbcp
            commons-dbcp
            1.2.2
        
        
        
            org.apache.poi
            poi
            3.14
        

        
        
        
            log4j
            log4j
            1.2.17
        
        
        
            com.alibaba
            fastjson
            1.1.41
        
        
            org.slf4j
            slf4j-api
            ${slf4j.version}
        
        
            org.slf4j
            slf4j-log4j12
            ${slf4j.version}
        
        
        
        
            com.google.code.gson
            gson
            2.6.1
        
        
            dom4j
            dom4j
            1.6.1
        
        
        
            commons-fileupload
            commons-fileupload
            1.3.1
        
        
            commons-io
            commons-io
            2.4
        
        
            commons-codec
            commons-codec
            1.9
        
    


    
        clean
        
            
                maven-compiler-plugin
                2.3.2
                
                    1.8
                    1.8
                    UTF-8
                
            
            
                maven-war-plugin
                2.2
                
                    ${basedir}/web

                    false
                
            
        
        

            
                src/resources
                
                    **/*.properties
                
            

            
                src/main/java
                
                    **/*.properties
                    **/*.xml
                
                true
            
        
    

就可以了,什么SSM框架SSH框架都自动给你配好。当然Maven还有很多强大功能,具体我也没用过,不过非常推荐看**《Maven实战》**中国人写的书,挺适合入门者的,我看了几章我感觉用的到的,比如说pom.xml文件的注解含义。书没全部都看完,因为会用就行,后面章节深入讲解库还有做Maven里面插件的,这个对于我们使用者没什么太大影响。

2)架构SSM的配置

我的项目因为比较简单,所以没有涉及到SpringMVC,只配置了Spring-mybatis。
如果想配置SSM的项目可以去搜一下,有很多创建项目的模板和教程,这里我就不细说了。可能以后我再学习一下当把项目改成SSM框架的时候这里,再来详细说一下。
web.xml这个文件比较重要,去搜一下相应的语法结构弄懂然后进行自己的配置。
spring-mybatis.xml会出现一个配置选项,需要配置一下。我理解的也就是spring 和配置文件连接。
此时会配置相应的jdbc.properties文件属性。这里需要了解语句的作用。
所以主要就是配置上面这两个文件,配置好之后基本就没什么问题,如果有就看LOG报什么错找错就行。

log4j.properties这个文件好配置,不用过多纠结,Intellij自己有问题,提示unused properties不用管他,直接引入log4j的包然后把log4j文件拷入就行了。

3) 关于Tomcat部署的配置:

配置tomcat前需要了解的功能

配置TOMCAT,这个网上教程一搜一大堆,当然我推荐一个JAVA WEB项目创建 这个作者写的步骤相当详细,而且每个功能都有他的理解说明,很细心的作者。最好从头到尾详细看完,然后会了解其中的很多功能。当然这里我们需要做的是按照他的第三部tomcat的配置,因为前两部的配置我们通过Maven已经完成不需要他那么复杂的步骤。一定看一下方便intellij工具各个功能配置的理解。

配置tomcat

这里我觉得我还是研究的挺透彻的,结合了网上不同的教程以及自己的实践操作,已经把tomcat配置弄懂了。
首先看ProjectStructure中的Modules这里默认的output path 是target目录,这里用默认的就行,因为这时compile outpath。仅仅是编译输出路径。我们不用管他,我要提这里一句主要是跟后面的tomcat输出路径进行区别。然后看Artifacts这里的设置其实就是关联tomcat的设置了,首先添加,Web Application exploded->from modules。一定要添加这个,这个是tomcat运行的基础。添加完这个之后,我们会看到他的output 路径是out包,也就是tomcat的输出路径。添加完之后OK完成,然后进行tomcat editconfiguration的配置,添加tomcat server->local直接添加,tomcat名字起不起也无所谓,重要的是配置deployment选项卡,下面的,点添加,可以添加exploded,这里后面的Application context/后面的就是访问路径,就是你在浏览器输入xxx:8080/aabbcc 这里的aabbcc就是你要添加的访问路径。默认为空,也就是你直接起tomcat的8080端口就能访问,但是如果tomcat服务器下有多个程序,则需要在这里进行一个指定名称访问哪个程序。到此,tomcat服务器就可以启动了,运行一下可以成功,没有问题。

生成war包呢

Intellij不像Eclipse有直接导出war包的功能。那么这里就需要再次设置project structure->Artifact->添加web application Archive存档->for exploded添加成功后就可以看到war包生成,这里有个build on make 看网上说可以勾上。这次重新启动tomcat服务器就可以在out 文件夹里自动生成war包了,如果要用war包直接拖出来用。

你可能感兴趣的:(配置解析)