返回
轻装上阵,SpringBoot + MyBatis + MySQL打造增删改查应用
前端
2023-10-07 11:54:40
轻装上阵,SpringBoot + MyBatis + MySQL打造增删改查应用
欢迎来到SpringBoot、MyBatis与MySQL携手构建增删改查(CRUD)应用的旅程!我们将一步步打造这个简单应用,让你亲身体验这三个强大的工具是如何高效协作的。
组件剖析
首先,我们来快速了解一下我们的组件:
- SpringBoot: 简化Java应用程序开发的框架。
- MyBatis: 简化JDBC数据库操作的框架。
- MySQL: 流行且强大的关系数据库管理系统。
搭建舞台
准备好我们的组件后,让我们开始搭建我们的应用程序舞台。我们将从头开始构建一个简单的歌曲数据库,并使用SpringBoot、MyBatis和MySQL来完成增删改查操作。
创建SpringBoot项目
- 打开你的集成开发环境(IDE)。
- 新建一个SpringBoot项目。
- 选择合适的依赖,如Spring Web Starter、Spring Data JPA等。
- 创建一个名为
Song
的实体类,它代表歌曲。
整合MyBatis
- 在
pom.xml
中添加MyBatis依赖。 - 在项目中创建一个
mybatis-config.xml
文件,配置数据源和MyBatis环境。 - 在项目中创建一个
mapper
接口,它包含了我们操作歌曲数据库所需的SQL语句。
连接MySQL
- 在
application.properties
中配置MySQL数据库连接信息。 - 在
pom.xml
中添加MySQL驱动依赖。
歌曲库操作指南
完成设置后,让我们开始使用SpringBoot、MyBatis和MySQL进行歌曲库操作。
创建歌曲
- 使用
SongRepository
将新歌曲保存到数据库。
读取歌曲
- 使用
SongRepository
从数据库中获取歌曲列表。 - 或者,您可以使用
SongMapper
直接执行SQL查询。
更新歌曲
- 使用
SongRepository
更新数据库中的歌曲。
删除歌曲
- 使用
SongRepository
从数据库中删除歌曲。
代码实战
现在,让我们深入了解代码。
创建歌曲实体类
@Entity
@Table(name = "songs")
public class Song {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(nullable = false)
private String title;
@Column(nullable = false)
private String artist;
// Getters and setters
}
创建歌曲Mapper接口
public interface SongMapper {
@Select("SELECT * FROM songs")
List<Song> getAllSongs();
@Select("SELECT * FROM songs WHERE id = #{id}")
Song getSongById(@Param("id") Long id);
@Insert("INSERT INTO songs (title, artist) VALUES (#{title}, #{artist})")
void insertSong(@Param("title") String title, @Param("artist") String artist);
@Update("UPDATE songs SET title = #{title}, artist = #{artist} WHERE id = #{id}")
void updateSong(@Param("id") Long id, @Param("title") String title, @Param("artist") String artist);
@Delete("DELETE FROM songs WHERE id = #{id}")
void deleteSong(@Param("id") Long id);
}
创建歌曲库服务类
@Service
public class SongService {
@Autowired
private SongRepository songRepository;
public List<Song> getAllSongs() {
return songRepository.findAll();
}
public Song getSongById(Long id) {
return songRepository.findById(id).orElse(null);
}
public void insertSong(Song song) {
songRepository.save(song);
}
public void updateSong(Long id, Song song) {
Song existingSong = songRepository.findById(id).orElse(null);
existingSong.setTitle(song.getTitle());
existingSong.setArtist(song.getArtist());
songRepository.save(existingSong);
}
public void deleteSong(Long id) {
songRepository.deleteById(id);
}
}
迈向终点
恭喜你!现在你已经学会如何使用SpringBoot、MyBatis和MySQL来构建简单的CRUD应用。希望这个指南能为你打开新的大门,让你探索更多Java和数据库操作的奥秘。