SSM整合

SSM整合

1.环境准备

    1.1 创建数据库和表结构

create database ssm;
create table account(
id int primary key auto_increment,
name varchar(100),
money double(7,2)
);

    1.2 创建Maven项目
 1.3 导入坐标并建立依赖


    UTF-8
    1.8
    1.8
    5.0.2.RELEASE
    1.6.6
    1.2.12
    5.1.6
    3.4.5
  

  

    
    
      org.aspectj
      aspectjweaver
      1.6.8
    

    
      org.springframework
      spring-aop
      ${spring.version}
    

    
      org.springframework
      spring-context
      ${spring.version}
    


    
      org.springframework
      spring-web
      ${spring.version}
    

    
      org.springframework
      spring-webmvc
      ${spring.version}
    

    
      org.springframework
      spring-test
      ${spring.version}
    

    
      org.springframework
      spring-tx
      ${spring.version}
    

    
      org.springframework
      spring-jdbc
      ${spring.version}
    

    
      junit
      junit
      4.12
      provided
    

    
      mysql
      mysql-connector-java
      ${mysql.version}
    

    
      javax.servlet
      servlet-api
      2.5
      provided
    

    
      javax.servlet.jsp
      jsp-api
      2.0
      provided
    

    
      jstl
      jstl
      1.2
    

    
    
      log4j
      log4j
      ${log4j.version}
    

    
      org.slf4j
      slf4j-api
      ${slf4j.version}
    

    
      org.slf4j
      slf4j-log4j12
      ${slf4j.version}
    
    
    
      org.mybatis
      mybatis
      ${mybatis.version}
    

    
      org.mybatis
      mybatis-spring
      1.3.0
    

    
      c3p0
      c3p0
      0.9.1.2
      jar
      compile
    

  

2. 整合步骤

    2.1 保证Spring框架在web工程中独立运行
  第一步:编写Spring配置文件并导入约束




    
    
        
        
    


    第二步:使用注解配置业务层

package com.llb.service.impl;

import com.llb.dao.AccountDao;
import com.llb.domain.Account;
import com.llb.service.AccountService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * Ceate By llb on 2019/8/22
 */
@Service("accountService")
public class AccountServiceImpl implements AccountService {

    @Autowired
    private AccountDao accountDao;

    @Override
    public List findAllAccount() {

        System.out.println("业务层:查询所有账户");

        return "";
    }

    @Override
    public void saveAccount(Account account) {

        System.out.println("保存了账户");

    }
}

    第三步:测试Spring能否独立运行

@Test
    public void testFindAll(){
        //加载配置文件
        ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
        //获取对象
        AccountService accountService = (AccountService) ac.getBean("accountService");
        //调用方法
        accountService.findAllAccount();


    }

    2.2 保证SpringMVC在web工程中独立运行
    第一步:在web.xml中配置核心控制器




  Archetype Created Web Application

  
  
    org.springframework.web.context.ContextLoaderListener
  
  
  
    contextConfigLocation
    classpath:applicationContext.xml
  

  
  
    dispatcherServlet
    org.springframework.web.servlet.DispatcherServlet
    
    
      contextConfigLocation
      classpath:springmvc.xml
    
    
    1
  
  
    dispatcherServlet
    /
  


        第二步:编写SpringMVC的配置文件




    
    
        
        
    

    
    
        
        
    

    
    
    
    

    
    

        第三步:编写Controller和jsp页面

/**
 * Ceate By llb on 2019/8/22
 */
@Controller
@RequestMapping("/account")
public class AccountController {

    @Autowired
    private AccountService accountService;

    @RequestMapping("/findAll")
    public String findAll(Model model){
        System.out.println("表现层:查询了所有账户");
       
        return "list";
    }

}

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title



    查询所有账户



    2.3 整合Spring和SpringMVC
    第一步:配置监听器实现启动服务创建容器


  
    characterEncodingFilter
    org.springframework.web.filter.CharacterEncodingFilter
    
    
      encoding
      UTF-8
    
  
  
  
    characterEncodingFilter
    /*
  

    2.4 保证Mybatis框架在web工程中独立运行
    配置SqlMapConfig.xml:




    
    
        
            
            
                
                
                
                
            
        
    

    
    
        
    
    

    2.5 整合Spring和Mybatis

注意:由于我们使用的是代理dao的模式,dao具体实现类由Mybatis使用代理方式创建,所以此时Mybatis配置文件不能删。
    当我们整合Spring和Mybatis时,Mybatis创建的Mapper.xml的文件名必须和Dao接口文件名一致。

        第一步:Spring接管Mybatis的Session工厂

 
    
    
        
        
        
        
    

    
    
        
    

    
    
        
    
    第二步:配置Spring事务
    
    
    
        
    

    
        
            
            
        
    


    
    
        
        
        
        
    

整合完成。
 



源码:github

你可能感兴趣的:(SSM整合)