Intellij Idea 14使用Maven创建SpringMVC项目

   LZ平时在学校和公司用习惯了Intellij写Java,一开始学习Java的时候用的也是Eclipse,后来接触到了这款IDE,顿时爱不释手。强大的代码补全能力,美观的UI设计,对各种项目的快速支持能力,用在其中简直难以自拔啊!安利了这么多,赶紧进入正题吧,这篇博客的科普性更强,目的是帮助Web开发的小白能快速建立自己的第一个项目。

        从建项目开始吧!


        首先新建一个Module,Intellij里面Module和Project的区别就不说了,总之不要带着Eclipse的思维。选择Maven项目,并勾选图中红色的区域,然后下一步。


        这里的GroupId和ArtifactId是表征你项目的记号,下一步。


        填好你的项目名称并选择存储位置,点下一步。


        到了这里IDE会自动下载一些配置,稍等一会就能自动配置好。然后打开pom.xml文件,在该配置文件里加入你需要引入的包的名称,你想要什么包都可以去Maven Reposity里查找。


我在这里加入的依赖如下,主要是需要的一些核心包,加完之后就可以静静等待IDE下载这些JAR包。

<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context-support</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.apache.velocity</groupId>
      <artifactId>velocity</artifactId>
      <version>1.6.4</version>
    </dependency>

    <dependency>
      <groupId>org.apache.velocity</groupId>
      <artifactId>velocity-tools</artifactId>
      <version>2.0</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>4.2.3.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>

    <dependency>
      <groupId>org.springframework.data</groupId>
      <artifactId>spring-data-jpa</artifactId>
      <version>1.9.1.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.hibernate.javax.persistence</groupId>
      <artifactId>hibernate-jpa-2.0-api</artifactId>
      <version>1.0.0.Final</version>
    </dependency>

    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-entitymanager</artifactId>
      <version>3.6.10.Final</version>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.34</version>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
    </dependency>

    <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>20080701</version>
    </dependency>

    <dependency>
      <groupId>commons-httpclient</groupId>
      <artifactId>commons-httpclient</artifactId>
      <version>3.1</version>
    </dependency>
        下载完后,目前的结构如下图:


        打开web.xml文件,这个配置文件是你项目的核心配置,你的框架维护都在这里。在<web-app>里面添加如下的配置,这里有对中文编码的解析,有对加载本地资源的过滤属性等。然后在与web.xml的同级目录下新建一个mvc-dispatcher-servlet.xml的配置文件,一定要注意你的文件名与下面倒数第三行的配置多一个servlet。

<filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <servlet>
        <servlet-name>mvc-dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.gif</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
        IDE会自动识别该Spring配置文件,在mvc-dispatcher-servlet.xml文件里是如下的配置,Spring的注解都在这个xml里。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd">

       <!--指明 controller 所在包,并扫描其中的注解-->
       <context:component-scan base-package="com.zhaoyh.controller"/>

       <!-- 静态资源(js、image等)的访问 -->
       <mvc:resources mapping="/Resources/**" location="/Resources/" />
       <mvc:resources mapping="/Scripts/**" location="/Scripts/" />
       <mvc:resources mapping="/Styles/**" location="/Styles/" />

       <!-- 开启注解 -->
       <mvc:annotation-driven/>

       <bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
              <property name="resourceLoaderPath" value="/WEB-INF/VM/" />
              <property name="velocityProperties">
                     <props>
                            <prop  key="input.encoding">UTF-8</prop>
                            <prop  key="output.encoding">UTF-8</prop>
                     </props>
              </property>
       </bean>
       <bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
              <property name="cache" value="true" />
              <property name="prefix" value="" />
              <property name="suffix" value=".vm" />
              <property name="contentType"><value>text/html;charset=UTF-8</value></property>
       </bean>
</beans>

        在main下建立java目录,并将其设置为Sources,并建一个com.zhaoyh.controller的包,并新建MainController的类。
        

        在webapp/WEB-INF下建立VM目录,并在该VM目录新建一个index.vm文件,这是一种Velocity模版文件,不喜欢可以略过哈,JSP大法好!并删除原有的index.jsp。现在的目录结构如下:

        index.vm文件里直接加一个<h1>Hello Spring</h1>就行,MainController里的代码如下:
    public static final String INDEX = "index";
    @RequestMapping(value = "/", method = RequestMethod.GET)
    public String index() {
        return INDEX;
    }
       接下来就要部署tomcat服务器了,配置过程炒鸡简单,记住按照下图中红色区域的部分添加项目到tomcat。


        接下来点击右上角的运行按钮,就等着你的第一个页面映入眼帘吧!下面是我的运行结果:


注:欢迎转载,有问题可直接联系!


©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页