JSP第七次作业
1.做一个图书类Book id,name,price ,get,set访问器,构造方法2个,1个无参,1个有参做一个测试类,在main中创建3个图书对象,放到list集合中。做一个菜单,可以添加,删除,修改,查询
//Book.java
public class Book { private int id; private String author; private String name; private double price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public Book(){ } public Book(int id,String author,String name,double price){ this.id=id; this.author=author; this.name=name; this.price=price; } }
//BookText.java
public class BookText { public static void main(String[] args) { ArrayList<Book> books = new ArrayList<Book>(); Book b1 = new Book(1, "余华", "活着", 99.9); Book b2 = new Book(2, "鲁迅", "呐喊", 99.8); Book b3 = new Book(3, "朱自清", "背影", 99.7); books.add(b1); books.add(b2); books.add(b3); while (true) { System.out.println("欢迎!请选择:"); System.out.println("1.添加书籍"); System.out.println("2.删除书籍"); System.out.println("3.修改书籍"); System.out.println("4.查看书籍"); System.out.println("5.退出"); Scanner sc = new Scanner(System.in); int i = sc.nextInt(); if (i == 1) { addBook(books); } else if (i == 2) { deleteBook(books); } else if (i == 3) { updateBook(books); } else if (i == 4) { findAllBook(books); } else if (i == 5) { System.out.println("谢谢使用!"); System.exit(0); } else { System.out.println("请输入1-5的数字!"); } } } //添加书籍 public static void addBook(ArrayList<Book> books) { Scanner sc = new Scanner(System.in); int bookId; while (true) { System.out.println("请输入书籍编号:"); bookId = sc.nextInt(); boolean flag = isUsed(books, bookId); if (flag) { System.out.println("书籍编号已经被占用!"); }else { break; } } System.out.println("请输入书籍作者:"); String bookAuthor = sc.nextLine(); System.out.println("请输入书籍名称:"); String bookName = sc.nextLine(); System.out.println("请输入书籍价格:"); double bookPrice = sc.nextInt(); Book book = new Book(bookId, bookAuthor, bookName, bookPrice); books.add(book); System.out.println("添加成功!"); } //删除书籍 public static void deleteBook(ArrayList<Book> books) { Scanner sc = new Scanner(System.in); System.out.println("请输入书籍名称!"); String bookName = sc.nextLine(); int index = -1; for (int i = 0; i < books.size(); i++) { Book book = books.get(i); if (book.getName().equals(bookName)) { index = i; break; } } if (index == -1) { System.out.println("书籍不存在!"); } else { books.remove(index); } System.out.println("删除成功!"); } //修改书籍 public static void updateBook(ArrayList<Book> books) { Scanner sc = new Scanner(System.in); System.out.println("请输入要修改书籍的编号:"); int bookId = sc.nextInt(); System.out.println("请输入书籍的新作者:"); String bookAuthor = sc.nextLine(); System.out.println("请输入书籍的新名称:"); String bookName = sc.nextLine(); System.out.println("请输入书籍的新价格:"); double bookPrice = sc.nextInt(); Book b = new Book(); b.setId(bookId); b.setAuthor(bookAuthor); b.setName(bookName); b.setPrice(bookPrice); for (int i = 0; i < books.size(); i++) { Book book = books.get(i); if (book.getId() == bookId) { books.set(i, b); break; } } System.out.println("修改成功!"); } //查看书籍 public static void findAllBook(ArrayList<Book> books) { if (books.size() == 0) { System.out.println("请先添加书籍!"); return; } System.out.println("编号\t作者\t名字\t价格"); for (int i = 0; i < books.size(); i++) { Book book = books.get(i); System.out.println(book.getId() + "\t" + book.getAuthor() + "\t" + book.getName() + "\t" + book.getPrice() + "元"); } } //判断书籍编号是否重复 public static boolean isUsed(ArrayList<Book> books, int bookId) { boolean flag = false; for (int i = 0; i < books.size(); i++) { Book book = books.get(i); if (book.getId() == bookId) { flag = true; break; } } return flag; } }
2.上题的类,在一个JSP页面中,创建一个集合,里面放3个图书,集合循环遍历显示在页面上。
//MyBook.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>图书</title> </head> <body> <% ArrayList<Book> myBooks=new ArrayList<Book>(); Book b1 = new Book(1, "余华", "活着", 99.9); Book b2 = new Book(2, "鲁迅", "呐喊", 99.8); Book b3 = new Book(3, "朱自清", "背影", 99.7); myBooks.add(b1); myBooks.add(b2); myBooks.add(b3); for (int i=0;i< myBooks.size();i++){ Book book=myBooks.get(i); out.println("编号:"+book.getId()+"作者:"+book.getAuthor()+"书名:"+book.getName()+"价格:"+book.getPrice()+"<br/>"); } %> </body> </html>
3.在MySQL中创建Book表,里面id,name,price,
用命令实现,
添加一个图书,
create database myBook; use myBook; create table book( id int comment '书籍编号', bookName varchar(10) comment '书名', bookPrice double(6,2) comment '书籍价格' )comment '书籍表'; desc book; insert into book values (1,'活着',99.9); insert into book values (2,'背影',99.8); insert into book values (3,'呐喊',99.7); insert into book values (4,'我的大学',1); select * from book;
根据名称删除图书,
delete from book where bookName ='呐喊';
把所有名称是“我”开头的图书删除,
delete from book where bookName like '我%';
删除全部图书,
delete from book;
把20元以上的图书价格都修改为18.8,查看全部图书,
update book set bookPrice=18.8 where bookPrice>20;
查看价格高于10块钱的全部图书
select * from book where bookPrice>10;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器