SSM整合(单表CRUD 附源码github)


1.Mysql数据库代码:
CREATE DATABASE `ssm_crud_book_manage`; USE `ssm_crud_book_manage`; 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,'从进门到进牢');
2.创建Maven项目 :


删除这两个xml文件用自己的

3.导入pom.xml:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <packaging>war</packaging> <name>ssm-crud-book-manage</name> <groupId>com.carpe</groupId> <artifactId>ssm-crud-book-manage</artifactId> <version>1.0-SNAPSHOT</version> <!--设置JKD版本--> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </properties> <dependencies> <!--junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <!--Mysql5--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> <!--Mysql8--> <!-- <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.11</version> </dependency> --> <!--c3p0数据源--> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.5</version> </dependency> <!--druid数据源--> <!-- <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.2.0</version> </dependency> --> <!--servlet-jsp-jstl--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!--(Mybatis+Spring)-Mybatis--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.2</version> </dependency> <!--SpringMVC-SpringJDBC--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.12.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.1.12.RELEASE</version> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> </dependency> </dependencies> <!--配置Maven静态资源过滤问题!--> <build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </build> </project>
刷新maven

4.Mybatis层:
连接数据库

新建Mybatis层包名以及配置文件名

applicationContext.xml先行导入以下抬头
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/springbeans.xsd"> </beans>
mybatis-config.xml先行导入以下抬头
<?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> <!--配置数据源,交给Spring去做-->
<!--起别名--> <typeAliases> <package name="com.carpe.entity"/> </typeAliases>
<!--绑定mapper--> <mappers> <mapper class="com.carpe.mapper.BookMapper"></mapper> </mappers> </configuration>
database.properties配置数据库信息
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm_crud_book_manage?useSSL=true&useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=123456
#如果使用的是Mysql8.0+,需要增加一个时区配置:如下
#jdbc.url=jdbc:mysql://localhost:3306/ssm_crud_book_manage?serverTimezone=UTC&useSSL=true&useUnicode=true&characterEncoding=utf8
右键表名一键生成实体类


BookMapper写接口再复制到BookService
public interface BookMapper { //增加一本书 int addBooks(Books books); //删除一本书 int deleteBookById(@Param("bookId") int id); //修改一本书 int updateBook(Books books); //查询一本书 Books queryBookById(@Param("bookId") int id); //查询全部的书 List<Books> queryAllBook(); }
BookServiceImpl实现类
public class BookServiceImpl implements BookService { @Autowired private BookMapper bookMapper; @Override public int addBooks(Books books) { return bookMapper.addBooks(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<Books> queryAllBook() { return bookMapper.queryAllBook(); } }
BookMapper.xml写SQL语句
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.carpe.mapper.BookMapper"> <!--增加一本书--> <insert id="addBooks" parameterType="Books"> insert into books(bookName,bookCounts,detail) values (#{bookName}, #{bookCounts}, #{detail}) </insert> <!--删除一本书--> <delete id="deleteBookById" parameterType="int"> delete from books where bookID=#{bookId} </delete> <!--修改一本书--> <update id="updateBook" parameterType="Books"> update books set bookName=#{bookName},bookCounts=#{bookCounts},detail=#{detail} where bookID=#{bookId} </update> <!--查询一本书--> <select id="queryBookById" resultType="Books"> select * from books where bookID = #{bookId} </select> <!--查询全部的书--> <select id="queryAllBook" resultType="Books"> SELECT * from books </select> </mapper>
下载地址:https://github.com/ajaxmax/SSM--CRUD

浙公网安备 33010602011771号