且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

spring+springMVC+mybatis的整合 part2

更新时间:2022-08-12 16:14:39

可能在part1后有人会直接启动来测试项目是不是能跑得起来,不过是不行的,都会报404
这里不是web.xml没配好,是因为没有把项目部署在tomcat

在IDEA中配置tomcat

Paste_Image.png
添加新的tomcat配置
Paste_Image.png
local是本地的tomcat,remote是远程的tomcat,一般选择本地的tomcat

Paste_Image.png

名称可以随便起
application server是选择你添加好的tomcat
HTTP port是你tomcat的端口号 默认为8080,不用改
JMX portJava管理工具扩展(JavaManagementExtension),也是默认即可
更多JMX介绍可以看https://my.oschina.net/itjava/blog/102001
生成之前先编译,这个也是默认就可以了
由于没有部署Deployment,所以出现了警告

下面添加tomcat

application server最右边有个configure配置按钮

Paste_Image.png

tomcat homebase directory都是tomcat的安装目录,两个一样的
Paste_Image.png

Name对应着你所要选择的application server

部署webapp项目

最最最关键的一步:部署Deployment

Paste_Image.png

选择第一个
Paste_Image.png

webapp为项目的webapp,后面的名字可以自己定义,别忘了加/,
/一定要有,我这里设置成/ssm

Paste_Image.png

启动项目后,所访问到的url就是http://localhost:8080/ssm/

配置完后,在web浏览器中输入:http://localhost:8080/ssm/druid/index.html ,查看druid是否配置成功。

Paste_Image.png

如上面的图中,可以看到druid并没有把JDBC驱动列出来。这说明我们的项目的JDBC驱动要么没有设置,要么是数据库驱动的配置文件没做好。
在之前的web.xml中加上

<load-on-startup>1</load-on-startup>

启动时加载 ,不设置的话在页面第一次访问之后也会出现驱动的,这个参数表示启动服务的时候就初始化sevlet
所以现在web.xml文件就是

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1" metadata-complete="true">
  <!--<display-name>Archetype Created Web Application</display-name>-->
  <!--默认的首页-->
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>

  <!-- 如果是用maven命令生成的xml,需要修改servlet版本为3.1 -->
  <!-- 配置DispatcherServlet -->
  <servlet>
    <display-name>SSM-pjb</display-name>    <!-- 项目名称 -->
    <servlet-name>mvc-dispatcher</servlet-name> <!-- mvc调度器 -->
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- 配置springMVC需要加载的配置文件
        spring-dao.xml,spring-service.xml,spring-web.xml
        Mybatis - > spring -> springmvc
     -->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring/spring-*.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <!-- 默认匹配所有的静态资源,此处配置出错,会产生错误500 -->
    <url-pattern>/js/*</url-pattern>
    <url-pattern>/css/*</url-pattern>
    <url-pattern>/images/*</url-pattern>
    <url-pattern>/fonts/*</url-pattern>
  </servlet-mapping>

  <!--druid ==> WEB方式监控配置-->
  <servlet>
    <servlet-name>DruidStatView</servlet-name>
    <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>DruidStatView</servlet-name>
    <url-pattern>/druid/*</url-pattern>
  </servlet-mapping>
  <filter>
    <filter-name>druidWebStatFilter</filter-name>
    <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
    <init-param>
      <param-name>exclusions</param-name>
      <param-value>/public/*,*.js,*.css,/druid*,*.jsp,*.swf</param-value>
    </init-param>
    <init-param>
      <param-name>principalSessionName</param-name>
      <param-value>sessionInfo</param-value>
    </init-param>
    <init-param>
      <param-name>profileEnable</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>druidWebStatFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

重启服务,进入http://localhost:8080/ssm/druid/index.html

驱动成功显示出来了
mysql的驱动:com.mysql.jdbc.Driver
druid数据库连接池的驱动:com.alibaba.druid.proxy.DruidDriver

Paste_Image.png

主要参考于http://www.jianshu.com/u/86b79c50cfb3的SSM集成之路

主要参考于大牛Clone丶记忆的SSM集成之路