四:SSM框架整合

Spring+Spring Mvc+Mybatis整合:

代码实现:

1.创建maven工程 pom.xml

  <dependencies>
<!--  spring mvc-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>5.2.3.RELEASE</version>
    </dependency>
<!--    spring JDBC-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>5.2.3.RELEASE</version>
    </dependency>
<!--    Spirng Aop-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>5.2.3.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aspects</artifactId>
      <version>5.2.3.RELEASE</version>
    </dependency>
<!--    Mybatis-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.3.1</version>
    </dependency>
    <!--     mysql的驱动 -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.19</version>
    </dependency>
<!--    C3P0-->
    <dependency>
      <groupId>c3p0</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.1.2</version>
    </dependency>
<!--    JSTL-->
    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
<!--    ServletAPI-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
    </dependency>
    <!--      lombox-->
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.10</version>
    </dependency>
  </dependencies>

2.依次搭建 Web.xml

配置Spring Mvc 、Spring 设置字符编码过滤器、加载静态资源

<!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>
  <display-name>Archetype Created Web Application</display-name>
  <!--  Spring-->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:Spring.xml</param-value>
  </context-param>
  <!--  监听器-->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!--  SpingMvc-->
  <servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

  <!--  字符编码过滤器-->
  <filter>
    <filter-name>character</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
    <!--    请求相应编码-->
    <init-param>
      <param-name>forceRequestEncoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceResponseEncoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
    <init-param>
      <param-name>character</param-name>
      <param-value>/*</param-value>
    </init-param>
  </filter>
  <!--    加载静态资源-->
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.js</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.css</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.jpg</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.png</url-pattern>
  </servlet-mapping>
</web-app>

3创建相应框架的配置文件

spring.xml

springmvx.xml

mybatis.xml

  • Spring.xml

    xml<br /><br /></p></li>
    </ul>
    ¨K9K

    ¨K23K

    ¨K10K

    ¨K24K

    ¨K11K

    ¨K25K

    ¨K12K

    ¨K26K

    ¨K13K

    ¨K27K

    </beans>

    • mybatis.xml

      xml<br /><br /><br /><br /> <br /> <br /> <br /> </p></li>
      </ul>
      ¨K14K

      ¨K28K

      ¨K15K

      ¨K29K

      ¨K16K

      ¨K30K

      </configuration>

      • Springmvc.xml

        <?xml version="1.0" encoding="UTF-8"?>
        <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"
             xmlns:mvc="http://www.springframework.org/schema/cache"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
              http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd">
          <mvc:annotation-driven/>
          <!--    配置扫包-->
          <context:component-scan base-package="com.southwind"></context:component-scan>
          <!--    视图解析器-->
          <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver">
              <!--        前缀-->
              <property name="prefix" value="/"></property>
              <!--        后缀-->
              <property name="suffix" value=".jsp"></property>
          </bean>
        </beans>

      4.实体类

      package com.southwind.entity;

      import lombok.Data;

      @Data
      public class User {
          private Integer id;
          private String name;
          private Integer money;
      }

      5.Handeler

      package com.southwind.controller;

      import com.southwind.serivce.UserService;
      import org.springframework.beans.factory.annotation.Autowired;
      import org.springframework.stereotype.Controller;
      import org.springframework.web.bind.annotation.GetMapping;
      import org.springframework.web.bind.annotation.RequestMapping;
      import org.springframework.web.servlet.ModelAndView;

      @Controller
      @RequestMapping("/user")
      public class UserHandler {
          @Autowired
          private UserService userService;
          @GetMapping("index")
          public ModelAndView index(){
              ModelAndView modelAndView=new ModelAndView();
              modelAndView.setViewName("index");
              modelAndView.addObject("list",userService.findAll());
              return modelAndView;
          }
      }

      6.业务Service

      package com.southwind.serivce;

      import com.southwind.entity.User;

      import java.util.List;

      public interface UserService {
          public List<User>  findAll();
      }
      package com.southwind.serivce.impl;

      import com.southwind.entity.User;

      import com.southwind.repository.UserRepository;
      import com.southwind.serivce.UserService;
      import org.springframework.beans.factory.annotation.Autowired;
      import org.springframework.stereotype.Service;

      import java.util.List;

      @Service
      public class UserServiceImpl implements UserService {
          @Autowired
          private UserRepository userRepository;
          @Override
          public List<User> findAll() {
              return userRepository.findAll();
          }
      }

      7.持久层:Mybatis

      package com.southwind.repository;

      import com.southwind.entity.User;

      import java.util.List;

      public interface UserRepository {
          public List<User> findAll();
      }
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE mapper
              PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
              "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
      <mapper namespace="com.shouthwind.repository.UserRepository" >
          <select id="findAll" resultType="User">
              select *from  people
          </select>
      </mapper>

      8.jsp视图

      <%--
        Created by IntelliJ IDEA.
        User: 郝泾钊
        Date: 2022-04-09
        Time: 21:43
        To change this template use File | Settings | File Templates.
      --%>
      <%@ page contentType="text/html;charset=UTF-8" language="java" %>
      <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
      <%@page isELIgnored="false" %>
      <html>
      <head>
          <title>Title</title>
      </head>
      <body>
          <c:forEach items="${list}" var="user">
              ${user.id}-${user.name}-${user.money}
          </c:forEach>
      </body>
      </html>

四:SSM框架整合的更多相关文章

  1. 基于maven的ssm框架整合

    基于maven的ssm框架整合 第一步:通过maven建立一个web项目.                第二步:pom文件导入jar包                              (1 ...

  2. 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  3. JAVAEE——宜立方商城01:电商行业的背景、商城系统架构、后台工程搭建、SSM框架整合

    1. 学习计划 第一天: 1.电商行业的背景. 2.宜立方商城的系统架构 a) 功能介绍 b) 架构讲解 3.工程搭建-后台工程 a) 使用maven搭建工程 b) 使用maven的tomcat插件启 ...

  4. 【转载】使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  5. SSM框架整合项目 :租房管理系统

    使用ssm框架整合,oracle数据库 框架: Spring SpringMVC MyBatis 导包: 1, spring 2, MyBatis 3, mybatis-spring 4, fastj ...

  6. JavaWeb之ssm框架整合,用户角色权限管理

    SSM框架整合 Spring SpringMVC MyBatis 导包: 1, spring 2, MyBatis 3, mybatis-spring 4, fastjson 5, aspectwea ...

  7. SSM框架整合环境构建——基于Spring4和Mybatis3

    目录 环境 配置说明 所需jar包 配置db.properties 配置log4j.properties 配置spring.xml 配置mybatis-spring.xml 配置springmvc.x ...

  8. springmvc(二) ssm框架整合的各种配置

    ssm:springmvc.spring.mybatis这三个框架的整合,有耐心一步步走. --WH 一.SSM框架整合 1.1.整合思路 从底层整合起,也就是先整合mybatis与spring,然后 ...

  9. SSM框架整合的其它方式

    ---------------------siwuxie095                                 SSM 框架整合的其它方式         1.主要是整合 Spring ...

  10. SSM框架整合过程总结

    -----------------------siwuxie095                                 SSM 框架整合过程总结         1.导入相关 jar 包( ...

随机推荐

  1. 通过docker部署grafana和mysql

    阅读本文需要一定的Linux, Docker与MySQL知识, 例如: 会启动容器, 进入容器; 会创建表, 会使用INSERT语句, 会使用SELECT语句... 1. 简介 2. 网络设置 - 2 ...

  2. 基于python的数学建模---场线与数值解(微分方程)

    import numpy as np from scipy import integrate import matplotlib.pyplot as plt import sympy def plot ...

  3. 【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「Logback-MDC篇」

    日志追踪 日志追踪对于功能问题的排查和数据流转的路径分析时非常重要的,有了全链路日志追踪体系机制可以非常有效且快速的定位问题,但在多线程环境中,若没有相关成熟的框架的支持,想要实现日志追踪,就需要手动 ...

  4. python安装/环境变量配置/多版本共存

    Python学习之路Day02: 一.今日学习内容概括: 计算机五大组成部分详解 计算机三大核心硬件 操作系统 编程与编程语言 编程语言的发展 编程语言分类 python解释器 Python Pyth ...

  5. MySQL数据库:7、SQL常用查询语句

    Python基础之MySQL数据库 目录 Python基础之MySQL数据库 一.SQL语句常用查询方法 前期数据准备 1.基本查询 2.编写SQL语句的小技巧 3.查询之where筛选 3.1.功能 ...

  6. tomcat 随windows启动

    有时候服务器会突然断电,维护管理员只会帮我们启动服务器,但是不会不会帮我们启动Tomcat. 1.进入tomcat的bin文件夹,找到startup.bat,右键生成快捷方式到桌面. 2.点击桌面左下 ...

  7. html CheckBox

    1.获取单个checkbox选中项(三种写法)$("input:checkbox:checked").val()或者$("input:[type='checkbox']: ...

  8. Vue3“直接”修改props

    父组件 import { reactive } from 'vue'; //对话框数据 const show = reactive({ isshow: false, }); //打开对话框 const ...

  9. Apache Dubbo 多语言体系再添新员:首个 Rust 语言版本正式发布

    Dubbo Rust 定位为 Dubbo 多语言体系的重要实现,提供高性能.易用.可扩展的 RPC 框架,同时通过接入 Dubbo Mesh 体系提供丰富的服务治理能力.本文主要为大家介绍 Dubbo ...

  10. 【极客时间】大数据概述及HDFS介绍