基于JavaSwing+mysql的图书管理系统设计和实现

前言:

        项目是使用Java swing开发,可实现基础数据维护、图书类型管理和维护、图书信息管理和维护、注销退出、关于作者简介等功能。界面设计比较简介、适合作为Java课设设计以及学习技术使用。

引言

       随着计算机及网络技术的飞速发展,Intranet 应用在全球范围内日益普及, 当今社会正快速向信息化社会前进,信息系统的作用也越来越大。图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信息,还书信息。因此图书管理信息化是发展的必然趋势。用结构化系统分析与设计的方法,建立一套有效的图书信息管理系统,可以减轻工作,将工作科学化、规范化,提高了图书馆信息管理的工作质量因此根据图书馆目前实际的管理情况开发一套冬书管理系统是一分必要的。

主要技术和工具:

eclipse+JDK1..8+Navicat +swing +mysql

功能截图:

图书类型管理:

图书类型管理维护、可以根据图书类型查看图书信息、可以根据编号和信息删除修改图书类型信息

图书信息管理:

图书信息维护管理、点击图书维护可以根据图书名称、作者以及图书类型模糊查询图书信息、可以点击下面的输入框进行数据修改和删除操作

选中数据进行修改和删除操作

 

图书添加:

  

作者简介:

注销退出:

关键代码:

 主入口:

package com.HPioneer.view;import java.awt.BorderLayout;
import java.awt.EventQueue;import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import java.awt.GridLayout;
import javax.swing.SpringLayout;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JDesktopPane;
import java.awt.Color;
import java.awt.SystemColor;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;public class MainFrm extends JFrame {private JPanel contentPane;private JDesktopPane table = null;/*** Launch the application.*/public static void main(String[] args) {EventQueue.invokeLater(new Runnable() {public void run() {try {MainFrm frame = new MainFrm();frame.setVisible(true);} catch (Exception e) {e.printStackTrace();}}});}/*** Create the frame.*/public MainFrm() {setTitle("图书管理主界面");setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 450, 300);JMenuBar menuBar = new JMenuBar();setJMenuBar(menuBar);JMenu menu = new JMenu("基本数据维护");menu.setIcon(new ImageIcon(MainFrm.class.getResource("/images/base.png")));menuBar.add(menu);JMenu mnNewMenu = new JMenu("图书类别管理");mnNewMenu.setIcon(new ImageIcon(MainFrm.class.getResource("/images/bookTypeManager.png")));menu.add(mnNewMenu);JMenuItem menuItem = new JMenuItem("图书类别添加");menuItem.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {BookTypeAddInterFrm bookTypeAddInterFrm = new BookTypeAddInterFrm();bookTypeAddInterFrm.setVisible(true);table.add(bookTypeAddInterFrm);}});menuItem.setIcon(new ImageIcon(MainFrm.class.getResource("/images/add.png")));mnNewMenu.add(menuItem);JMenuItem menuItem_2 = new JMenuItem("图书类别维护");menuItem_2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {BookTypeManagerInterFrm bookTypeManagerInterFrm = new BookTypeManagerInterFrm();bookTypeManagerInterFrm.setVisible(true);table.add(bookTypeManagerInterFrm);}});menuItem_2.setIcon(new ImageIcon(MainFrm.class.getResource("/images/edit.png")));mnNewMenu.add(menuItem_2);JMenu mnNewMenu_1 = new JMenu("图书管理");mnNewMenu_1.setIcon(new ImageIcon(MainFrm.class.getResource("/images/bookManager.png")));menu.add(mnNewMenu_1);JMenuItem menuItem_1 = new JMenuItem("图书添加");menuItem_1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {BookAddInterFrm bookAddInterFrm = new BookAddInterFrm();bookAddInterFrm.setVisible(true);table.add(bookAddInterFrm);}});menuItem_1.setIcon(new ImageIcon(MainFrm.class.getResource("/images/add.png")));mnNewMenu_1.add(menuItem_1);JMenuItem mntmNewMenuItem = new JMenuItem("图书维护");mntmNewMenuItem.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {BookManageInterFrm bookManagerInterFrm = new BookManageInterFrm();bookManagerInterFrm.setVisible(true);table.add(bookManagerInterFrm);}});mntmNewMenuItem.setIcon(new ImageIcon(MainFrm.class.getResource("/images/edit.png")));mnNewMenu_1.add(mntmNewMenuItem);JMenuItem menuItem_3 = new JMenuItem("安全退出");menuItem_3.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {int result =JOptionPane.showConfirmDialog(null,"是否退出系统");}});menuItem_3.setIcon(new ImageIcon(MainFrm.class.getResource("/images/exit.png")));menu.add(menuItem_3);JMenu menu_1 = new JMenu("关于作者");menu_1.setIcon(new ImageIcon(MainFrm.class.getResource("/images/about.png")));menuBar.add(menu_1);JMenuItem mntmhpioneer = new JMenuItem("关于奥斯卡");mntmhpioneer.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {HPioneer1234InterFrm hPioneer1234InterFrm = new HPioneer1234InterFrm();hPioneer1234InterFrm.setVisible(true);table.add(hPioneer1234InterFrm);}});mntmhpioneer.setIcon(new ImageIcon(MainFrm.class.getResource("/images/userName.png")));menu_1.add(mntmhpioneer);contentPane = new JPanel();contentPane.setForeground(Color.BLUE);contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));setContentPane(contentPane);contentPane.setLayout(new BorderLayout(0, 0));table = new JDesktopPane();		table.setBackground(Color.WHITE);contentPane.add(table);//设置Jrame最大化this.setExtendedState(JFrame.MAXIMIZED_BOTH);}
}

添加图书:

package com.HPioneer.view;import java.awt.EventQueue;import javax.swing.JInternalFrame;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.border.LineBorder;import com.HPioneer.dao.BookDao;
import com.HPioneer.dao.BookTypeDao;
import com.HPioneer.model.Book;
import com.HPioneer.model.BookType;
import com.HPioneer.util.DbUtil;
import com.HPioneer.util.StringUtil;
import com.mysql.jdbc.Connection;import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import javax.swing.JTextArea;
import javax.swing.JComboBox;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.awt.event.ActionEvent;
import javax.swing.ImageIcon;public class BookAddInterFrm extends JInternalFrame {private JTextField bookNameTxt;private JTextField authorTxt;private final ButtonGroup buttonGroup = new ButtonGroup();private JTextField priceTxt;private DbUtil dbUtil = new DbUtil();private BookTypeDao bookTypeDao = new BookTypeDao();private BookDao bookDao = new BookDao();private	JComboBox bookTypeJcb;private JTextArea bookDescTxt;private JRadioButton manJrb; private JRadioButton femaleJrb;/*** Launch the application.*/public static void main(String[] args) {EventQueue.invokeLater(new Runnable() {public void run() {try {BookAddInterFrm frame = new BookAddInterFrm();frame.setVisible(true);} catch (Exception e) {e.printStackTrace();}}});}/*** Create the frame.*/public BookAddInterFrm() {setIconifiable(true);setClosable(true);setTitle("图书添加");setBounds(100, 100, 450, 463);JLabel lblNewLabel = new JLabel("图书名字:");bookNameTxt = new JTextField();bookNameTxt.setColumns(10);JLabel lblNewLabel_1 = new JLabel("图书作者:");authorTxt = new JTextField();authorTxt.setColumns(10);JLabel lblNewLabel_2 = new JLabel("作者性别:");manJrb = new JRadioButton("男");buttonGroup.add(manJrb);manJrb.setSelected(true);femaleJrb = new JRadioButton("女");buttonGroup.add(femaleJrb);JLabel lblNewLabel_3 = new JLabel("图书价格:");priceTxt = new JTextField();priceTxt.setColumns(10);JLabel lblNewLabel_4 = new JLabel("图书描述:");bookDescTxt = new JTextArea();JLabel lblNewLabel_5 = new JLabel("图书类别:");bookTypeJcb = new JComboBox();JButton btnNewButton = new JButton("添加");btnNewButton.setIcon(new ImageIcon(BookAddInterFrm.class.getResource("/images/add.png")));btnNewButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {bookAddActionPerformed(e);}});JButton btnNewButton_1 = new JButton("重置");btnNewButton_1.setIcon(new ImageIcon(BookAddInterFrm.class.getResource("/images/add.png")));btnNewButton_1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {bookValueActionPerformed(e);}});btnNewButton_1.setIcon(new ImageIcon(BookAddInterFrm.class.getResource("/images/reset.png")));GroupLayout groupLayout = new GroupLayout(getContentPane());groupLayout.setHorizontalGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addGap(28).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addComponent(lblNewLabel_4).addPreferredGap(ComponentPlacement.RELATED).addComponent(bookDescTxt, GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE)).addGroup(groupLayout.createSequentialGroup().addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false).addGroup(groupLayout.createSequentialGroup().addComponent(lblNewLabel_2).addPreferredGap(ComponentPlacement.UNRELATED).addComponent(manJrb).addPreferredGap(ComponentPlacement.RELATED, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addComponent(femaleJrb)).addGroup(groupLayout.createSequentialGroup().addComponent(lblNewLabel).addPreferredGap(ComponentPlacement.RELATED).addComponent(bookNameTxt, GroupLayout.PREFERRED_SIZE, 91, GroupLayout.PREFERRED_SIZE))).addGap(18).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel_3).addComponent(lblNewLabel_1)).addPreferredGap(ComponentPlacement.RELATED).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addComponent(authorTxt, GroupLayout.DEFAULT_SIZE, 89, Short.MAX_VALUE).addComponent(priceTxt, GroupLayout.DEFAULT_SIZE, 89, Short.MAX_VALUE))).addGroup(groupLayout.createSequentialGroup().addComponent(btnNewButton).addGap(33).addComponent(btnNewButton_1)).addGroup(groupLayout.createSequentialGroup().addComponent(lblNewLabel_5).addPreferredGap(ComponentPlacement.RELATED).addComponent(bookTypeJcb, 0, 262, Short.MAX_VALUE))).addGap(80)));groupLayout.setVerticalGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addGap(33).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel).addComponent(bookNameTxt, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(authorTxt, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(lblNewLabel_1)).addGap(26).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_2).addComponent(manJrb).addComponent(femaleJrb).addComponent(lblNewLabel_3).addComponent(priceTxt, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)).addGap(26).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_5).addComponent(bookTypeJcb, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)).addGap(30).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel_4).addComponent(bookDescTxt, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)).addPreferredGap(ComponentPlacement.RELATED, 38, Short.MAX_VALUE).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(btnNewButton).addComponent(btnNewButton_1)).addGap(50)));getContentPane().setLayout(groupLayout);//显示文本域边框bookDescTxt.setBorder(new LineBorder(new java.awt.Color(127,157,185),1,false));fillBookType();}/*** 重置事件处理* @param e*/private void bookValueActionPerformed(ActionEvent e) {// TODO Auto-generated method stubthis.resetValue();}private void bookAddActionPerformed(ActionEvent evt) {// TODO Auto-generated method stubString bookName = this.bookNameTxt.getText();String author = this.authorTxt.getText();String price = this.priceTxt.getText();String bookDesc = this.bookDescTxt.getText();if(StringUtil.isEmpty(bookName)){JOptionPane.showMessageDialog(null,"图书名称不能为空");}if(StringUtil.isEmpty(author)){JOptionPane.showMessageDialog(null,"图书作者不能为空");}if(StringUtil.isEmpty(price)){JOptionPane.showMessageDialog(null,"图书价格不能为空");}String sex ="";if(manJrb.isSelected()){sex="男";}else{sex="女";}BookType bookType =(BookType) bookTypeJcb.getSelectedItem();int bookTypeId = bookType.getId();Book book = new Book(bookName,author,sex,Float.parseFloat(price),bookTypeId,bookDesc);Connection con = null;try{con=dbUtil.getCon();int addNum = bookDao.add(con, book);  	if(addNum == 1){JOptionPane.showMessageDialog(null,"图书类别添加成功");	resetValue();}else{JOptionPane.showMessageDialog(null,"图书类别添加失败");}}catch(Exception e){e.printStackTrace();  JOptionPane.showMessageDialog(null,"图书类别添加失败");}finally{try{dbUtil.closeCon(con);}catch (Exception e) {// TODO: handle exceptione.printStackTrace();	}}}/*** 重置表单*/private void resetValue() {// TODO Auto-generated method stubthis.bookNameTxt.setText("");this.authorTxt.setText("");this.priceTxt.setText("");this.manJrb.setSelected(true);this.bookDescTxt.setText("");if(this.bookTypeJcb.getItemCount()>0){this.bookTypeJcb.setSelectedIndex(0);}}/*** 初始化图书类别下拉框*/private void fillBookType(){Connection con = null;BookType bookType = null;try{con = dbUtil.getCon();ResultSet rs = bookTypeDao.list(con, new BookType());while( rs.next() ){bookType = new BookType();bookType.setId(rs.getInt("id"));bookType.setBookTypeName(rs.getString("bookTypeName"));this.bookTypeJcb.addItem(bookType);}}catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{}}
}

数据库设计:

用户表:

CREATE TABLE `NewTable` (
`id`  int(11) NOT NULL AUTO_INCREMENT ,
`userName`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`password`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=2
ROW_FORMAT=COMPACT
;

图书表:

CREATE TABLE `NewTable` (
`id`  int(11) NOT NULL AUTO_INCREMENT ,
`bookName`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`author`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`sex`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`price`  float NULL DEFAULT NULL ,
`bookTypeId`  int(255) NULL DEFAULT NULL ,
`bookTypeName`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`bookDesc`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
PRIMARY KEY (`id`),
FOREIGN KEY (`bookTypeId`) REFERENCES `t_booktype` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT,
INDEX `by` (`bookTypeId`) USING BTREE 
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=3
ROW_FORMAT=COMPACT
;

图书类型表 

CREATE TABLE `NewTable` (
`id`  int(11) NOT NULL AUTO_INCREMENT ,
`bookTypeName`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`bookTypeDesc`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=9
ROW_FORMAT=COMPACT
;

备注:项目来于网络、作者整理优化测试、若有侵权联系作者删除

总结:

本系统是在汤蓉老师的悉心指导下顺利完成的,从系统的选题、方案的制定以及论文的撰写,每一步都倾注着我们整个团队的心血。在此,衷心感谢大家对我们这个项目整个过程的积极筹划以及出谋划策,在面对困难的时候大家共通过不放弃,通过各种办法解决各种困难在此同时感谢汤蓉和徐振明老师,缜密的逻辑,活跃的思维,敏锐的洞察力,严谨的治学态度以及民主的作风给我留下了深刻的印象,为我开阔了视野,丰富了学识,并将使我受益终身,我学习的楷模;汤蓉老师的工作态度和说教方式让我们感到很亲切与他相处的也很融洽。感谢计算机科学与技术专业、计算机系的全体老师辛勤培养和教诲!

完整源码下载地址

JavaSwing系列项目推荐:

基于JavaSwing的经典坦克大战游戏设计实现

基于JavaSwing ATM取款机系统的设计和实现

基于JavaSwing+mysql的学生社团管理系统设计和实现

打卡JavaSwing项目更新 2 / 100篇

大家可以点赞、收藏、关注、评论我啦 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/562238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux的vi把文件合并一行,学习Vim合并行的方法和技巧

刚接触 Vim 会觉得它的学习曲线非常陡峭,要记住很多命令。所以这个系列的分享,不会教你怎么配置它,而是教你怎么快速的使用它。在开发时为了代码美观,经常会把属性用换行的方式显示。title"批量编辑所属组织":visible.s…

基于JavaSwing+mysql的学生社团管理系统设计和实现

前言: 项目是使用Java swingmysql开发,可实现基础数据维护、用户登录注册、社团信息列表查看、社团信息添加、社团信息修改、社团信息删除以及退出注销等功能、界面设计比较简单易学、适合作为Java课设设计以及学习技术使用。 引言 随着全球信息化的迅猛…

linux 目录定义,linux根目录定义

linux根目录定义发布时间:2011-04-15 13:07:46来源:红联作者:www.saxue.com操作系统里面的根目录是非常重要的,linux的根目录,类似于windows下的我的电脑,是所有文件系统的父目录,根目录也也与开机,还原,系…

linux dhcp服务软包,dpkg包管理器详解

使用Debian或Ubuntu的linux用户肯定都用过或听过dpkg命令。“dpkg ”是“Debian Packager ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自“Debian”的“Linux ”发行版都使用 “dpkg”。我的问题先说先我使用时的疑问。在使…

linux setarch 命令,6.22. Util-linux-2.23.1

安装的程序:addpart, agetty, blkid, blockdev, cal, cfdisk, chcpu,chrt, col, colcrt, colrm, column, ctrlaltdel, cytune, delpart,dmesg, eject, fallocate, fdformat, fdisk, findfs, findmnt,flock, fsck, fsck.cramfs, fsck.minix, fsfreeze, fstrim, getop…

linux里临时设置hbase参数,在centos下配置hbase环境并简单使用hbase shell

操作系统版本:centos7jdk版本:jdk-8u151-linux-x64.rpmhbase版本:hbase-1.2.6以单机模式安装运行配置centos为静态IP配置静态ipvi /etc/sysconfig/network-scripts/ifcfg-eth0IPADDR192.168.109.130NETMASK255.255.255.0配置网关vi /etc/sysconfig/networkGATEWAY192.168.109.2…

linux系统下定时备份,在Linux系统中简单地实现定时备份的方法 -电脑资料

运行一个简单的脚本假设你有一个脚本叫:/usr/local/bin/myscript. ,你想要每隔一小时就运行一次,Service 文件第一步,创建一个service文件,根据你Linux的发行版本放到相应的系统目录(在Arch中,这个目录是/e…

activemq使用linux内核机制,activemq基础之:(四)CentOS7 Linux搭建activemq

1、上传软件包/home/jdk-8u172-linux-x64.tar.gz/home/apache-activemq-5.15.8-bin.tar.gz2、解压tar -zxvf jdk-8u172-linux-x64.tar.gz -C /opttar -zxvf apache-activemq-5.15.8-bin.tar.gz -C /opt3、设置JDKvim /etc/profile加入:JAVA_HOME/opt/jdk1.8.0_172JR…

专栏订阅须知《必读》

作者介绍 专栏介绍: 本专栏是JavaWeb项目实战实战100套合集、目前作者还在更新整理、每一套都是经过作者精心测试运行调整无bug、订阅前先私聊博主、目前专栏列表还在慢慢整理更新中、部分精品私人定制项目在Java项目实战也能看见、需要的话可以联系博主 你能获取什…

linux闹钟软件下载,电量充满警示闹铃

电量充满警示闹铃中的服务功能非常贴心,不仅可以让用户随时查看自己手机的充电情况,而且充满后会有充电提示,让你更快速的了解手机电量状态,电量充满警示闹铃软件中最重要的就是警示功能,当用户的手机丢失或者被盗&…

Java Swing专栏订阅须知《必读》

订阅前请先花2分钟阅读一下本篇文章 作者介绍 Hello 我是奥斯卡、CSDN Java领域优质创作者、潜力新星、原力计划周榜前三作者 全网粉丝20W、阅读超百W、希望大家关注指导小奥、一起进步 专栏介绍: 本专栏是JavaSwing项目实战、目前作者还在更新整理、每一套都是经过…

lbp2900打印机linux驱动下载,佳能LBP2900打印机驱动

佳能LBP2900打印机驱动佳能LBP2900打印机驱动是一款由佳能官方推出的佳能LBP2900打印机驱动程序,佳能LBP2900打印机驱动操作简单、功能实用,能够有效解决打印机无法识别设备的问题,保证您进行正常的打印工作,是用户不可缺少的打印…

windows安装MySQL数据库【附安装文档和安装包】

MySQL下载地址: 链接:https://pan.baidu.com/s/1LE7jpBgcZFaQyLwYdXvvJQ&shflsharepset 提取码:ksx3 复制这段内容后打开百度网盘手机App,操作更方便哦 1,双击安装程序,进入安装页面:在下面的打钩…

万年历c语言大作业实验,用C语言写的一个万年历

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。#include#includeint input();void re_year(int year);void output(int year,int leap,int dis_day,int para);void main(){int year,leap,dis_day,para;while(1…

基于java springboot博客管理系统设计和实现

文末可参与投票哟 🍅 作者主页:Java李杨勇 🍅 简介:Java领域优质创作者🏆、Java李阳勇 公号作者✌ 简历模板、学习资料、面试题库、技术互助【关注我,都给你】 🍅 欢迎点赞 👍 收藏…

基于JavaSwing ATM取款机系统的设计和实现

本项目演示地址链接 》 前言: 本项目是使用Java swing开发,可实现ATM系统/银行系统的基本登陆、转账、查询余额、存取款业务。界面设计比较简介、适合作为Java课设设计以及学习技术使用。 需求分析: 随着生活水平的提高,消费量的增大,开销也越来越大,自然离不开的就是钱…

c语言成绩等级switch语句,请高手 帮忙做一道c语言题 编程,把百分制成绩转换成5级记分制,要求用switch语句。 90分以上(包括90):...

请高手 帮忙做一道c语言题 编程,把百分制成绩转换成5级记分制,要求用switch语句。 90分以上(包括90):关注:243 答案:6 mip版解决时间 2021-02-04 20:52提问者巴黎左岸2021-02-03 20:52编程,把百分制成绩转换成5级记分制&#xf…

基于JavaSwing坦克大战游戏的设计和实现

本项目演示地址链接 》 还记得传说中的经典90坦克大战吗?那些怀旧的记忆,伴随着我们一起走过来的经典坦克大战,刚开始那战战兢兢,屡屡被敌人坦克击毁的情景历历在目。现在好了,再也不用担心敌人坦克了,可以横冲直撞,横扫敌人坦克了。作为程序员的我刚好可以利用所学…

二级c语言程序设计翻译,C语言程序设计报错英文翻译

C语言程序设计报错英文翻译C出错提示英汉对照表 来源: 杨赫的日志Ambiguous operators need parentheses -----------不明确的运算需要用括号括起- Ambiguous symbol xxx ----------------不明确的符号-Argument list syntax error ----------------参数表语法错误-…

JavaSwing+mysql的图书管理系统设计实现

本项目演示地址链接 》 前言: 项目是使用Java swing开发,可实现基础数据维护、图书类型管理和维护、图书信息管理和维护、注销退出、关于作者简介等功能。界面设计比较简介、适合作为Java课设设计以及学习技术使用。 引言 随着计算机及网络技术的飞速发展,…