SSM整合:mybatis层-P17
创始人
2024-03-20 18:06:56

 首先构建新的项目。

MYSQL:

在mysql中创建我们需要的表

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=utf8INSERT  INTO `books`(`bookID`,`bookName`,`bookCounts`,`detail`)VALUES
(1,'Java',1,'从入门到放弃'),
(2,'MySQL',10,'从删库到跑路'),
(3,'Linux',5,'从进门到进牢');

注意:分段执行,不要一次性全部执行。

接着直接在IDEA中新建maven项目即可。

Mybatis层:

 

 BookMapper(dao层接口)

package com.Li.dao;import com.Li.pojo.Books;
import org.apache.ibatis.annotations.Param;import java.util.List;public interface BookMapper {//增加一个Bookint addBook(Books book);//根据id删除一个Bookint deleteBookById(@Param("bookId") int id);//更新Bookint updateBook(Books books);//根据id查询,返回一个BookBooks queryBookById(@Param("bookId") int id);//查询全部Book,返回list集合List queryAllBook();}

BookMapper.xml(编写dao层的映射文件,具体的sql语句。CRUD)


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}

Books(实体类的创建)

package com.Li.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
public class Books {private int bookID;private String bookName;private int bookCounts;private String detail;
}

BookService(与dao层接口一样)

package com.Li.service;import com.Li.pojo.Books;
import org.apache.ibatis.annotations.Param;import java.util.List;public interface BookService {//增加一本书int addBook(Books book);//删除一本书int deleteBookById(int id);//更新一本书int updateBook(Books books);//查询一本书Books queryBookById(int id);//查询全部书List queryAllBook();}

BookServiceImpl(引用了dao层,相当于是代理模式,代理了dao层。并且还可以在dao层的内容上加自己的内容)

package com.Li.service;import com.Li.dao.BookMapper;
import com.Li.pojo.Books;import java.util.List;public class BookServiceImpl implements BookService{//service调dao层:组合dao层private BookMapper bookMapper;public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper;}@Overridepublic int addBook(Books book) {return bookMapper.addBook(book);//业务层调dao层}@Overridepublic int deleteBookById(int id) {return bookMapper.deleteBookById(id);}@Overridepublic int updateBook(Books books) {return bookMapper.updateBook(books);}@Overridepublic Books queryBookById(int id) {return bookMapper.queryBookById(id);}@Overridepublic List queryAllBook() {return bookMapper.queryAllBook();}
}

mybatis-config.xml



pom.xml


4.0.0com.Lissmbuild1.0-SNAPSHOT88junitjunit4.12mysqlmysql-connector-java8.0.29com.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.RELEASEorg.projectlomboklombok1.18.24src/main/java**/*.properties**/*.xmlfalsesrc/main/resources**/*.properties**/*.xmlfalse

 这两个为spring层服务,所以mybatis层还不需要实现具体内容。

这就是mybatis层的实现。

相关内容

热门资讯

从加勒比海追到印度洋 美军称拦... 转自:新华社新华社华盛顿2月9日电 美国国防部9日在社交媒体上发布消息称,美军在印度洋拦截一艘油轮...
八国外长谴责以色列在约旦河西岸... 转自:新华社新华社开罗2月9日电(记者徐皓夫 姚兵)埃及、约旦、阿联酋、印度尼西亚、巴基斯坦、土耳...
寻“庐阳九逸”城市漫游活动将推... (来源:市场星报) 星报讯 记者从合肥市庐阳区获悉,2月11日,“马力全开,寻找庐阳九逸”城市漫游...
2026年合肥市徒步越野赛开跑 (来源:市场星报) 星报讯 2月7日,合肥市徒步越野赛暨安徽巢湖经开区第四届“深业杯”徒步越野赛,...
“伪优惠”真骗保 某民营医院三... (来源:衢州日报)转自:衢州日报  通讯员 石洁 王元欣  医保基金是人民群众的“看病钱”“救命钱”...