mybatis层编写完毕后的项目目录
1.右键SpringMVC2项目-》new-》Modual-》选择maven项目(我的项目名为Study09_ssm),输入模块名,点击Finish
2.第二部的操作就是将idea的基本运行环境搞定,包括:添加web支持,配置tomcat,配置project structure
2.1添加web支持:右键项目名为Study09_ssm,选择Add Framework Support,勾选Web Application,点击ok
2.2配置tomcat(注意:如果第一步没有配置的话,tomcat里边不会出现这个项目的)
2.3配置project structure,选择idea菜单栏File->project structure->Artifact->找到自己的这个项目点击->在WEB-INF下新建一个lib文件夹(默认是没有的),然后点击加号,选择所有的依赖,点击ok
3.新建一个数据库命名为ssm_crud,新建一个查询窗口,执行如下的sql代码
USE ssm_crud
;
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=utf8
INSERT INTO books
(bookID
,bookName
,bookCounts
,detail
)VALUES
(1,'Java',1,'从入门到放弃'),
(2,'MySQL',10,'从删库到跑路'),
(3,'Linux',5,'从进门到进牢');
4.让idea连接上MySql数据库,具体步骤如下:找到ida右侧的database选项,点击加号-》data source-》mysql,打开data source and driver窗口,也就是第二张图,根据步骤做完即可,完成后会出现第四张图的样子。
5.建立项目目录结构,如下图所示:Java文件夹下的四个包,web模块不用创建
6.resources文件夹下创建下面的三个文件
7.database.properties文件为数据库连接串,mybatis-config.xml文件为mybatis配置,这里只写别名和mappers即可,其他的让spring来做,至此mybatis层的resources文件夹下的内容搞定,applicationContext.xml是用来整合各层的配置文件的,这个最后配置。
jdbc.driver=com.mysql.jdbc.Driver
#mysql8.0+的话,要加一个时区设置&serverTimezone=Asia/Shanghai
jdbc.url=jdbc:mysql://localhost:3306/ssm_crud?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=CST
jdbc.username=root
jdbc.password=123456
xml version="1.0" encoding="UTF-8" ?> DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <typeAliases> <package name="com.xiaoma1.pojo"/> typeAliases> <mappers> <mapper class="com.xiaoma1.dao.BookMapper">mapper> mappers> configuration>
8.下面来做Java文件夹下的东西,包括:实体类,dao层的mapper接口和mapper.xml配置文件,service层的接口和实现类(我们这里主要实现对书籍的增删改查)
8.1编写实体类:属性名和数据库字段名一一对应,这里的get、set方法、有参无参构造通过三个注解来实现,分别是@Data、@NoArgsConstructor、@AllArgsConstructor
package com.xiaoma1.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* Author:xiaoma
* FileName:Books
* Data:2022/5/3 10:21
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Books {
private int bookID;
private String bookName;
private int bookCounts;
private String detail;
}
8.2编写dao层的mapper接口和mapper对应的xml文件,xml文件中编写sql语句实现和数据库的交互,下面为xml配置文件代码和接口代码
DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
insert into books (bookName,bookCounts,detail)
values (#{bookName},#{bookCounts},#{detail});
delete
from books
where bookID=#{id};
update books
set bookName = #{bookName},bookCounts = #{bookCounts},detail=#{detail}
where bookID = #{bookID};
select *
from books
where bookID=#{id};
select * from books;
package com.xiaoma1.dao;
import com.xiaoma1.pojo.Books;
import java.util.List;
/**
* Author:xiaoma
* FileName:BookMapper
* Data:2022/5/3 10:23
*/
public interface BookMapper {
//增加一本书
int addBook(Books books);
//删除一本书
int deleteBookById(int id);
//更新一本书
int updateBook(Books books);
//根据id查询一本书
Books queryBookById(int id);
//查询全部的书
List queryAllBook();
}
8.3编写service层的接口和实现类,这里service’层的接口和dao层的mapper接口是一样的
package com.xiaoma1.service;
import com.xiaoma1.pojo.Books;
import java.util.List;
/**
* Author:xiaoma
* FileName:BookService
* Data:2022/5/3 10:45
*/
public interface BookService {
//增加一本书
int addBook(Books books);
//删除一本书
int deleteBookById(int id);
//更新一本书
int updateBook(Books books);
//根据id查询一本书
Books queryBookById(int id);
//查询全部的书
List queryAllBook();
}
package com.xiaoma1.service;
import com.xiaoma1.dao.BookMapper;
import com.xiaoma1.pojo.Books;
import java.util.List;
/**
* Author:xiaoma
* FileName:BookServiceImpl
* Data:2022/5/3 10:45
*/
public class BookServiceImpl implements BookService{
//业务层调用dao层,组合dao
public BookMapper bookMapper;
public void setBookMapper(BookMapper bookMapper) {
this.bookMapper = bookMapper;
}
@Override
public int addBook(Books books) {
return bookMapper.addBook(books);
}
@Override
public int deleteBookById(int id) {
return bookMapper.deleteBookById(id);
}
@Override
public int updateBook(Books books) {
return bookMapper.updateBook(books);
}
@Override
public Books queryBookById(int id) {
return bookMapper.queryBookById(id);
}
@Override
public List queryAllBook() {
return bookMapper.queryAllBook();
}
}
至此mybatis层实现完毕!!!!!!!!!
Original: https://www.cnblogs.com/XiaoMaGuai/p/16218031.html
Author: XiaoMaGuai
Title: SpringMVC(5)-ssm整合实现增删改查-mybatis层
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/592489/
转载文章受原作者版权保护。转载请注明原作者出处!