SSM框架整合
Spring + Spring MVC + MyBatis
Spring MVC 负责实现 MVC 设计模式,MyBatis 负责数据持久层,Spring 负责管理 Spring MVC 和 MyBatis 相关对象的创建和依赖注入。
- 创建 Maven 工程,pom.xml
org.springframework
spring-webmvc
5.0.11.RELEASE
org.springframework
spring-jdbc
5.0.11.RELEASE
org.springframework
spring-aop
5.0.11.RELEASE
org.springframework
spring-aspects
5.0.11.RELEASE
org.mybatis
mybatis
3.4.5
org.mybatis
mybatis-spring
1.3.1
mysql
mysql-connector-java
8.0.11
c3p0
c3p0
0.9.1.2
jstl
jstl
1.2
javax.servlet
javax.servlet-api
3.1.0
org.projectlombok
lombok
1.18.6
provided
- web.xml 中配置 SpringMVC、Spring、字符编码过滤器、加载静态资源。
Archetype Created Web Application
contextConfigLocation
classpath:spring.xml
org.springframework.web.context.ContextLoaderListener
dispatcherServlet
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
dispatcherServlet
/
characterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
characterEncodingFilter
/*
default
*.js
default
*.css
default
*.jpg
- 在 spring.xml 中配置 MyBatis 和 Spring 的整合。
<?xml version="1.0" encoding="UTF-8"?>
- config.xml 配置一些 MyBatis 辅助信息,比如打印 SQL 等。
<?xml version="1.0" encoding="UTF-8"?>
- 配置 springmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
- 实体类
package com.southwind.entity;
import lombok.Data;
@Data
public class User {
private long id;
private String name;
private String password;
private double score;
}
- UserRepository
package com.southwind.repository;
import com.southwind.entity.User;
import java.util.List;
public interface UserRepository {
public List findAll();
}
- UserRepository.xml
<?xml version="1.0" encoding="UTF-8" ?>
- UserService
package com.southwind.service;
import com.southwind.entity.User;
import java.util.List;
public interface UserService {
public List findAll();
}
- UserServiceImpl
package com.southwind.service.impl;
import com.southwind.entity.User;
import com.southwind.repository.UserRepository;
import com.southwind.service.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 findAll() {
return userRepository.findAll();
}
}
- UserHandler
package com.southwind.controller;
import com.southwind.service.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("/findAll")
public ModelAndView findAll(){
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("index");
modelAndView.addObject("list",userService.findAll());
return modelAndView;
}
}
参考文章
1小时学会SSM框架整合
【创作不易,望点赞收藏,若有疑问,请评论,谢谢】