zoukankan      html  css  js  c++  java
  • 使用IntelliJ IDEA开发SpringMVC网站

    使用IntelliJ IDEA开发SpringMVC网站

    最近在做某在线教育平台网站的开发,按师兄的建议要用SpringMVC来搞。之前对SpringMVC的认知度为0,网上查阅各种资料,发现五花八门的配置都有,文章写的那叫一个乱啊,我觉得有些文章还是不要发出来的比较好,简直误人子弟耽误时间。最近借着师兄网上搜集的一些开发经验,找到了IntelliJ网站上的这篇文章《Getting Started with SpringMVC, Hibernate and JSON》,外加看了孔老师的《SpringMVC视频教程》,着实有一种醍醐灌顶的感觉,整个路子瞬间通了,开发速度指数型上涨。现在把开发过程中的一些相关经验贴出来。

    一、相关环境:

         - Intellij IDEA 14.0.3 Ultimate

         - Tomcat 7.0.57

         - JDK 1.7.0_75

         - Spring 3.2.0

         - MySql 5.6

         - Maven 3.2.5

         - Bootstrap 3.3.2

           以上是我要做的这个demo所需要的东西,当然有些是可选的,版本也是可控的。比如说如果你用不惯Maven的话可以自行去官网下载jar包然后导入自己的工程中,如果想要学习下Maven可以看看《Maven视频教程》(偶然找到,这个老师做的视频都挺好的,推荐以下),不用完全的去学习Maven,懂大概意思后再去找找IntelliJ IDEA如何配置maven的相关文章就足够了。

          还有Bootstrap,纯粹是个人洁癖,不需要这可以去之。

          事先声明,请确保IntelliJ IDEA、Tomcat、MySql和JDK都已经安装好。Maven和Bootstrap的话能有则有。前者为了让导包更容易,后者为了让页面更美观。废话不多说,正式开始

    二、Maven的安装与在IntelliJ中的配置

        思来想去这节还是得讲讲,虽然比较简单但是很有作用。

        点击“Apache-Maven官方网站”进入官网:

         左上角红框处点击Download便进入了下载页面,往下拉,可发现,当前版本是3.2.5,点击下面红框中的apache-maven-3.2.5-bin.zip就可下载,下载后解压缩到相应目录下:

        接下来配几个环境变量,新增系统变量M2_HOME:即MAVEN安装目录:

        在Path中加入:%M2_HOME%in;    

        至此,maven便安装好了,接下来在IntelliJ中配置Maven。在Intellij中按快捷键 ctrl+alt+s,或者选择File-Settings,进入到设置页面,在搜索框中输入maven,如下图所示:

    一般如果环境变量配置好了的话,这三样IntelliJ都会默认识别的,如果未识别可能原因是你的环境变量没配好,我们确认这三样好了之后,则说明IntelliJ中Maven已经配置好了。

    三、IntelliJ中配置Tomcat

        为了提供完全周到的服务,还是在这里讲讲Tomcat的配置,Tomcat也属于Apache,所以安装方法与Maven相似,只是不用配置环境变量。请自行上网下载压缩包版本如

    • 32-bit Windows zip (pgp, md5, sha1)

    • 64-bit Windows zip (pgp, md5, sha1)

        不建议下载安装器,解压后到in目录下运行startup.bat,如图下所示,如果出现Server startup in xxxx ms说明Tomcat安装成功。

        在IntelliJ中,可以选择提前配置好Tomcat,或者之后配置。

        提前配置的话,打开Settings,搜索Application Server,如下图所示:

        点 + 号,选择Tomcat Server,导入Tomcat路径,OK,Apply,这样Tomcat就配置好了:

    四、创建Maven Web项目

        前面说了这么多,差不多基本的东西都保障了(当然如果你还没装jdk,那文章写到这我也是泪如雨下了)。现在进入正题,如何来创建一个Web项目。对于不使用Maven的开发者,可以直接建一个简单的Web项目。使用Maven的话,请按照图进行操作。

        菜单File->New Project可进入上图界面,首先选择左边栏Maven,再配置JDK(一般如果之前添加了JDK的话会自动填充,如未添加的话点击旁边的New将JDK目录导入进来就可以)。勾选“Create from archetype“,然后选中4处蓝色位置,点Next,进入如下界面:

        这里需要填写GroupId和ArtifactId还有Version,这三个属性目的是标识你的项目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache组织的项目,ArtifactId是tomcat,项目名为tomcat,而我当前使用的Version是7.0.57。这些只在发布时有用,在此可以随便填写,填好后点两次Next,到如下界面:

    给你的项目起个名字,然后Finish,这样一个maven管理的web项目就创建完成了,其结构如下图所示(需要等待加载一会):

        左边红框中展示了该项目的文件结构。我们可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。现在我们简单的运行一下,我们点击右边红框上的向下箭头,选择Edit Configuration以配置该项目的Tomcat服务器,

    点击左上角的 + 号,选择Tomcat Server->Local,进入如下界面:

        先给服务器改个名,在选择Deployment,这一步相当于部署应用到Tomcat,点击右边 + 号,选择Artifact,进入如下界面:

        选择war exploded那个选项,然后OK,这样猫头上的那个大X就消失了,即项目已部署完成,点击OK,如图所示:

        右上角出现了Tomcat的标识,点击右边那个箭头,启动Tomcat,然后在浏览器中输入localhost:8080,出现了Hello World!,说明都已经配置好了。

    五、Maven导入jar包

        既然我们要用SpringMVC开发,那肯定少不了SpringMVC的相关jar包。如果不使用Maven的话,那就需要去官网下载相关的jar包,然后导入到项目中。现在使用maven的话,就不需要上网找jar包了。具体容我一一道来。

        Maven所做的工作其实很简单,就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其实一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的,代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <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.gaussik</groupId>
      <artifactId>mooc</artifactId>
      <packaging>war</packaging>
      <version>1.0-SNAPSHOT</version>
      <name>mooc 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>
      <build>
        <finalName>mooc</finalName>
     
      </build>
    </project>

        我们可以看到这个文件包含了我们之前定义的本项目的gropId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖“的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version这三个必要信息。比如上面我们看到引入可一个junit包,格式如下:

    1
    2
    3
    4
    5
    6
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

        这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。那么如何查看这些jar包的3个信息呢,可能刚接触是开发者还不是很熟悉,这个时候就需要查阅仓库了。比如我们需要引入Spring核心jar包spring-core,打开Maven Repository搜索spring-core,进入如下界面:

        点击进入红框选中的Spring Core,如下所示,可以看到各版本的使用情况:

        先加入我们需要4.1.4.RELEASE版本的spring-core.jar,我们点击该版本,进入如下界面,发现它给出了这个版本jar包的依赖引用方法,把红框中代码复制到pom.xml的<dependicies>中后,发现右上角出现了maven的询问,是否要导入改变:

        点击Import Changes,Maven就会开始自动下载jar包到本地(默认C盘,不过是可以修改的),然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:

        可以发现,虽然我们只写了一个依赖,但是它导入了两个jar包,也就是说,导入某个jar包时,与它密切相关的jar包也会同时被导入进来。

        那么,除了spring-core,我还要spring-context,复制spring-core的<dependency>,将spring-core改为spring-context,如下:

    1
    2
    3
    4
    5
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.1.4.RELEASE</version>
    </dependency>

        然后Import Changes,查看External Libraries,会不会发现,瞬间导入了好多jar包当然不是瞬间,这得看你的网速了)呢:

        这就是Maven的强大之处,如果你需要使用SpringMVC开发网站的话,只需记住几个重要的包的名字,就可以轻松将所有包导入项目中。

        长话短说,现在我们要进行SpringMVC的开发,请把你的pom.xml编程下面的样子,当然不要改你的grupId等信息(从modelVersion到url都不要动):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <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.gaussik</groupId>
        <artifactId>mooc</artifactId>
        <packaging>war</packaging>
        <version>1.0-SNAPSHOT</version>
        <name>mooc Maven Webapp</name>
        <url>http://maven.apache.org</url>
     
        <properties>
            <spring.version>3.2.0.RELEASE</spring.version>
            <spring-data.version>1.2.0.RELEASE</spring-data.version>
        </properties>
     
        <dependencies>
        </dependencies>
     
     
        <build>
            <finalName>mooc</finalName>
        </build>
    </project>

        请在<dependencies>中加入以下依赖:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>
     
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
     
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
        </dependency>
     
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
            <scope>provided</scope>
        </dependency>
     
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
     
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>${spring.version}</version>
            <scope>test</scope>
        </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>${spring-data.version}</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>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20080701</version>
        </dependency>

        我们可以发现,除了导入了spring相关jar包,还有一些其他的包,这些包都是有作用的,我们后面慢慢说。如果不使用Maven请自行下载spring、hibernate、mysql、jstl、javax-servlet、json等相关jar包然后导入到工程中。至此,jar包的导入就完成了,我们按 ctrl+alt+shift+s,或者File->Project Structure查看一下项目结构,看看有什么问题:

        由于之后我们要开始写代码了,先做一些配置,选择Modules,在mooc的srcmain文件夹中新建一个文件夹,取名为java:

    选中java文件夹,点击上面的Make as:Sources,该文件夹就会变成蓝色,用以保存java代码。

    六、SpringMVC实践

        进行完上面的配置,那就说明现在基本的开发和运行环境已经搭建好了,现在要开始进行SpringMVC的网站开发。

    。。。待续

  • 相关阅读:
    快速收录方法
    .NET学习网址大全,不得不上,国内外经典网站
    首篇文章测试。
    DropDownList的用法
    SqlServer初级学习笔记
    GDI编程开发
    C#继承细谈
    web开发的一些小零碎知识点(一)
    Js实现全选和批量删除
    IEnumberable和IEnumberator理解
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/4459274.html
Copyright © 2011-2022 走看看