Bootstrap

【从零开始 图文详解】IDEA整合SSM框架:Spring+SpringMVC+Mybatis

1 准备

IntelliJ IDEA
Tomcat
JDK
Maven
mysql
spring、springmvc、mybatis 了解

现在假设如上条件你都具备,那么通过我这篇博客 你一定可以整合出 SSM 框架,完成如下效果

这里写图片描述

整个博客共分为三部分:

  • 建立 基于 Maven 的 WEB 项目,启动 Tomcat ,项目启动
  • 整合 Mybatis+Spring ,进行单元测试 可以完成从数据库查询出数据功能
  • 整合 Mybaits+Spring+SpringMVC,输入Url 完成整个 MVC 的流程

2 步骤

因为说的比较细,所以前面第一部分都了解可以跳过。

2.1 第一部分

1.新建基于 Maven 的Web工程
这里写图片描述

2.填写 GroupId 和 ArtifactId,参考

 groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。

这里写图片描述

3.填写 Maven 配置。
这里写图片描述

图片中1、2、3分别:
1:首先你要先配置好 Maven,如果配置好了,去 CMD DOSS 界面下输入mvn --version 命令,如果有显示,则代表已经配置好了,如果没,下载maven,配置环境变量。
maven下载地址

2:选择我们的 maven 文件夹下的 setting,这里特别要注意,可能因为 “墙”的原因,下载 maven jar 包 很容易卡住,所以建议在 setting.xml 配置国内镜像,比如阿里云。

     <!-- 复制如上一段镜像代码配置,添加阿里云镜像 -->
     <mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </mirror>

这里写图片描述

在相应位置填上如上代码即可。

3.这里为了从头开始,我新建了个仓库地址。这里大家随意,也可以和我一样。
这里写图片描述

4.填写工程名,module名,前者是 workspace 后者代表一个项目
这里写图片描述

5.建立架构包

这里写图片描述
如果这里弹出此对话框,记得点击 auto。

这里写图片描述

这里写图片描述

新建文件夹,利用Sources Resources 两个标签分别转化 Java 和 Resources 文件夹

6.新建tomcat并且配置
这里写图片描述
这里写图片描述

7.启动项目
这里写图片描述

2.2 第二部分

1.添加 maven 依赖。因为 pom.xml 里面 jar 包太多,太占内容,所以从源码中复制吧。

2.因为SSM三者整合全部放在一个 .xml 中太杂。所以这里拆成三个
spring-mybaits.xmlspring-servicespring-web
配置 spring-mybatis.xml ,包含如下内容:

  • 数据库配置文件 jdbc.properties。包含数据库地址 密码 库名等等。
    <!-- 1.配置数据库相关参数properties的属性:${url} -->
    <context:property-placeholder location="classpath:jdbc.properties" />
  • 连接池。这里使用 c3p0。
   <!-- 2.数据库连接池 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 配置连接池属性 -->
        <property name="driverClass" value="${jdbc.driver}" />
        <property name="jdbcUrl" value="${jdbc.url}" />
        <property name="user" value="${jdbc.username}" />
        <property name="password" value="${jdbc.password}" />

        <!-- c3p0连接池的私有属性 -->
        <property name="maxPoolSize" value="30" />
        <property name="minPoolSize" value="10" />
        <!-- 关闭连接后不自动commit -->
        <property name="autoCommitOnClose" value="false" />
        <!-- 获取连接超时时间 -->
        <property name="checkoutTimeout" value="10000" />
        <!-- 当获取连接失败重试次数 -->
        <property name="acquireRetryAttempts" value="2" />
    </bean>
  • 配置SqlSessionFactory对象。专用来获取 sqlSession。
    <!-- 3.配置SqlSessionFactory对象 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <!-- 注入数据库连接池 -->
        <property name="dataSource" ref="dataSource" />
 
;