首页 > 其他分享 >基于spring的ssm整合

基于spring的ssm整合

时间:2024-09-18 18:22:14浏览次数:9  
标签:xml jdbc 创建 spring ssm 整合 org import public

目录

基于spring的ssm整合

Spring 框架

SpringMVC 框架

MyBatis 框架

1.创建项目

2.导入依赖

3.导入sql

4.创建jdbc.propries文件

1)mysql8以下

2)mysql8以上的

5.创建mybatis-config.xml配置文件

6.创建spring-Config.xml文件

7.创建项目所需包和类

1)创建mapper包,并且创建UserMapper接口文件

UserMapper

2)在resources文件下创建mapper,并且创建UserMapper.xml文件

3)创建service包,创建MyService接口,并且创建impl包实现MyService

MyService

​编辑

MyServiceImpl

4)创建controller包,并且创建MyController

5)创建enty包,并且创建User实体类

User实体类

8.为项目添加web.xml文件

1)找到项目的pom.xml文件,修改为war包

2)添加web.xml文件

1-按ctrl+Shift+alt+s 弹出界面

2-操作如下

9.配置web.xml文件

10.为项目配置tomcat

11.启动测试

附录

1.sql

usersql  

下载地址 

2.springConfig配置文件

3.mybatis-config配置文件

4.web.xml配置文件

5.jdbc.properies文件


基于spring的ssm整合

        SSM框架指的是Spring、SpringMVC和MyBatis三个Java框架的整合。这三个框架可以一起使用来构建一个功能完整的企业级应用。

  1. Spring 框架

    1. Spring是一个开源的轻量级Java EE框架,主要用来解决企业应用开发中的复杂性问题。Spring的核心特性可以将应用的各种组件进行解耦,它提供了依赖注入(Dependency Injection, DI)和面向切面编程(AOP)等功能。Spring还提供了一系列模块如Spring MVC用于Web层的支持。
  2. SpringMVC 框架

    1. SpringMVC是Spring框架的一个模块,它是一个基于MVC设计模式的轻量级Web框架。SpringMVC负责处理HTTP请求和响应,并且可以与Spring框架无缝集成。它定义了请求-响应模型,简化了Web应用的开发流程。
  3. MyBatis 框架

    1. MyBatis是一个优秀的持久层框架,它内部封装了JDBC API的操作,简化了数据访问层(DAL)的编程。它支持SQL查询、更新、事务管理等操作,同时也支持存储过程。

1.创建项目

2.导入依赖

<dependencies>
    <!--web依赖-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>6.1.12</version>
    </dependency>
    <!--spring-context-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>6.1.12</version>
    </dependency>
    <!--mybatis-->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.16</version>
    </dependency>
    <!--分页插件-->
    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>6.1.0</version>
    </dependency>
    <!--servlet-api-->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>jakarta.servlet</groupId>
        <artifactId>jakarta.servlet-api</artifactId>
        <version>6.1.0</version>
    </dependency>
    <!--druid连接池-->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.2.7</version>
    </dependency>
    <!--mysql驱动-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.33</version>
    </dependency>

    <!--mybatis-Spring-->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>3.0.4</version>
    </dependency>

    <!--jackson-->
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.17.2</version>
    </dependency>


</dependencies>

3.导入sql

4.创建jdbc.propries文件

1)mysql8以下

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root

2)mysql8以上的

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root

5.创建mybatis-config.xml配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="cacheEnabled" value="true"/>
        <setting name="lazyLoadingEnabled" value="true"/>
        <setting name="multipleResultSetsEnabled" value="true"/>
    </settings>


    <!--配置分页插件-->
    <plugins>
        <plugin interceptor="www.github.pagehelper.PageInterceptor"></plugin>
    </plugins>
</configuration>

6.创建spring-Config.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/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
               http://www.springframework.org/schema/context/spring-context.xsd

               http://www.springframework.org/schema/mvc
               http://www.springframework.org/schema/mvc/spring-mvc.xsd

">
    <!--开启包扫描-->
    <context:component-scan base-package="org.xiji"/>
    <!--开启springmvc注解驱动-->
    <mvc:annotation-driven/>

    <!--导入外部配置文件-->
    <context:property-placeholder location="classpath:jdbc.properties"/>

    <!--配置druid数据源-->
    <bean id="datasource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>
    <!--配置mybatis-->
    <bean id="sessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="datasource"/>
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <!--配置xml文件的位置-->
        <property name="mapperLocations" value="classpath:mapper/*.xml"/>
    </bean>
    <!--配置mapper扫描位置-->
    <bean  class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="org.xiji.mapper"/>
        <property name="sqlSessionFactoryBeanName" value="sessionFactoryBean"/>
    </bean>

</beans>

7.创建项目所需包和类

1)创建mapper包,并且创建UserMapper接口文件

UserMapper
package org.xiji.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.xiji.enty.User;

import java.util.List;

@Mapper
public interface UserMapper {

    public List<User> test() ;
}

2)在resources文件下创建mapper,并且创建UserMapper.xml文件

<?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="org.xiji.mapper.UserMapper">


    <select id="test" resultType="org.xiji.enty.User">
        select * from user
    </select>
</mapper>

:红色位置为你的mapper接口文件位置

3)创建service包,创建MyService接口,并且创建impl包实现MyService

MyService
package org.xiji.serive;

import org.xiji.enty.User;

import java.util.List;

public interface MyService {
    List<User> test();
}

MyServiceImpl
package org.xiji.serive.impl;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.xiji.enty.User;
import org.xiji.mapper.UserMapper;
import org.xiji.serive.MyService;

import java.util.List;

@Service
public class MyServiceImpl implements MyService {
    @Autowired
    private UserMapper userMapper;


    @Override
    public List<User> test() {
        //返回数据
        //设置分页插件
        Page<User> user = PageHelper.startPage(1, 2);

         userMapper.test();

        List<User> result = user.getResult();

        return  result;
    }
}

4)创建controller包,并且创建MyController

package org.xiji.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.xiji.enty.User;
import org.xiji.mapper.UserMapper;
import org.xiji.serive.MyService;

import java.util.List;

@Controller
public class MyController {
    @Autowired
    MyService myService;


    @RequestMapping(value = "/",produces = {})
    @ResponseBody
    public List<User> test()
    {
        List<User> test = myService.test();
        return test;

    }


}

5)创建enty包,并且创建User实体类

User实体类
package org.xiji.enty;

public class User {
    private int id;
    private String username;
    private String password;
    private String userInfo;

    public User() {
    }

    public User(int id, String username, String password, String userInfo) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.userInfo = userInfo;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", userInfo='" + userInfo + '\'' +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUserInfo() {
        return userInfo;
    }

    public void setUserInfo(String userInfo) {
        this.userInfo = userInfo;
    }
}

8.为项目添加web.xml文件

1)找到项目的pom.xml文件,修改为war包

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.xiji</groupId>
    <artifactId>spring-ssm</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!--web依赖-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>6.1.12</version>
        </dependency>
        <!--spring-context-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>6.1.12</version>
        </dependency>
        <!--mybatis-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.16</version>
        </dependency>
        <!--分页插件-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>6.1.0</version>
        </dependency>
        <!--servlet-api-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
        </dependency>
        
        <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>6.1.0</version>
        </dependency>
        <!--druid连接池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.7</version>
        </dependency>
        <!--mysql驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.33</version>
        </dependency>

        <!--mybatis-Spring-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>3.0.4</version>
        </dependency>
        
        <!--jackson-->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.17.2</version>
        </dependency>
    </dependencies>

</project>

2)添加web.xml文件

1-按ctrl+Shift+alt+s 弹出界面

2-操作如下

9.配置web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<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_4_0.xsd"
         version="4.0">

    <servlet>
        <servlet-name>MyPro</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--配置spring配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springConfig.xml</param-value>
        </init-param>
        <!--初始化提前-->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>MyPro</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>

10.为项目配置tomcat

add ==>tomcat ===>local

configure===>fix===>任选一个

application contenx 修改为 /

11.启动测试

访问成功 http://localhost:8080/

附录

1.sql

usersql  

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user`  (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '用户id',
  `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名字',
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户密码',
  `userInfo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户信息',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES (1, 'xiji', '123456', 'helloword');
INSERT INTO `user` VALUES (2, 'xiaojiu', '123456', 'helloword');
INSERT INTO `user` VALUES (3, 'as', '123456', 'helloword');
INSERT INTO `user` VALUES (4, 'zs', '123456', 'helloword');

SET FOREIGN_KEY_CHECKS = 1;

下载地址 

 user.sql官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘

2.springConfig配置文件

<?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/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
               http://www.springframework.org/schema/context/spring-context.xsd

               http://www.springframework.org/schema/mvc
               http://www.springframework.org/schema/mvc/spring-mvc.xsd

">
    <!--开启包扫描-->
    <context:component-scan base-package="org.xiji"/>
    <!--开启springmvc注解驱动-->
    <mvc:annotation-driven/>

    <!--导入外部配置文件-->
    <context:property-placeholder location="classpath:jdbc.properties"/>

    <!--配置druid数据源-->
    <bean id="datasource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>
    <!--配置mybatis-->
    <bean id="sessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="datasource"/>
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <!--配置xml文件的位置-->
        <property name="mapperLocations" value="classpath:mapper/*.xml"/>
    </bean>
    <!--配置mapper扫描位置-->
    <bean  class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="org.xiji.mapper"/>
        <property name="sqlSessionFactoryBeanName" value="sessionFactoryBean"/>
    </bean>

</beans>

3.mybatis-config配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="cacheEnabled" value="true"/>
        <setting name="lazyLoadingEnabled" value="true"/>
        <setting name="multipleResultSetsEnabled" value="true"/>
    </settings>


    <plugins>
        <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
    </plugins>

</configuration>

4.web.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<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_4_0.xsd"
         version="4.0">

    <servlet>
        <servlet-name>MyPro</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--配置spring配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springConfig.xml</param-value>
        </init-param>
        <!--初始化提前-->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>MyPro</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>

5.jdbc.properies文件

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root

标签:xml,jdbc,创建,spring,ssm,整合,org,import,public
From: https://blog.csdn.net/2301_76862031/article/details/142299091

相关文章

  • 基于springboot的就业信息管理系统。Javaee项目,springboot项目。
    演示视频:基于springboot的就业信息管理系统。Javaee项目,springboot项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringBoot+Mybatis+Maven来实现,前端采用了layui框架。MySQL数据库作为系统数据储存平台,采用JDBC技术进行数据库连接,实现了基......
  • 基于SSM的抗疫物资管理系统(数据库表结构文档)。Javaee项目。
    演示视频基于SSM的抗疫物资管理系统(数据库表结构文档)。Javaee项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringMvc+Mybatis+Jsp+Bootstrap来实现。MySQL数据库作为系统数据储存平台,采用JDBC技术进行数据库连接,实现了基于B/S结构的Web系......
  • 基于SSM的美妆商城网站(有报告)。Javaee项目。
    演示视频:基于SSM的美妆商城网站(有报告)。Javaee项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringMvc+Mybatis+Jsp+Vue+layui+Elementui来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。系统设计思想一个成......
  • Spring Cloud 5.4: 将多工程整合成多模块工程-eureka client + openfeign二合一
    截至目前,还剩eurekaclient和openfeign两个工程没有整合,但这两个工程本来就应该是一个工程。想一想,eurekaclient作为微服务的客户端,是真正的微服务业务处理模块;而openfeign工程作为服务间调用的例子,本就应该应用在微服务模块上,所以本章的内容不是单纯移植,而是创建两个服务模块serv......
  • ‌Spring的生命周期主
    ‌Spring的生命周期主要包括以下几个阶段‌: ‌实例化(Instantiation)‌:SpringIoC容器根据配置文件或注解信息创建Bean的实例。‌属性赋值(DependencyInjection)‌:SpringIoC容器为Bean的属性设置值,这通常包括依赖注入(DI),即将其他Bean注入到当前Bean中。‌初始化(Initialization......
  • Springboot计算机毕业设计影院管理系统&开发环境*数据库
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,电影信息,电影类型,影厅信息,票房数据开题报告内容一、选题背景与意义随着信息技术的飞速发展和互联网应用的普及,数字化管理已成为提升各行业效率、优化服......
  • Javaweb之SpringBootWeb案例之修改员工的修改回显的详细解析
     3.修改员工需求:修改员工信息编辑在进行修改员工信息的时候,我们首先先要根据员工的ID查询员工的信息用于页面回显展示,然后用户修改员工数据之后,点击保存按钮,就可以将修改的数据提交到服务端,保存到数据库。具体操作为:根据ID查询员工信息保存修改的员工信息3.1查询回显3.1.1接口......
  • Springboot计算机毕业设计影视网站31oz2&源码*数据库
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,影视分类,影视信息,影视资讯开题报告内容一、项目背景随着互联网技术的迅猛发展,视频内容已成为人们日常生活中不可或缺的一部分。无论是娱乐休闲还是知识......
  • Transformer、RNN和SSM的相似性探究:揭示看似不相关的LLM架构之间的联系
    通过探索看似不相关的大语言模型(LLM)架构之间的潜在联系,我们可能为促进不同模型间的思想交流和提高整体效率开辟新的途径。尽管Mamba等线性循环神经网络(RNN)和状态空间模型(SSM)近来备受关注,Transformer架构仍然是LLM的主要支柱。这种格局可能即将发生变化:像Jamba、Samba和Gri......
  • Springboot计算机毕业设计永川一心一房地产平台95ho0
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,置业指南,房源信息,租赁信息,购房信息,租房信息,户型分类,地区分类,商家开题报告内容一、选题背景与意义随着城市化进程的加速和居民生活水平的提高,房地产......