SpringMVC|SpringMVC 整合SSM框架详解

整合SSM

环境要求
环境:
  • IDEA
  • MySQL5.7.19
  • Tomcat9
  • Maven3.6
要求:
需要熟练掌握MySQL数据库,Spring,JavaWeb及MyBatis知识,简单的前端知识;
数据库环境
创建一个存放书籍数据的数据库表
CREATE DATABASE `ssmbuild`; USE `ssmbuild`; DROP TABLE IF EXISTS `books`; CREATE TABLE `books` (`bookID` INT(10) NOT NULL AUTO_INCREMENT COMMENT '书id',`bookName` VARCHAR(100) NOT NULL COMMENT '书名',`bookCounts` INT(11) NOT NULL COMMENT '数量',`detail` VARCHAR(200) NOT NULL COMMENT '描述',KEY `bookID` (`bookID`)) ENGINE=INNODB DEFAULT CHARSET=utf8INSERTINTO `books`(`bookID`,`bookName`,`bookCounts`,`detail`)VALUES(1,'Java',1,'从入门到放弃'),(2,'MySQL',10,'从删库到跑路'),(3,'Linux',5,'从进门到进牢');

基本环境搭建
1、新建一Maven项目!ssmbuild , 添加web的支持
2、导入相关的pom依赖!
junitjunit4.12mysqlmysql-connector-java5.1.47com.mchangec3p00.9.5.2javax.servletservlet-api2.5javax.servlet.jspjsp-api2.2javax.servletjstl1.2org.mybatismybatis3.5.2org.mybatismybatis-spring2.0.2org.springframeworkspring-webmvc5.1.9.RELEASEorg.springframeworkspring-jdbc5.1.9.RELEASE

3、Maven资源过滤设置
src/main/java**/*.properties**/*.xmlfalsesrc/main/resources**/*.properties**/*.xmlfalse

4、建立基本结构和配置框架!
  • com.kuang.pojo
  • com.kuang.dao
  • com.kuang.service
  • com.kuang.controller
  • mybatis-config.xml

  • applicationContext.xml

Mybatis层编写
1、数据库配置文件 database.properties
jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8jdbc.username=rootjdbc.password=123456

2、IDEA关联数据库
3、编写MyBatis的核心配置文件

4、编写数据库对应的实体类 com.kuang.pojo.Books 使用lombok插件!
package com.kuang.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data@AllArgsConstructor@NoArgsConstructorpublic class Books {private int bookID; private String bookName; private int bookCounts; private String detail; }

5、编写Dao层的 Mapper接口!
package com.kuang.dao; import com.kuang.pojo.Books; import java.util.List; public interface BookMapper {//增加一个Bookint addBook(Books book); //根据id删除一个Bookint deleteBookById(int id); //更新Bookint updateBook(Books books); //根据id查询,返回一个BookBooks queryBookById(int id); //查询全部Book,返回list集合List queryAllBook(); }

6、编写接口对应的 Mapper.xml 文件。需要导入MyBatis的包;
insert into ssmbuild.books(bookName,bookCounts,detail)values (#{bookName}, #{bookCounts}, #{detail})delete from ssmbuild.books where bookID=#{bookID}update ssmbuild.booksset bookName = #{bookName},bookCounts = #{bookCounts},detail = #{detail}where bookID = #{bookID}select * from ssmbuild.bookswhere bookID = #{bookID}SELECT * from ssmbuild.books

7、编写Service层的接口和实现类
接口:
package com.kuang.service; import com.kuang.pojo.Books; import java.util.List; //BookService:底下需要去实现,调用dao层public interface BookService {//增加一个Bookint addBook(Books book); //根据id删除一个Bookint deleteBookById(int id); //更新Bookint updateBook(Books books); //根据id查询,返回一个BookBooks queryBookById(int id); //查询全部Book,返回list集合List queryAllBook(); }

实现类:
package com.kuang.service; import com.kuang.dao.BookMapper; import com.kuang.pojo.Books; import java.util.List; public class BookServiceImpl implements BookService {//调用dao层的操作,设置一个set接口,方便Spring管理private BookMapper bookMapper; public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper; }public int addBook(Books book) {return bookMapper.addBook(book); }public int deleteBookById(int id) {return bookMapper.deleteBookById(id); }public int updateBook(Books books) {return bookMapper.updateBook(books); }public Books queryBookById(int id) {return bookMapper.queryBookById(id); }public List queryAllBook() {return bookMapper.queryAllBook(); }}

OK,到此,底层需求操作编写完毕!
Spring层
1、配置Spring整合MyBatis,我们这里数据源使用c3p0连接池;
2、我们去编写Spring整合Mybatis的相关的配置文件;spring-dao.xml

3、Spring整合service层

Spring层搞定!再次理解一下,Spring就是一个大杂烩,一个容器!对吧!
SpringMVC层
1、web.xml
DispatcherServletorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:applicationContext.xml1DispatcherServlet/encodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingutf-8encodingFilter/*15

2、spring-mvc.xml
【SpringMVC|SpringMVC 整合SSM框架详解】

3、Spring配置整合文件,applicationContext.xml

配置文件,暂时结束!Controller 和 视图层编写
1、BookController 类编写 , 方法一:查询全部书籍
@Controller@RequestMapping("/book")public class BookController {@Autowired@Qualifier("BookServiceImpl")private BookService bookService; @RequestMapping("/allBook")public String list(Model model) {List list = bookService.queryAllBook(); model.addAttribute("list", list); return "allBook"; }}

2、编写首页 index.jsp
首页 - 锐客网a {text-decoration: none; color: black; font-size: 18px; }h3 {width: 180px; height: 38px; margin: 100px auto; text-align: center; line-height: 38px; background: deepskyblue; border-radius: 4px; }点击进入列表页

3、书籍列表页面 allbook.jsp
书籍列表 - 锐客网书籍列表 —— 显示所有书籍新增
书籍编号书籍名字书籍数量书籍详情操作
${book.getBookID()}${book.getBookName()}${book.getBookCounts()}${book.getDetail()}更改 |删除

4、BookController 类编写 , 方法二:添加书籍
@RequestMapping("/toAddBook")public String toAddPaper() {return "addBook"; }@RequestMapping("/addBook")public String addPaper(Books books) {System.out.println(books); bookService.addBook(books); return "redirect:/book/allBook"; }

5、添加书籍页面:addBook.jsp
新增书籍 - 锐客网新增书籍
书籍名称:


书籍数量:


书籍详情:



6、BookController 类编写 , 方法三:修改书籍
@RequestMapping("/toUpdateBook")public String toUpdateBook(Model model, int id) {Books books = bookService.queryBookById(id); System.out.println(books); model.addAttribute("book",books ); return "updateBook"; }@RequestMapping("/updateBook")public String updateBook(Model model, Books book) {System.out.println(book); bookService.updateBook(book); Books books = bookService.queryBookById(book.getBookID()); model.addAttribute("books", books); return "redirect:/book/allBook"; }

7、修改书籍页面 updateBook.jsp
修改信息 - 锐客网修改信息
书籍名称:书籍数量:书籍详情:

8、BookController 类编写 , 方法四:删除书籍
@RequestMapping("/del/{bookId}")public String deleteBook(@PathVariable("bookId") int id) {bookService.deleteBookById(id); return "redirect:/book/allBook"; }

配置Tomcat,进行运行!
到目前为止,这个SSM项目整合已经完全的OK了,可以直接运行进行测试!这个练习十分的重要,大家需要保证,不看任何东西,自己也可以完整的实现出来!
项目结构图
SpringMVC|SpringMVC 整合SSM框架详解
文章图片

SpringMVC|SpringMVC 整合SSM框架详解
文章图片

小结及展望
这个是SSM整合案例,一定要烂熟于心!
SSM框架的重要程度是不言而喻的,学到这里,大家已经可以进行基本网站的单独开发。但是这只是增删改查的基本操作。可以说学到这里,大家才算是真正的步入了后台开发的门。也就是能找一个后台相关工作的底线。
或许很多人,工作就做这些事情,但是对于个人的提高来说,还远远不够!
我们后面还要学习一些 SpringMVC 的知识!
  • Ajax 和 Json
  • 文件上传和下载
  • 拦截器
到此这篇关于SpringMVC 整合SSM框架详解的文章就介绍到这了,更多相关SpringMVC 整合SSM框架内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读