用mybatis写一个图书管理系统
时间: 2023-06-12 17:02:07 浏览: 65
好的,我可以为您提供一些关于使用 MyBatis 编写图书管理系统的指导。
首先,创建数据库表来存储图书信息,例如书名、作者、出版社、ISBN 码等等。然后,您可以使用 MyBatis 来进行 CRUD 操作。
以下是一个简单的 BookMapper 接口示例:
``` java
public interface BookMapper {
// 获取所有图书信息
List<Book> getAllBooks();
// 根据书名获取图书信息
Book getBookByName(String bookName);
// 添加图书
int addBook(Book book);
// 更新图书信息
void updateBook(Book book);
// 根据书名删除图书信息
void deleteBook(String bookName);
}
```
可以使用 XML 编写相应的 SQL 映射文件,例如:
```xml
<select id="getAllBooks" resultType="com.example.Book">
SELECT * FROM books
</select>
<select id="getBookByName" parameterType="String" resultType="com.example.Book">
SELECT * FROM books WHERE book_name = #{bookName}
</select>
<insert id="addBook" parameterType="com.example.Book">
INSERT INTO books (book_name, author, publisher, isbn) VALUES (#{bookName}, #{author}, #{publisher}, #{isbn})
</insert>
<update id="updateBook" parameterType="com.example.Book">
UPDATE books SET author=#{author}, publisher=#{publisher}, isbn=#{isbn} WHERE book_name=#{bookName}
</update>
<delete id="deleteBook" parameterType="String">
DELETE FROM books WHERE book_name = #{bookName}
</delete>
```
然后在您的 Java 代码中,可以使用 SqlSessionFactory 和 SqlSession 来创建并执行 SQL 语句,例如:
```java
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
try (SqlSession session = sqlSessionFactory.openSession()) {
BookMapper mapper = session.getMapper(BookMapper.class);
// 获取所有图书信息
List<Book> books = mapper.getAllBooks();
System.out.println(books);
// 根据书名获取图书信息
Book book = mapper.getBookByName("Java编程思想");
System.out.println(book);
// 添加图书
Book newBook = new Book("Head First Java", "Kathy Sierra", "O'Reilly Media", "978-0596009205");
mapper.addBook(newBook);
// 更新图书信息
Book updatedBook = new Book("Java编程思想", "Bruce Eckel", "机械工业出版社", "978-7111213826");
mapper.updateBook(updatedBook);
// 根据书名删除图书信息
mapper.deleteBook("Head First Java");
// 提交事务
session.commit();
}
```
以上就是一个简单的 MyBatis 图书管理系统的示例。希望对您有所帮助!