提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
springboot+maven多模块+ssm,实现的增删改查功能
前言
这是一个简易的 springboot+maven多模块+ssm,实现的增删改查功能
二、使用步骤
1.引入库
创建好项目之后
首先要先导入pom文件
```java
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
<modules>
<module>09-dao</module>
<module>09-domain01</module>
<module>09-service</module>
<module>09-web01</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.czxy</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<!-- 引入SSM整合SpringBoot jar包 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<mybatis.starter.version>1.3.2</mybatis.starter.version>
<mapper.starter.version>2.0.2</mapper.starter.version>
<mysql.version>5.1.32</mysql.version>
<pageHelper.starter.version>1.2.5</pageHelper.starter.version>
<durid.starter.version>1.1.10</durid.starter.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- mybatis启动器 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis.starter.version}</version>
</dependency>
<!-- 通用Mapper启动器 -->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>${mapper.starter.version}</version>
</dependency>
<!-- 分页助手启动器 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>${pageHelper.starter.version}</version>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
<!-- Druid连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${durid.starter.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!-- jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
1.pom文件导入之后开始分模块
将项目工程分成dao,domain,service,web 4层
![模块分层](https://img-blog.csdnimg.cn/20200917200748984.png#pic_center)
### 2.在数据库中放入数据
```sql
create database Day09_20200917_04;
use Day09_20200917_04;
CREATE TABLE t_teacher
(
id
int(11) NOT NULL AUTO_INCREMENT,
tea_name
varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
pwd
varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (id
) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;
– Records of t_teacher
INSERT INTO t_teacher
VALUES (1, ‘tea01’, ‘123’);
INSERT INTO t_teacher
VALUES (2, ‘tea02’, ‘123’);
SET FOREIGN_KEY_CHECKS = 1;
3.编写domain层代码
```java
@Entity
@Table(name = "t_teacher")
public class Teacher {
@Id
private Integer id;
private String teaName;
private String pwd;
@Override
public String toString() {
return "Teacher{" +
"id=" + id +
", teaName='" + teaName + '\'' +
", pwd='" + pwd + '\'' +
'}';
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTeaName() {
return teaName;
}
public void setTeaName(String teaName) {
this.teaName = teaName;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public Teacher(Integer id, String teaName, String pwd) {
this.id = id;
this.teaName = teaName;
this.pwd = pwd;
}
public Teacher() {
}
}
![domain层注意事项](https://img-blog.csdnimg.cn/20200917201222537.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2NDIxNTIy,size_16,color_FFFFFF,t_70#pic_center)
### 3.编写dao层代码块
@org.apache.ibatis.annotations.Mapper
public interface TeacherMapper extends Mapper<Teacher> {
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200917201540593.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2NDIxNTIy,size_16,color_FFFFFF,t_70#pic_center)
4.service层
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020091720173375.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2NDIxNTIy,size_16,color_FFFFFF,t_70#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200917201752220.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2NDIxNTIy,size_16,color_FFFFFF,t_70#pic_center)
```java
public interface TeacherService {
/**
* 查询所有
* @return
*/
public List<Teacher> findAll();
/**
* 添加
* @param teacher
* @return
*/
public boolean insert(Teacher teacher);
/**
* 根据Id查询用户
* @param id
* @return
*/
public Teacher findById(Integer id);
/**
* 修改
* @param teacher
* @return
*/
public boolean update(Teacher teacher);
/**
* 删除
* @param id
* @return
*/
public boolean delete(Integer id);
}
@Service
@Transactional
public class TeacherServiceImpl implements TeacherService {
@Resource
private TeacherMapper teacherMapper;
@Override
public List<Teacher> findAll() {
return teacherMapper.selectAll();
}
@Override
public boolean insert(Teacher teacher) {
int count = teacherMapper.insert(teacher);
return count == 1;
}
@Override
public Teacher findById(Integer id) {
return teacherMapper.selectByPrimaryKey(id);
}
@Override
public boolean update(Teacher teacher) {
int count = teacherMapper.updateByPrimaryKey(teacher);
return count == 1;
}
@Override
public boolean delete(Integer id) {
int count = teacherMapper.deleteByPrimaryKey(id);
return count == 1;
}
}
###5. controller层
@RestController
@RequestMapping("/tea")
public class TeacherController {
@Resource
private TeacherService teacherService;
/**
* 查询所有
* @return
*/
@GetMapping("/all")
public ResponseEntity<List<Teacher>> findAll() {
List<Teacher> list = teacherService.findAll();
return ResponseEntity.ok(list);
}
/**
* 添加
* @return
*/
@PostMapping
public ResponseEntity<String> insert(@RequestBody Teacher teacher) {
boolean flag = teacherService.insert(teacher);
if (flag) {
return ResponseEntity.ok("添加成功");
}else {
return ResponseEntity.ok("添加失败");
}
}
/**
* 根据Id查询用户
* @return
*/
@GetMapping("/{id}")
public ResponseEntity<Teacher> findById(@PathVariable("id") Integer id) {
Teacher tid = teacherService.findById(id);
return ResponseEntity.ok(tid);
}
/**
* 修改
* @return
*/
@PutMapping
public ResponseEntity<String> update(@RequestBody Teacher teacher) {
boolean flag = teacherService.update(teacher);
if (flag) {
return ResponseEntity.ok("修改成功");
}else {
return ResponseEntity.ok("修改失败");
}
}
/**
* 删除
* @return
*/
@DeleteMapping("/{id}")
public ResponseEntity<String> delete(@PathVariable("id") Integer id) {
boolean flag = teacherService.delete(id);
if (flag) {
return ResponseEntity.ok("删除成功");
}else {
return ResponseEntity.ok("删除失败");
}
}
}
###6.测试
查询所有
2.新增用户
3.修改
4.根据id查询
5.删除
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了springboot+maven多模块+ssm,实现的增删改查功能的使用,希望能够帮助大家