版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 课程设计精品图书管理系统书生系统说明:本系统采用eclipse开发,IDEA,eclipse,myeclipse均可运行界面采用swing实现数据库:mysql,附sql代码,其余数据库可复制sql代码运行数据库连接文件mysql-connector-java-8.0.16.jar本系统的背景图片可根据自己的需求替换项目分为管理员和普通用户两种角色管理员有图书查询、图书借还、账户管理(修改密码、账户信息、借书记录)、图书管理(增加、修改、删除)的权限普通用户有图书查询、图书借还、账户管理(修改密码、借书记录)的权限项目结构:登录界面:管理员登录:账号root,密码123123 普通用户登录:
2、账号123,密码123123注册界面:管理员主界面:图书查询界面:图书借还界面:账户管理界面:图书管理界面:添加图书界面:修改图书界面:账户信息界面:借书记录界面:普通用户主界面:普通用户账户管理界面:背景图片:数据库文件(tsglsys.Sql):SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;DROP TABLE IF EXISTS bookcategory;CREATE TABLE bookcategory ( Category varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT
3、NULL COMMENT 类别, PRIMARY KEY (Category) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;INSERT INTO bookcategory VALUES (军事);INSERT INTO bookcategory VALUES (天文);INSERT INTO bookcategory VALUES (学术);INSERT INTO bookcategory VALUES (小说);INSERT INTO boo
4、kcategory VALUES (文艺);INSERT INTO bookcategory VALUES (科幻);INSERT INTO bookcategory VALUES (经济);DROP TABLE IF EXISTS booktable;CREATE TABLE booktable ( bookid int(10) NOT NULL AUTO_INCREMENT COMMENT 书号, category varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 类别, bookname var
5、char(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 书名, author varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 作者, press varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 出版社, price float(10, 2) NOT NULL COMMENT 价格, s
6、tate varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 状态, PRIMARY KEY (bookid) USING BTREE, INDEX category(category) USING BTREE, CONSTRAINT booktable_ibfk_1 FOREIGN KEY (category) REFERENCES bookcategory (Category) ON DELETE RESTRICT ON UPDATE CASCADE) ENGINE = InnoDB AUTO_IN
7、CREMENT = 21 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;INSERT INTO booktable VALUES (1, 学术, JAVA程序设计教程, 刘志宏, 航空工业出版社, 45.00, 在馆);INSERT INTO booktable VALUES (2, 学术, 软件工程, 程成, 机械工业出版社, 31.50, 在馆);INSERT INTO booktable VALUES (3, 学术, 计算机文化, (美)帕森斯(Parsons J.J), 电子工业出版社, 28.0
8、0, 在馆);INSERT INTO booktable VALUES (4, 文艺, 我在未来等你, 刘同, 青年光影出版社, 36.50, 在馆);INSERT INTO booktable VALUES (5, 小说, 西游记, 吴承恩, 岳麓出版社, 33.50, 在馆);INSERT INTO booktable VALUES (6, 学术, 数据结构(c语言), 严蔚敏, 清华大学出版社, 27.50, 在馆);INSERT INTO booktable VALUES (7, 学术, C语言程序设计教程, 谭浩强, 清华大学出版社, 40.00, 在馆);INSERT INTO b
9、ooktable VALUES (8, 学术, 计算机文化基础, 李永红, 对外经济贸易大学, 32.50, 在馆);INSERT INTO booktable VALUES (9, 学术, 数据库系统实现, 加西亚-莫利纳(, 机械工业出版社, 47.00, 在馆);INSERT INTO booktable VALUES (10, 文艺, 数据库系统基础教程, 厄尔曼, 机械工业出版社, 38.50, 在馆);INSERT INTO booktable VALUES (11, 学术, 数学思维导论, Keith Devlin, 人民邮电出版社, 40.00, 在馆);INSERT INTO
10、 booktable VALUES (12, 学术, 移动应用UI设计必修课, 余振华, 人民邮电出版社, 36.00, 在馆);INSERT INTO booktable VALUES (13, 学术, 快速软件开发, 史蒂夫迈克康奈尔, 清华大学出版社, 25.50, 在馆);INSERT INTO booktable VALUES (14, 科幻, 三体, 刘慈欣, 重庆出版社, 31.00, 在馆);INSERT INTO booktable VALUES (15, 科幻, 海底两万里, 儒尔凡尔纳, 译林出版社, 32.50, 在馆);INSERT INTO booktable VA
11、LUES (16, 军事, 狼牙, 刘猛, 北京联合出版公司, 35.50, 在馆);INSERT INTO booktable VALUES (17, 天文, 宇宙的琴弦, 布赖恩格林, 湖南科学技术出版社, 30.00, 在馆);INSERT INTO booktable VALUES (18, 经济, 货币经融学, 弗雷德里克S米什金, 中国人民大学出版社, 60.00, 在馆);DROP TABLE IF EXISTS borrowrecords;CREATE TABLE borrowrecords ( id int(10) NOT NULL AUTO_INCREMENT COMMEN
12、T 借书序列, user varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 用户名, bookid int(10) NOT NULL COMMENT 书号, bookname varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 书名, borrowtime date NOT NULL COMMENT 借书时间, returntime date NULL DEFAULT NULL COMMENT 还书时间, st
13、atus varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 状态, PRIMARY KEY (id) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 25 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;DROP TABLE IF EXISTS usertable;CREATE TABLE usertable ( user varchar(20) CHARACTER SE
14、T utf8 COLLATE utf8_general_ci NOT NULL COMMENT 用户名, studentid varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 学号, name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 姓名, password varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT
15、 密码, admin int(10) NOT NULL COMMENT 是否为管理员账户 1为管理员,0为普通用户,默认为0, PRIMARY KEY (user) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;INSERT INTO usertable VALUES (123, 123, 123, 123, 0);INSERT INTO usertable VALUES (root, root, root, 123, 1);SET FOREIGN
16、_KEY_CHECKS = 1;数据库表结构:Dao包下的AdminDao.java:package Dao;import java.sql.*;import javax.swing.JOptionPane;public class AdminDao public static boolean sureuser(String user) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from usertable where user = ?;try p
17、reSql = con.prepareStatement(sqlStr);preSql.setString(1, user);rs = preSql.executeQuery();boolean flag = false;while(rs.next() flag = true;return true;if(!flag) return false;con.close();return false; catch (SQLException e) return false;public static void modifypass(String user,String password) Conne
18、ction con = DB.connectDB();PreparedStatement preSql;String sqlStr = update usertable set password=? where user = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, password);preSql.setString(2, user);int ok = preSql.executeUpdate();con.close(); catch (SQLException e) public static Boole
19、an adduser(String user, String studentid, String name, String password) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = insert into usertable values (?,?,?,?,0);try preSql = con.prepareStatement(sqlStr);preSql.setString(1, user);preSql.setString(2, studentid);preSql.setStrin
20、g(3, name);preSql.setString(4, password);int ok = preSql.executeUpdate();con.close();return true; catch (SQLException e) JOptionPane.showMessageDialog(null, 用户名已存在, 警告, JOptionPane.WARNING_MESSAGE);return false;BookDao.java:package Dao;import java.sql.*;import java.util.*;import javax.swing.*;import
21、 javax.swing.table.DefaultTableModel;public class BookDao public BookDao() public static void findcategory(JComboBox box) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from bookcategory;try preSql = con.prepareStatement(sqlStr);rs = preSql.executeQuer
22、y();while (rs.next() String category = rs.getString(1);box.addItem(category);con.close(); catch (SQLException e) /添加图书public static void addbook(String category,String bookname,String author,String press,String price) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = insert in
23、to booktable(category,bookname,author,press,price,state) values (?,?,?,?,?,?);try preSql = con.prepareStatement(sqlStr);preSql.setString(1, category);preSql.setString(2, bookname);preSql.setString(3, author);preSql.setString(4, press);preSql.setString(5, price);preSql.setString(6, 在馆);int ok = preSq
24、l.executeUpdate();con.close(); catch (SQLException e) /修改图书public static void modifybook(int bookid,String category,String bookname,String author,String press,String state,String price) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = update booktable set category = ? ,bookna
25、me = ? ,author = ?,press = ? ,price = ?,state = ? where bookid = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, category);preSql.setString(2, bookname);preSql.setString(3, author);preSql.setString(4, press);preSql.setString(5, price);preSql.setString(6, state);preSql.setInt(7, booki
26、d);int ok = preSql.executeUpdate();con.close(); catch (SQLException e) /删除图书public static void deletebook(int bookid) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = delete from booktable where bookid = ?;try preSql = con.prepareStatement(sqlStr);preSql.setInt(1, bookid);int
27、 ok = preSql.executeUpdate();con.close(); catch (SQLException e) / 显示所有图书public static void allbook(DefaultTableModel model) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from booktable;try preSql = con.prepareStatement(sqlStr);rs = preSql.executeQuer
28、y();while (rs.next() int bookid = rs.getInt(1);String category = rs.getString(2);String bookname = rs.getString(3);String author = rs.getString(4);String press = rs.getString(5);String price = rs.getString(6);String state = rs.getString(7);model.addRow(new Vector(Arrays.asList(bookid, category, book
29、name, author, press,price, state);con.close(); catch (SQLException e) / 按类别查找图书public static void findcategory(DefaultTableModel model, String CateGory) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;CateGory = % + CateGory + %;String sqlStr = select * from booktable where cat
30、egory like ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, CateGory);rs = preSql.executeQuery();boolean flag = false;while (rs.next() flag = true;int bookid = rs.getInt(1);String category = rs.getString(2);String bookname = rs.getString(3);String author = rs.getString(4);String press
31、 = rs.getString(5);String price = rs.getString(6);String state = rs.getString(7);model.addRow(new Vector(Arrays.asList(bookid, category, bookname, author, press, price,state);if (!flag) JOptionPane.showMessageDialog(null, 图书不存在, 警告, JOptionPane.WARNING_MESSAGE);con.close(); catch (SQLException e) /
32、按书号查找图书public static void findbookid(DefaultTableModel model, int BookId) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from booktable where bookid = ?;try preSql = con.prepareStatement(sqlStr);preSql.setInt(1, BookId);rs = preSql.executeQuery();boole
33、an flag = false;while (rs.next() flag = true;int bookid = rs.getInt(1);String category = rs.getString(2);String bookname = rs.getString(3);String author = rs.getString(4);String press = rs.getString(5);String price = rs.getString(6);String state = rs.getString(7);model.addRow(new Vector(Arrays.asLis
34、t(bookid, category, bookname, author, press, price,state);if (!flag) JOptionPane.showMessageDialog(null, 图书不存在, 警告, JOptionPane.WARNING_MESSAGE);con.close(); catch (SQLException e) BorrowDao.javapackage Dao;import java.sql.*;import java.sql.Date;import java.util.*;import javax.swing.table.DefaultTab
35、leModel;public class BorrowDao public BorrowDao() /借阅图书public static void Borrow(String user, int bookid, String bookname) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = insert into borrowrecords(user,bookid,bookname,borrowtime,returntime,status) values (?,?,?,now(),null,?)
36、;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, user);preSql.setInt(2, bookid);preSql.setString(3, bookname);preSql.setString(4, 未还);int ok = preSql.executeUpdate();con.close();ChangeBorrowState(bookid); catch (SQLException e) /借阅图书修改图书状态private static void ChangeBorrowState(int booki
37、d) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = update booktable set state=? where bookid = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, 外借);preSql.setInt(2, bookid);int ok = preSql.executeUpdate();con.close(); catch (SQLException e) /还书public static vo
38、id Return(String user, int bookid) Connection con = DB.connectDB();PreparedStatement preSql;String sqlStr = select now();ResultSet rs;Date date=null;try preSql = con.prepareStatement(sqlStr);rs = preSql.executeQuery();while(rs.next() date = rs.getDate(1);sqlStr = update borrowrecords set returntime
39、= ? where bookid = ? and user = ? and status = ?;preSql = con.prepareStatement(sqlStr);preSql.setDate(1, date);preSql.setInt(2, bookid);preSql.setString(3, user);preSql.setString(4, 未还);int ok = preSql.executeUpdate();sqlStr = update borrowrecords set status = ? where bookid = ? and user = ? and sta
40、tus = ?;preSql = con.prepareStatement(sqlStr);preSql.setString(1, 已还);preSql.setInt(2, bookid);preSql.setString(3, user);preSql.setString(4, 未还);ok = preSql.executeUpdate();con.close();ChangeReturnState(bookid); catch (SQLException e) /还书图书修改图书状态private static void ChangeReturnState(int bookid) Conn
41、ection con = DB.connectDB();PreparedStatement preSql;String sqlStr = update booktable set state=? where bookid = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, 在馆);preSql.setInt(2, bookid);int ok = preSql.executeUpdate();con.close(); catch (SQLException e) /比对还书public static boolean
42、 comparison(String user,int bookid) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from borrowrecords where bookid = ? and status = ?;try preSql = con.prepareStatement(sqlStr);preSql.setInt(1, bookid);preSql.setString(2, 未还);rs = preSql.executeQuery();
43、while (rs.next() String user2 = rs.getString(2);if(user2.equals(user) return true;else return false;con.close();return false; catch (SQLException e) return false;public static void allborrow(DefaultTableModel model) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr
44、= select * from borrowrecords;try preSql = con.prepareStatement(sqlStr);rs = preSql.executeQuery();while (rs.next() String user = rs.getString(2);int bookid = rs.getInt(3);String bookname = rs.getString(4);Date date = rs.getDate(5);Date date2 = rs.getDate(6);String status = rs.getString(7);model.add
45、Row(new Vector(Arrays.asList(user,bookid,bookname,date,date2,status);con.close(); catch (SQLException e) /用户名借书记录public static void userborrow(DefaultTableModel model,String user) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from borrowrecords where
46、user = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, user);rs = preSql.executeQuery();while (rs.next() int bookid = rs.getInt(3);String bookname = rs.getString(4);Date date = rs.getDate(5);Date date2 = rs.getDate(6);String status = rs.getString(7);model.addRow(new Vector(Arrays.asL
47、ist(user,bookid,bookname,date,date2,status);con.close(); catch (SQLException e) /书号借书记录public static void bookidborrow(DefaultTableModel model,int bookid) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from borrowrecords where bookid = ?;try preSql = c
48、on.prepareStatement(sqlStr);preSql.setInt(1, bookid);rs = preSql.executeQuery();while (rs.next() String user = rs.getString(2);String bookname = rs.getString(4);Date date = rs.getDate(5);Date date2 = rs.getDate(6);String status = rs.getString(7);model.addRow(new Vector(Arrays.asList(user,bookid,book
49、name,date,date2,status);con.close(); catch (SQLException e) DB.java(数据库连接类):package Dao;import java.sql.*;public class DB public static Connection connectDB() String url = jdbc:mysql:/ localhost:3306/tsglsys?serverTimezone=GMT%2B8;try Class.forName(com.mysql.cj.jdbc.Driver); catch (Exception e) Conn
50、ection con = null;try con = DriverManager.getConnection(url, root, 1234); catch (SQLException e) return con;LandDao.java:package Dao;import java.sql.*;import javax.swing.JOptionPane;public class LandDao public static Boolean test(String user, String password) Connection con = DB.connectDB();Prepared
51、Statement preSql;ResultSet rs;String sqlStr = select * from usertable where user = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, user);rs = preSql.executeQuery();boolean flag = false;while(rs.next() flag = true;String password2 = rs.getString(4);if (!(password.equals(password2) JOp
52、tionPane.showMessageDialog(null, 密码错误, 警告, JOptionPane.WARNING_MESSAGE);return false;if(!flag) JOptionPane.showMessageDialog(null, 用户名不存在, 警告, JOptionPane.WARNING_MESSAGE);return false;con.close();return true; catch (SQLException e) JOptionPane.showMessageDialog(null, 用户名不存在, 警告, JOptionPane.WARNING
53、_MESSAGE);return false;/确定是否为管理员public static boolean sureadmin(String user) Connection con = DB.connectDB();PreparedStatement preSql;ResultSet rs;String sqlStr = select * from usertable where user = ?;try preSql = con.prepareStatement(sqlStr);preSql.setString(1, user);rs = preSql.executeQuery();whi
54、le(rs.next() int admin = rs.getInt(5);if (admin=1) return true;else return false;con.close();return true; catch (SQLException e) return false;Test包LandTest.java:package Test;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import Dao.LandD
55、ao;import View.LogonFace;import View.MainFace;public class LandTest private JLabel jLabel = new JLabel(图书管理系统);private JLabel jLabel2 = new JLabel(用户名: );private JLabel jLabel3 = new JLabel(密 码: );private Font font = new Font(宋体, Font.BOLD, 40);private Font font2 = new Font(宋体, Font.BOLD, 25);privat
56、e Font font3 = new Font(宋体, Font.BOLD, 20);private JTextField field = new JTextField(22);private JPasswordField field2 = new JPasswordField(22);private JButton button = new JButton(登陆);private JButton button2 = new JButton(注册);private JPanel jPanel = new JPanel();private JPanel jPanel2 = new JPanel(
57、);private JPanel jPanel3 = new JPanel();private JPanel jPanel4 = new JPanel();private JPanel jPanel5 = new JPanel();private JFrame frame = new JFrame(登陆);private Dimension dimension = new Dimension(30, 30);private Dimension dimension2 = new Dimension(100, 50);public String user;private String passwo
58、rd;public LandTest() frame.setTitle(登陆);frame.setSize(550, 500);frame.setLocationRelativeTo(null);frame.setLayout(null);Toolkit t = Toolkit.getDefaultToolkit();Image image = t.getImage(imglogin.jpg);frame.setIconImage(image);addassembly();transparent();addEvent();Icon i = new ImageIcon(imglogin.jpg)
59、;JLabel Label = new JLabel(i);Label.setBounds(0, 0, 550, 500);frame.add(Label);frame.setResizable(false);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);private void addassembly() jLabel.setFont(font);jLabel2.setFont(font2);jLabel3.setFont(font2);button.setFont(font3);but
60、ton2.setFont(font3);field.setFont(font3);field2.setFont(font3);field.setPreferredSize(dimension);field2.setPreferredSize(dimension);button.setPreferredSize(dimension2);button2.setPreferredSize(dimension2);jPanel.add(jLabel);jPanel2.add(jLabel2);jPanel2.add(field);jPanel3.add(jLabel3);jPanel3.add(fie
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026山东出版集团有限公司山东出版传媒股份有限公司招聘193人备考题库附完整答案详解【夺冠系列】
- 2026陕西西安市高新第一学校招聘备考题库含完整答案详解【必刷】
- 2026山东农业大学养分资源高效利用理论与技术创新团队博士后招聘备考题库及参考答案详解【轻巧夺冠】
- 2026黑龙江大庆市肇源县医疗卫生专项人才引进22人备考题库【达标题】附答案详解
- 2026上海华东师范大学物理学院综合秘书招聘1人备考题库含完整答案详解【各地真题】
- 2026江苏镇江市润州区卫生健康系统事业单位招聘专业技术人员21人备考题库附参考答案详解(突破训练)
- 2026广东深圳市优才人力资源有限公司公开招聘聘员(派遣至龙城街道)18人备考题库含完整答案详解(夺冠)
- 2026广东中山市港口污水处理有限公司招聘合同制工作人员1人备考题库附答案详解【轻巧夺冠】
- 2026广东河源市消防救援支队第一批政府专职消防员招聘127人备考题库附参考答案详解(模拟题)
- 2026江西昌华路建设咨询监理有限公司招聘备考题库附答案详解【轻巧夺冠】
- 2025年湖北省中考语文试卷真题(含标准答案)
- GB/T 42186-2022医学检验生物样本冷链物流运作规范
- 通辽市遴选和选调公务员笔试真题2024
- 动物园动物肖像摄影技巧
- (高清版)DB50∕T 392-2011 方形钢筋混凝土电杆
- 村居、社区退役军人服务站星级评定标准
- 四川成都历年中考语文古诗欣赏试题汇编(2003-2023)
- 头顶一颗珠对VCI大鼠血脑屏障及紧密连接蛋白的影响及作用机制研究
- 锅炉暖风器改造施工方案
- 一元线性回归模型说课课件2024年第十届全国中小学实验教学说课活动
- 成都市崇州市2024年小升初必考题数学检测卷含解析
评论
0/150
提交评论