博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring和MyBatis整合
阅读量:7096 次
发布时间:2019-06-28

本文共 5535 字,大约阅读时间需要 18 分钟。

我们已经学完,Spring和MyBatis两个框架了,这篇博客中写了一下怎么把两个框架整合在一起

整合这两个框架,在Spring中写一个例子:添加图书

准备数据表

第一步:引入依赖

org.springframework
spring-web
4.2.0.RELEASE
org.mybatis
mybatis-spring
1.2.1
org.mybatis
mybatis
3.2.2

第二步:对案例分层

首先是实体类

Book

package demo23ssm.entity;/** * Created by mycom on 2018/3/13. */public class Book {    private Integer bookId;    private String bookName;    private String bookAuthor;    private Integer bookPrice;    @Override    public String toString() {        return "Book{
" + "bookId=" + bookId + ", bookName='" + bookName + '\'' + ", bookAuthor='" + bookAuthor + '\'' + ", bookPrice=" + bookPrice + '}'; } public Integer getBookId() { return bookId; } public void setBookId(Integer bookId) { this.bookId = bookId; } public String getBookName() { return bookName; } public void setBookName(String bookName) { this.bookName = bookName; } public String getBookAuthor() { return bookAuthor; } public void setBookAuthor(String bookAuthor) { this.bookAuthor = bookAuthor; } public Integer getBookPrice() { return bookPrice; } public void setBookPrice(Integer bookPrice) { this.bookPrice = bookPrice; }}

DAO层:接口和映射文件

package demo23ssm.dao;import demo23ssm.entity.Book;/** * Created by mycom on 2018/3/17. */public interface IBookDao {    //添加图书    public int addBook(Book book);}
insert into book(bookName,bookAuthor,bookPrice) values(#{bookName},#{bookAuthor},#{bookPrice})

Service层:接口和实现类

package demo23ssm.service;import demo23ssm.entity.Book;/** * Created by mycom on 2018/3/17. */public interface IBookService {    public int addBook(Book book);}
package demo23ssm.service;import demo23ssm.dao.IBookDao;import demo23ssm.entity.Book;import org.springframework.transaction.annotation.Transactional;/** * Created by mycom on 2018/3/17. */public class BookServiceImpl implements IBookService {    private IBookDao bookDao;    public IBookDao getBookDao() {        return bookDao;    }    public void setBookDao(IBookDao bookDao) {        this.bookDao = bookDao;    }    @Transactional    public int addBook(Book book) {        return bookDao.addBook(book);    }}

Servlet层:

package demo23ssm.servlet;import com.sun.javafx.webkit.WebConsoleListener;import demo23ssm.entity.Book;import demo23ssm.service.IBookService;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.springframework.web.context.support.WebApplicationContextUtils;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;/** * Created by mycom on 2018/3/17. */public class BookServlet extends HttpServlet {    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        request.setCharacterEncoding("utf-8");        String bookName=request.getParameter("bookname");        Integer bookPrice=Integer.parseInt(request.getParameter("bookprice"));        String bookAuthor=request.getParameter("bookauthor");        //创建book对象        Book book=new Book();        book.setBookName(bookName);        book.setBookPrice(bookPrice);        book.setBookAuthor(bookAuthor);        //ApplicationContext context=new ClassPathXmlApplicationContext("applicationContextdemo23ssm.xml");        ApplicationContext context= WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext());        IBookService bookService =(IBookService) context.getBean("bookService");        int count = bookService.addBook(book);        if(count>0){            //转发            request.getSession().setAttribute("book",book);            request.getRequestDispatcher("/index.jsp").forward(request,response);        }else{            response.sendRedirect("/addBook.jsp");        }    }    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        doPost(request,response);    }}

第三步:配置文件

第四步:编写添加图书和添加成功后的页面

<%--  Created by IntelliJ IDEA.  User: mycom  Date: 2018/3/17  Time: 14:32  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>    添加图书

添加图书

图书名称:
图书作者:
图书价格:
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>    成功页面

${book.bookName}添加成功

 

转载于:https://www.cnblogs.com/my-123/p/8596063.html

你可能感兴趣的文章
Session原理
查看>>
[Leetcode] Rotate Image 旋转图片
查看>>
GOAndroid的安装和配置
查看>>
JavaScript 内存机制(前端同学进阶必备)
查看>>
javascript dom的图片最终版源代码 (重复看)
查看>>
innobackupex在线备份及恢复(全量和增量)
查看>>
spring-AspectJ最终通知
查看>>
中国电信涉足VR,以“情景式VR消费计划”带来商业变现
查看>>
逃离智能家居“怪圈”,智能音箱并不是唯一入口
查看>>
Linux 格式化扩展分区(Extended)
查看>>
MySQL 安装步骤详解
查看>>
AR VR或将彻底变革广告营销行业
查看>>
dell r710 装系统
查看>>
<转> lua: userdata的metatable使用
查看>>
Android常见的三种内部类
查看>>
锐捷网络与智恒科技达成战略合作 携手推进智慧水务LoRa商用建设
查看>>
Delphi版 关于QQ输入控件无法Spy到句柄的实现方案可行性研究
查看>>
CEO关注:如何确保数字体验管理战略的成功实施
查看>>
Linux学习 Unit 7
查看>>
[HDFS Manual] CH3 HDFS Commands Guide
查看>>