四: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. 【DL论文精读笔记】Object Detection in 20 Y ears: A Survey目标检测综述

    目标检测20年综述(2019) 摘要 Abstract 该综述涵盖了400篇目标检测文章,时间跨度将近四分之一世纪.包括目标检测历史上的里程碑检测器.数据集.衡量指标.基本搭建模块.加速技术,最近的s ...

  2. C温故补缺(九):字节对齐与排序

    字节对齐与排序 字节对齐的原因与字节排序 取自:VisualEther 原文档下载:Gitee _packed _packet用于结构体中变量在内存中的对齐.如 typedef struct test ...

  3. C# Panel动态添加滚动条

    /// <summary> /// panel控件的事件:在向该控件添加控件时发生 /// </summary> private void panel1_ControlAdde ...

  4. qtcreator配置cmake+mingw开发环境

    环境准备 cmake 添加到PATH环境变量. mingw: 这里我用的mingw是Qt自带的,我将其添加到PATH环境变量中. 在cmd中执行 mingw32-make.exe 和 cmake查看命 ...

  5. Referenced file contains errors (http://mybatis.org/dtd/mybatis-3-config.dtd). For more information, right click on the message in the Problems View and select "Show Details..."

    mybatis配置文件报错Referenced file contains errors mybatis的配置文件报错 The errors below were detected when vali ...

  6. 【Java EE】Day02 MySQL概念、软件、语句

    〇.总结 1. 一.数据库的基本概念 1.概念 用于存储和管理数据的仓库 特点: 持久化存储,本质是文件系统 方便存储和管理数据 使用统一方式(MySQL)操作 常见的数据库软件: MySQL:Ora ...

  7. rate-limit 一款 java 开源渐进式分布式限流框架使用介绍

    项目简介 rate-limit 是一个为 java 设计的渐进式限流工具. 目的是为了深入学习和使用限流,后续将会持续迭代. 特性 渐进式实现 支持独立于 spring 使用 支持整合 spring ...

  8. 直播报名|资深云原生架构师分享服务网格在腾讯 IT 业务的落地实践

    云原生在近几年的发展越来越火热,作为云上最佳实践而生的设计理念,也有了越来越多的实践案例,而一个个云原生案例的背后,是无声的巨大变革. 腾讯云主办首个云原生百科知识直播节目--<云原生正发声&g ...

  9. python 之选择结构(if --elif --else)

    python中有三种结构:顺序结构.选择结构.循环结构,此处介绍选择结构. if -- else 结构: if 判断条件: 执行语句 else: 执行语句 当if后面的判断条件为真(True)时,执行 ...

  10. cs231n__4.1 Backpropagation and Neural Network

    CS231n 4.1 Backpropagation 回顾: 两个损失函数: 优化的方法: 如何计算梯度: 用有限差分估计 直接计算偏导数(解析梯度) 今天,我们要学习如何计算任意复杂度的解析梯度 要 ...