Intellij14搭建Maven的SpringMVC记录

来源:互联网 发布:mac连接佳能打印机 编辑:程序博客网 时间:2024/06/05 06:06

IDEA这玩意儿真是人少坑多,搭一个极简的SpringMVC又花了大半天时间
参考文章来一发先:真是最精简的内容了,这里先只介绍springMVC返回Json数据的搭建,mybatis和spring的整合在下一篇博客中给出。
在Intellij中创建项目的步骤是这样的:

  1. 创建一个空的Maven项目
  2. pom.xml中加入依赖,Intellij会提示打开自动下载依赖的,下载依赖。

        <properties>        <org.springframework-version>4.2.2.RELEASE</org.springframework-version>        <jackson.version>2.6.3</jackson.version>    </properties>    <dependencies>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-core</artifactId>            <version>${org.springframework-version}</version>        </dependency>        <!--添加spring-web包 -->        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-web</artifactId>            <version>${org.springframework-version}</version>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-webmvc</artifactId>            <version>${org.springframework-version}</version>        </dependency>        <!-- Jackson JSON Mapper -->        <dependency>            <groupId>com.fasterxml.jackson.core</groupId>            <artifactId>jackson-core</artifactId>            <version>${jackson.version}</version>        </dependency>        <dependency>            <groupId>com.fasterxml.jackson.core</groupId>            <artifactId>jackson-databind</artifactId>            <version>${jackson.version}</version>        </dependency>        <dependency>            <groupId>com.fasterxml.jackson.core</groupId>            <artifactId>jackson-annotations</artifactId>            <version>${jackson.version}</version>        </dependency>    </dependencies></project>
  3. 这时作为一个空的Maven项目,还不能部署到服务器上,在项目上右键,选择第二项:添加框架支持(我打了一个中文补丁,如果是英文版看意思对就行),选择第一项Web Application
    这里写图片描述
    这时Intellij会自动帮你设置好 FacetsArtificts
    这里写图片描述
    这里写图片描述
    src同级目录下会出现web文件夹,此时可以作为服务器程序部署到Tomcat上了
    这里写图片描述
  4. 下载Tomcat,配置到Intellij中,把项目放入Tomcat
    这里写图片描述
    添加Tomcat
    添加Tomcat
    添加Artifact
    添加Artifact
    正常是这样的,最上面的name是服务器名,可以自己随便取,无影响
    这样就可以了
  5. 此时配置的内容大致已经完成了,在web/WEB-INF目录的web.xml文件中添加配置

     <web-app id="WebApp_ID" version="2.4"         xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">    <display-name>Spring Web MVC Application</display-name><!--servlet-name自己取,保证前后一致-->    <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>mvc-dispatcher</servlet-name>        <url-pattern>/</url-pattern>    </servlet-mapping>    <context-param>        <param-name>contextConfigLocation</param-name>        <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>    </context-param>    <listener>        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    </listener></web-app>
  6. 在相同目录下创建mvc-dispatcher-servlet.xml文件,添加配置,这里的配置和上面给的参考链接的稍有不同,包括pom.xml也是的,可能因为它的spring版本较低,我用了spirng4的,导致按照他的配置不成功,要返回Json的话还是需要添加我这里的配置的。

     <beans xmlns="http://www.springframework.org/schema/beans"    xmlns:context="http://www.springframework.org/schema/context"    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="        http://www.springframework.org/schema/beans             http://www.springframework.org/schema/beans/spring-beans-3.0.xsd        http://www.springframework.org/schema/context         http://www.springframework.org/schema/context/spring-context-3.0.xsd        http://www.springframework.org/schema/mvc        http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">    <!--扫描controller包-->    <context:component-scan base-package="xxx.xxx.controller" />    <mvc:annotation-driven />    <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">        <property name="supportedMediaTypes" value="application/json;charset=UTF-8"/>    </bean></beans>
  7. 在src目录下创建xxx.xxx.controller,要和上面的配置文件中<context:component-scan base-package="xxx.xxx.controller" />对应
  8. 创建HelloController.java内容如下

     package com.gcoreinc.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller@RequestMapping("/home")public class HelloController {    @RequestMapping("/hello")    @ResponseBody    public String sayHello(){        return "Hello World!";    }}
  9. 至此要写的内容也完成了,运行tomcat,然后发现启动服务器报错,这是因为没有把Maven依赖作为web项目依赖,如下操作,这个坑太深了,以至于我掉下去之后花了好几个小时才爬出来,以此铭记
    最喜欢看到报错了
    新建文件夹,取名为lib
    新建文件夹
    取名lib
    选中lib文件夹,把所有的maven依赖加进去
    添加library
    全部!全部!

  10. 大功告成,此时可以正常启动服务器,打开路径:
    http://localhost:8080/TestSpringMVC/home/hello
    就能看到最最亲切的内容了[“Hello”,”World”,”!”]
    最后记住!每次修改pom.xml下的依赖后,记得要更新Artifact下的lib中的依赖!(似乎Intellij14.1版本可以自动更新了,我没有尝试过)

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 美团商家单量出现下滑怎么办 想开个小超市没经营过怎么办 华为7c手机wifi信号差怎么办 贞子从电视里爬出来怎么办 2个月的婴儿吓到怎么办 排卵日同房了没避孕怕怀孕怎么办 妻子因为我欺骗她要跟我离婚怎么办 老婆用苹果手机共享我的位置怎么办 孕妇餐后2小时血糖偏高怎么办 孕妇血糖餐后2小时数值高怎么办 股市退市的话股民的钱怎么办 美股股票退市了手里的股票怎么办 坐高铁安检时怕把包包弄坏了怎么办 很贵的包包高铁安检怎么办 如果过高铁安检东西被扣留怎么办 邻居家小孩把我家东西弄坏了怎么办 邻居早上6点放音乐扰民怎么办 隔壁楼邻居天天放音乐很吵怎么办 发现老公在卧室安了摄像头怎么办 憋的尿又没有厕所的时候怎么办 一岁宝宝拉屎总是拉出血怎么办 孩子鼻窦炎鼻子堵有白色鼻涕怎么办 家里阳台上老是有蝙蝠趴着怎么办 空调太冷在空调房里该怎么办 分手了怎么办不要挽回要重新吸引 过敏体质没打疫苗的孩子入学怎么办 遇到不认识的小姐姐问我问题怎么办 小孩孑脖子洛忱了痛怎么办 挤奶把乳腺挤肿了不出奶怎么办 遇到好兄弟在背后捅刀子怎么办 面对出轨还不想离婚的老公怎么办 法院执行局把案划错了不承认怎么办 手机nfc功能被手机壳挡住怎么办 飞信短信登录验证码达到上限怎么办 手机自带短信软件没了怎么办 老婆出轨孩子又3个不知道怎么办 骑电动车摔跤小脚趾疼有点肿怎么办 第一次太疼了有心理阴影了怎么办 天梭机械表调了时间忽然慢怎么办 支付宝信用住到酒店没房间怎么办 拳头打在硬上骨头肿了怎么办