IntelliJ使用Maven创建SpringMVC服务

      最近想学习一下后台开发, 那么就从目前互联网流行的SpringMVC、Hibernate框架开始。 

      在搭建服务器之前,先看看这篇博客 深入理解SpringMVC思想


 前置条件: 安装IntelliJ, JDK1.8,  下载tomcat。(PS:如果用hibernate还要安装MySQL)


创建项目:File---New Project---Maven,勾选“Create from archetype”后选中“...maven-archetype-webapp”后点击next。



       设置项目名称和工程存放目录。


 

         配置pom.xml导入依赖包:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.brycegao</groupId>
  <artifactId>springmvc</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>springmvc Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>


  <properties>
    <!-- spring版本号 -->
    <spring.version>4.3.1.RELEASE</spring.version>
  </properties>
  ›››
  <!--项目依赖 -->
  <dependencies>
    <!--日志包-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.7.21</version>
    </dependency>

    <!--j2ee相关包 servlet、jsp、jstl-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>

    <!--mysql驱动包-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.35</version>

    </dependency>
    <!-- 添加Hibernate依赖 -->
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-core</artifactId>
      <version>3.6.0.Final</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/javassist/javassist -->
    <dependency>
      <groupId>javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>3.12.1.GA</version>
    </dependency>


    <!--spring相关包-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-oxm</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context-support</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <!--其他需要的包-->
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.4</version>
    </dependency>
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.3.1</version>
    </dependency>

    <!--jackson-->
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.7.0</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.7.0</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-annotations</artifactId>
      <version>2.7.0</version>
    </dependency>


    <!-- 导入dbcp的jar包,用来在applicationContext.xml中配置数据库 -->
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.2.2</version>
    </dependency>

  </dependencies>

  <build>
    <finalName>maven-springmvc</finalName>
    <resources>
      <!--表示把java目录下的有关xml文件,properties文件编译/打包的时候放在resource目录下-->
      <resource>
        <directory>${basedir}/src/main/java</directory>
        <includes>
          <include>**/*.properties</include>
          <include>**/*.xml</include>
        </includes>
      </resource>
      <resource>
        <directory>${basedir}/src/main/resources</directory>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>9.3.10.v20160621</version>
      </plugin>

    </plugins>
  </build>


</project>

         点击右下角的“import Changes"或者右键项目->Maven-Reimport。


          import成功后在工程里可以看出一堆的Maven!


配置SpringMVC代码和资源目录:

       先在main目录下创建一个java文件夹, 里面放java文件。 打开 File--->Project Structure--->Modules,   选中java并设置Sources。


        选中resources目录并设置Resources。



     配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">
  <!--welcome pages-->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  <!--配置springmvc DispatcherServlet-->
  <servlet>
    <servlet-name>springMVC</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring/spring-mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    <async-supported>true</async-supported>
  </servlet>
  <servlet-mapping>
    <servlet-name>springMVC</servlet-name>
    <url-pattern>/</url-pattern>   <!-- 还可以是/*.do -->
  </servlet-mapping>

</web-app>

       创建一个名为spring-mvc.xml的文件


      

          编写Controller和数据实体类。


          

        配置运行环境:  点击菜单 Run ---> Edit Configurations...后点击+


    

        选中tomcat server---local



         填写名称并选择选择Application Server的版本。



       设置Deployment,即运行时上传到tomcat的文件。






        运行tomcat, 在浏览器输出 http://localhost:8080/demo/user  , 可以看到SpringMVC会自动序列化对象(必须要写set/get方法),这就是最简单的接口!!!


       在浏览器输入地址  http://localhost:8080/demo/transfer?name=%22brycegao%22&age=20(PS: 这更趋近于互联网app的请求, 即请求中携带参数)


           因为在函数参数中添加了@RequestParam注解, 那么该http请求中就必须携带该参数, 否则会提示400 Bad Request, 这是后台接口开发中常用的参数判断方法, 即不传对参数就找不到处理函数。

public DemoEntity getResp(@RequestParam(value = "name") String name,
                              @RequestParam(value = "age") int age)

      例如在浏览器地址栏输入 http://localhost:8080/demo/transfer?name=%22brycegao%22 , 会提示400 Bad Request。


     大笑好了, 我们已经开发出最简单的接口了, 如果再加上hibernate就可以实现数据持久化了。 这只能算是hello world级别的服务器开发, 后续还有阿里的Dubbo服务需要学习。


  示例代码: http://download.csdn.net/detail/brycegao321/9921050

        
















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是使用Maven搭建SpringMVC的步骤: 1. 创建Maven项目 在Eclipse或IntelliJ IDEA中创建一个Maven项目,勾选上Create a simple project(创建一个简单项目),或者Create from archetype(从骨架创建),选择maven-archetype-webapp,这是一个基本的Web应用程序骨架。 2. 添加SpringMVC依赖 在pom.xml文件中添加以下依赖: ``` <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.9.RELEASE</version> </dependency> </dependencies> ``` 这里使用了Spring 5.2.9版本的spring-webmvc依赖。 3. 添加web.xml文件 在src/main/webapp/WEB-INF目录下创建web.xml文件,并添加以下内容: ``` <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/dispatcher-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app> ``` 这里配置了DispatcherServlet,将所有请求映射到根路径“/”。 4. 添加dispatcher-servlet.xml文件 在WEB-INF目录下创建dispatcher-servlet.xml文件,添加以下内容: ``` <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" 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"> <context:component-scan base-package="com.example.controller"/> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> </beans> ``` 这里配置了组件扫描和视图解析器,将所有JSP页面映射到/WEB-INF/views/目录下。 5. 创建Controller类 在src/main/java/com/example/controller目录下创建一个HelloController.java文件,添加以下内容: ``` @RestController public class HelloController { @RequestMapping("/") public String hello() { return "Hello, world!"; } } ``` 这里创建了一个RestController,用于处理根路径“/”的请求,并返回“Hello, world!”字符串。 6. 创建JSP页面 在src/main/webapp/WEB-INF/views目录下创建一个index.jsp文件,添加以下内容: ``` <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>SpringMVC</title> </head> <body> <h1>${message}</h1> </body> </html> ``` 这里使用了EL表达式,在页面中显示message变量的值。 7. 运行项目 在Eclipse或IntelliJ IDEA中运行项目,访问http://localhost:8080/,应该可以看到“Hello, world!”字符串。 以上就是使用Maven搭建SpringMVC的步骤,希望对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值