急求java剪刀石头布布游戏java完整小程序

java小系统
& & & & & & & & & & &图书管理系统
&&&&&&&&&&&&&&&&&&&&&&&& 目录
第一章 研究前提................................................................................1
第二章 系统分析................................................................................3
第三章 数据库分析............................................................................5
第四章 系统详细设计与具体实现....................................................8
第五章 收获与体会............................................................................14
第六章 系统源代码............................................................................15
&&&&&&&&&&&&&&&&&&& 第一章
&&&&&&&&&&&&&&&&& &研究前提
一:目的及要求
&&1:下载并了解jdk1.8
& 2:下载并且学会***Microsoft SQL Server 2008数据库
& 3:下载并***eclipse 8.0 java开发工具
& 4:掌握数据库的连接,了解java开发工具,熟悉java开发运行环境,学会用java编写项目,知道如何搭建系统框架,通过这个系统培养我们的眼光以及用java开发项目的兴趣
& Jdk下载地址:Oracle官网”www.8u10-windows-i586.exe”
&/javase/downloads/index.jsp&&
& Microsoft SQLServer 2008地址:CMDN开源社区
& Eclipse 8.0下载地址:http://www.eclipse.org
&二:研究环境
&& JDK1.8&&& SQL server 2008& eclipse 8.0 windows 8.0操作系统& PC
&三:研究环境搭建
& 说明一下要找到适合自己操作系统的***包,下载完***包后解压到指定***路径。直接点击exe可执行程序,***到你指定的路径,&&&&&&&&&&&&&&&&&& 如果没有特殊要求,一般默认***到C:\Program Files\Java目录下。
& JDK环境配置,由于JDK提供的编译与运行都是基于命令行的,所以应该进行一下DOS下面的一个设定,把JDK***目录的bin添加到DOS的外部命令中,这样就可以直接运用bin目录下的exe程序。
& 配置步骤:开始-&设置-&控制面板-&系统(或者在我的电脑 右键选择属性。系统-&高级-&环境变量。在环境变量窗口中,选择系统变量中变量名为PATH的环境变量,双击该按钮。把JDK***路径中的bin目录的绝对路径,添加到PATH变量的值中,并且用半角的分号和已有路径进行分隔。
& 检测jdk是否***成功。
& 开始-&程序-&附件-&命令提示符(windows+r) 在命令行中输入javac,并回车执行。如果输出的是使用说明,则配置成功,否则重新配置环境。
eclipse使用说明
& Eclipse是一个开源,免费的集成开发工具。
& Eclipse的***很简单,只要解压到任意路径下就行,要说明的是***eclipse前先***jdk。
然后,关于eclipse的使用,依次需要我自己去实践,比如
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 1
project-&package-&class 等等,重要的是去如何运行,调试,熟悉jdk1.6 API
文档说明也是必要的。
SQL server 2008说明
& 1.1SQL server 2008数据库是一个非常好的工具。数据库***是一个煎熬的过程,它对于新手来说是一个比较耗时的。
注释:SQL Server 2008是一个重大的产品版本,它在Microsoft的数据平台上发布,帮助用户的组织随时随地管理任何数据。它可以将结构化、半结构化和非结构性文档的数据(例如图像和音乐)直接存储到数据库中。SQL Server 2008 提供一系列丰富的集成服务,可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,用户可以控制数据而不用管数据存储在哪里。
& ***方法建议直接百度SQL server 2008***过程的图示步骤。(这里就不再说明具体注意事项)&&& 尽管***成功,还需要进行一些补丁。
&1.2 在连接数据库之前必须保证SQL&Server&2008是采用SQL&Server身份验证方式而不是windows身份验证方式。如果在***时选用了后者,则重新设置如下:
&1.3 ***好SQL&Server&2008后,运行开始→所有程序→Microsoft&SQL&Server&2008→配置工具→SQL&Server配置管理器,在打开的窗口的左边找到MSSQLSERVER的协议,在右边右单击TCP/IP,选择已启用。如果Named&Pipes&未启用也设为启用。右边的&TCP/IP,在弹出的窗口中选择IP地址标签,把IPAll中的&TCP端口&设成&1433,并将上方所有的已启用选项设置成是。
&1.4 然后重启数据库,重启完毕后,接下来使用命令测试1433端口是否打开。
开始菜单→运行cmd→在命令提示符下输入:telnet&127.0.0.1&1433(注意telnet与127之间有空格,1与1433之间有空格)若提示“不能打开到主机的连接,在端口1433:&连接失败”,则说明1433端口没有打开,需要重新进行以上配置。
如何实现eclipse与数据库SQLserver2008 的连接
& 2.1 为使各个小程序都能连接在一起,需使用JDBC连接数据库,包括***ODBC驱动,连接数据源。所以,需要下载驱动程序工具。
Microsoft&JDBC&Driver&for&SQL&Server
上面为下载地址。
&2.2 在环境变量中配置JDBC&Driver,方法与配置jdk类似,这里不再重述。
&2.3 检测是否可以通过eclipse加载驱动数据库
&& 2.3.1打开SQL&Server&2008,在其中新建数据库 Test
&& 2.3.2运行Eclipse,新建一个Java&Project&名为&Test&&&&&&
&& 2.3.3& 右击工程名
Build&Path→Configure&Build&Path,在打开的窗口的右边选Libraries标签,然后单击&Add&External JARs,找到sqljdbc4jar文件并打开,然后单击
&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&2
OK完成构建路径的配置
最后,进行程序设计,使eclipse成功加载驱动数据库
&&在test中建立一个名为package的包,源代码如下:
package pkg;
import java.sql.*;
public class
public static
void main(String
& String driverName=&com.microsoft.sqlserver.jdbc.SQLServerDriver&;
& String dbURL=&jdbc:sqlserver://localhost:1433;DatabaseName=创建的数据库名&;
& String userName=&数据库登录名&;
& String userPwd=&登录密码&;
{&&&&&&&Class.forName(driverName);
&&&&&&& System.out.println(&加载驱动成功!&);
}catch(Exception e){
&&&&&&& e.printStackTrace();
&&&&&&& System.out.println(&加载驱动失败!&);
Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd);
System.out.println(&连接数据库成功!&);
}catch(Exception e)
{e.printStackTrace();&&&&&&&&&&&&&&&&&&&
System.out.print(&SQL
Server连接失败!&);}&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&}
直到出现 加载驱动成功! 连接数据库成功!
&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&& 第二章
&&&&&&&&&&&&&&&&&&&& 系统分析
&&针对现有的图书馆管理系统,我们设计简单的图书系统,以用来满足我们基本的需求。& 业务流程:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 3
&&& 用户登录
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&No
&& 显示主界面
&&&&&&&&&&&&&&&&&&&&&&&&&&&& Yes
&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&
针对业务流程,现在描述其功能如下:
1.用户登录 系统对其用户的合法性进行检查。
2.扩充书库 对新购进的书进行编号,并且把基本信息录入计算机,存储于数据库,易于形成表,并对表进行处理。
3.系统管理 更改界面,退出系统。
4.用户管理 更改用户密码,查询用户。
5.图书预览 查询图书管理系统的库存,及其图书信息
&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&4
6.图书查询 查询图书管理系统是否存在该图书
7.帮助 使用指南,关于系统介绍,作者信息 版权所有
8.图书管理 删除用户等等操作
& 根据系统的基本原理,详细设计分析所需功能,对目标进行精确的概述,从而把实现目标进行转换java语言,进行系统思想转换。详细的源代码见第六章系统源代码。
&&&&&&&&&&&&&&&&&&&&& 第三章
&&&&&&&&&&&&&&&&&&& 数据库分析
& 图书资料
&&&&&&&&&&&&&&&&&&&
&&&&&&&&& &&&&&&1&&&&&&&&&&&&&&&&&&&& n&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&实体型---&&&&&&&&&&&&&&&&&&&&&&&
属性-----&
实体型---&
dbo.Table_book表
&&&&&&&&&&&&&&&&&&&&&&&&&& 5
SELECT&&&& TOP (200) 图书名, 图书号, 单价, 作者, 出版社, 入库时间
FROM&&&&&& Table_book
ORDER BY 作者
dbo.Table_user表
SELECT&&&& TOP (200) 用户名, 密码
FROM&&&&&&&& Table_user
表的相关信息&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&& &&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 6
&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&
数据表dbo.Table_book
数据表dbo.Table_user
&&&&&&&&&&&&&&&&&&&&&&&&&&& 7
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&& 第四章
&&&&&&&&&&&&&& 系统详细设计与具体实现
系统的功能分析与详细设计
& 本系统的具体实现目标
?界面简单 友好 美观 画面感强
?操作简单 快捷方便 信息分类清晰准确 数据灵活查询
?数据存储安全 可靠
?对于用户输入的数据 进行严格检查 排除人为因素
&操作说明:
系统用户名 sa 密码 123
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 8
1 选择系统管理/更改主题按钮,在弹出的窗体中进行对界面更换
2 选择系统管理/退出系统按钮,将要退出图书管理系统
3 选择图书预览/预览图书按钮,在弹出的窗体中进行查看库存
4 选择图书管理/删除操作按钮,在弹出窗体中进行操作
5 选择扩充图书/新书登记按钮,在窗口中添加新书信息
6 选择查询/查询图书操作按钮,在窗口中进行操作
7 选择用户管理/更改密码按钮,在窗体中进行更改密码操作
8 选择帮助/关于作者按钮,显示作者信息;帮助/关于系统按钮,显示系统相关信息;帮助/使用指南按钮,显示操作指南。
系统的具体实现
&&&&&&&&&&&&&&&&&&&&&&&&&&9
系统管理系统/更改主题/睿智深灰
&&&&&&&&&&&&&&&&&&&&&&&&&&&& 10
&&&&&&&&&&&&&&&&&&&&&&&&&& &&&11& &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&
用户管理/更改密码
&&&&&&&&&&&&&&&&&&&&&&&& 12
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&
&&&&&&&&&&
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 13
&&&&&&&&&&&&&&&&&&& &&&&&&第五章
&&&&&&&&&&&&&&&&&&收获与体会
收获与体会
& 本人自从开始接触java,对其兴趣浓厚,然而其学习路途并不是很顺利,尤其是到用数据库***和用java连接数据库时,其中遇到的困难很多,当时觉得太难了,现在回过头来看,其实还好。一切都是值得的,因为在用java做这个图书管理系统过程中收获挺多,自己进一步了解与入门java。
& 通过对java的学习,以及应用eclipse开发工具,我们初步了解通过编程实现企业图书管理的主要核心,实现一个简单图书管理系统。
& 系统在调试过程中基本调试了当初的设计要求,设计合理,功能较为完善,目前可以做到查询,改密码,添加,删除,修改等等基本操作。其中程序源代码我将会在在附录中给出,相信大家通过源代码会进一步对编程思想有更深的了解。在这个页面设计中,也有许多的不足,页面设计较为简单,不够精致,美观。&&&&&&&&&&&&&&&&&&&&&&&&
& 由于学习java的时间较短和使用java编程的能力有限,我们设计的图书管理系统只能完成几个简单的基本功能,还存在很多问题需要我们亟待解决,系统设计的不精致同时存在着许多不足与缺陷,还需要我们进一步完善。
& 根据目前大二的我以及对IT的了解,可以使用jsp进行网页界面的设计,使用MVC设计模式,采用开源框架Struts,使之具有开发效率高、设计灵活、生成的软件界面友好美观等特点。
& 在弄图书管理系统之前,我参阅了大量的图书设计文献,对所开发系统的现状,发展情况以及未来发展趋势有了深入的了解;在整个系统的需求分析过程中对开发前期工作的流程步骤有了深入的掌握;在开发过程我进一步学习了Java的基础语法和一些HTML网页设计方面的知识,以便使系统有更好的美观性,在编写过程中也规范了许多编码习惯。
& 在整个系统开发的过程中,我学到了很多新的知识,以前学过的许多知识点在运用过程中也有了更为深入的分析,这是我大一到大二期间做过的规模最大的系统,在这个过程中也体会到了如何将书本知识转化到实际的应用中。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 14
&&&&&&&&&&&&&&&&&&&&&&&&&& 第六章
&&&&&&&&&&&&&&&&&系统源代码
登录源代码Login类
//login类所在的包
import java.sql.*;//包含实现java程序与操作系统以及其他java程序之间进行数据交换的类&
import java.awt.*;//包含创建用户界面与绘制图形的类
import java.awt.event.*;//事件处理所在的类
import javax.swing.*;//包含轻量级组件
@SuppressWarnings(&deprecation&)
public class Login extends JFrame implementsActionListener//登录界面login类继承JFrame类实现ActionListener接口
&&&&&& privatestatic final long serialVersionUID = 1L;//序列化时保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。
&&&&&& Containercp=//定义空集合
&&&&&& JFramef=//定义容器
&&&&&& JButtonj1,j2;//定义按钮
&&&&&& JTextF//文本框 用于存储用户名
&&&&&& JPasswordF//密码框 用于存储密码
&&&&&& JLabeljlabel1,jlabel2;//用于短文本字符串或图像或二者的显示区 标签
&&&&&& C//定义颜色
&&&&&& JPaneljp1,jp2;//JPanel 是一般轻量级容器中间容器
&&&&&& Login()//实现登入界面
&&&&&& f=newJFrame(&小型图书馆管理系统&);//显示&小型图书管理系统&的标题
&&&&&& j1=newJButton(&登录&);//显示按钮登录
&&&&&& j2=newJButton(&取消&);//显示按钮取消
&&&&&& cp=f.getContentPane();//返回窗体的 contentPane对象
&&&&&& jlabel1=newJLabel(& 用户 &);//显示用户
&&&&&& jlabel2=newJLabel(& 密码 &);//显示密码
&&&&&& jp1=newJPanel();//面板1
&&&&&& jp2=newJPanel();//面板2
&&&&&& name=newJTextField(19);//设置用户名长度大小
&&&&&& pwd=newJPasswordField(19);//设置密码长度大小
&&&&&& jp1.add(jlabel1);
&&&&&& jp1.add(name);
&&&&&& jp1.add(jlabel2);
&&&&&& jp1.add(pwd);//以上分别把标签1 用户名 标签2 密码添加到面板1
JLabel JL=new JLabel(&&html&&fontcolor=red size='6'&&i&欢迎登陆图书馆
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 15
&/i&&/font&&,SwingConstants.CENTER);
//定义标签JL 将JL中的内容添加到某区域的中心位置。用于罗盘方向常量&&&&&&&&&&&&&&&&&&&&&&&
(NORTH 等)和框方向常量(TOP 等)。
//&&html&&font color=red size='6'&&i&欢迎登陆图书馆&/i&&/font&&
//规定文本的字体、字体尺寸、字体颜色&&color-&颜色&&size-&字体&&&i&标签显示斜体文本效果
cp.add(JL,&North&);//将JL添加到NORTH
jp2.add(j1);//将按钮登录添加到面板2
jp2.add(j2);//将按钮取消添加到面板2
cp.add(jp1,&Center&);//将面板1添加到Center
cp.add(jp2,&South&);//将面板2添加到South
jp1.setBackground(new Color(245,211,155));//label颜色& 面板1设置背景&& 三色板调制颜色
Toolkit kit=Toolkit.getDefaultToolkit();//
Dimension screen=kit.getScreenSize();//
int x=screen.//设置窗口的宽度
int y=screen.//设置窗口的高度
f.setSize(300,300);//窗口设置大小
int xcenter=(x-300)/2;//设置窗口距离长
int ycenter=(y-300)/2;//设置窗口距离宽
f.setLocation(xcenter,ycenter);//显示在窗口中央
f.setVisible(true);//窗口可见
j1.addActionListener(this);//注册事件***器
j2.addActionListener(this);//注册事件***器
f.addWindowListener(new WindowAdapter ()//事件适配器
{//设置窗口的关闭方式
public void windowClosing(WindowEvent e)
System.exit(0);
public void confirm()//验证用户名与密码是否匹配
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& //连接数据库
&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&&&&&&&&& System.out.println(&加载驱动程序出错&);//加载异常}
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 16&&&&
&&&&&& Stringdbuser = &sa&;//数据库登录名
&&&&&& Stringdbpwd = &123&;//数据库登录密码
&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&& //直接使用当前类目录所在的数据库文件
&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&& //连接数据库
&&&&&& Statementsql=con.createStatement();
&&&&&& Stringuname=name.getText().trim();
&&&&&& StringMima=pwd.getText().trim();
&&&&&& StringqueryMima=&select * from dbo.Table_user where 用户名='&+uname+&' and 密码='&+Mima+&'&;
&&&&&& //操作数据库的语句从dbo.Table_user表中获取用户名和密码
&&&&&& ResultSetrs=sql.executeQuery(queryMima);
&&&&&& if(rs.next())
&&&&&&&&&&&&& newBook(uname);//登录密码正确& 则进入主框架 主登录界面
&&&&&&&&&&&&& f.hide();
&&&&&&&&&&&&& con.close();
&&&&&& else
&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&该用户不存在&,&提示!&,JOptionPane.YES_NO_OPTION);
&&&&&& //如果不存在该用户则抛出用户不存在
&&&&&& name.setText(&&);
&&&&&& pwd.setText(&&);//重置用户名 密码框
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());//异常问题的处理
&&&&&& publicvoid actionPerformed(ActionEvent e)
&&&&&&&&&&&&& Stringcmd=e.getActionCommand();
&&&&&&&&&&&&& if(cmd.equals(&登录&))
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& confirm();//匹配登录按钮
&&&&&&&&&&&&& }
&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&& 17
else if(cmd.equals(&取消&))&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&& f.dispose();//匹配取消按钮
&&&&&&&&&&&&& }
&&&&&& publicstatic void main(String [] args)
&&&&&&&&&&&&& newLogin();//程序入口处
图书登记BookIn类
import java.sql.*;//包含实现java程序与操作系统以及其他java程序之间进行数据交换的类&
import java.awt.*;//包含创建用户界面与绘制图形的类
import java.awt.event.*;//事件处理所在的类
import java.awt.C//包含容器类
import javax.swing.*;//包含轻量级组件
public class BookIn implements ActionListener{
&&&&&& //BookIn类实现接口ActionListener
JFrame f3;//设置顶级窗口对象
C//容器对象
JPanel jp1,jp2,jp3,jp4,jp,jpanelW//创建面板
JButton jbt1,jbt2;//设置按钮
JLabel label1,label2,label3,label4,//创建标签
S//创建字符串对象
JTextField tf1,tf2,tf3,tf4,tf5,tf6;//创建文本框
BookIn()//BookIn类
&&&&&& f3=newJFrame(&图书信息添加&);//设置标题
&&&&&& cp=f3.getContentPane();//返回ContentPane内容
&&&&&& jp1=newJPanel();//面板jp1
&&&&&& jp2=newJPanel();//面板jp2
&&&&&& jp3=newJPanel();//面板jp3
&&&&&& jp4=newJPanel();//面板jp4
&&&&&& jpanelWest=newJPanel();//创建面板jpanelWest
&&&&&& jp=newJPanel();
&&&&&& jbt1=newJButton(&确定&);
&&&&&& jbt2=newJButton(&取消&);//创建按钮 内容分别为确定& 取消
&&&&&& label=newJLabel(&&html&&font color=blue size='6'&新书登记&/font&&,SwingConstants.CENTER);
&&&&&& //创建标签& 放到中间
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 18
label.setForeground(Color.black);//标签设置前景色
&&&&&& tf1=newJTextField(20);//设置文本框tf1的大小
&&&&&& tf2=new JTextField(20);//设置文本框tf2的大小
&&&&&& tf3=newJTextField(20);//设置文本框tf3的大小
&&&&&& tf4=newJTextField(20);//设置文本框tf4的大小
&&&&&& tf5=newJTextField(20);//设置文本框tf5的大小
&&&&&& tf6=newJTextField(20);//设置文本框tf6的大小
&&&&&& jp1.add(jbt1);
&&&&&& jp1.add(jbt2);
&&&&&& JPaneljpanel=new JPanel();
&&&&&& jpanel.add(label);//面板添加标签 label
&&&&&& JPanelpp4=new JPanel();
&&&&&& JPaneljpane4=new JPanel();
&&&&&& cp.add(jpanel,&North&);//面板放置North
&&&&&& JPanelpp2=new JPanel(new GridLayout(6,1,20,10));//设置为网格布局 容器的水平间距为20 垂直布局间距为10
&&&&&& JPanelpp3=new JPanel();
&&&&&& pp4.setLayout(newGridLayout(6,1));//设置容器6行1列
&&&&&& pp4.add(newJLabel(&图书名&,SwingConstants.CENTER));
&&&&&& pp2.add(tf1);
&&&&&& pp4.add(newJLabel(&图书号&,SwingConstants.CENTER));
&&&&&& pp2.add(tf2);
&&&&&& pp4.add(newJLabel(&单 价&,SwingConstants.CENTER));
&&&&&& pp2.add(tf3);
&&&&&& pp4.add(newJLabel(&作 者&,SwingConstants.CENTER));
&&&&&& pp2.add(tf4);
&&&&&& pp4.add(newJLabel(&出版社&,SwingConstants.CENTER));
&&&&&& pp2.add(tf5);
&&&&&& pp4.add(newJLabel(&入库时间&,SwingConstants.CENTER));
&&&&&& pp2.add(tf6);
&&&&&& //以上分别为将图书名 图书号 单价 作者 出版社 入库时间添加到pp4面板中
&&&&&& //以上分别为将文本框添加到pp2面板中
&&&&&& pp3.add(jbt1);
&&&&&& pp3.add(jbt2);//& 分别将按钮添加到面板pp3中
&&&&&& cp.add(pp4,&West&);
&&&&&& cp.add(pp2,&East&);
&&&&&& cp.add(pp3,&South&);
&&&&&& cp.add(jpane4,&Center&);
&&&&&& //容器中West-&pp4 East-&pp2 South-&pp3Center-&jpane4 North-&jpanel
&&&&&& f3.setSize(320,300);//设置顶级窗口大小
&&&&&& f3.setVisible(true);//设置顶级窗口可视化
&&&&&& jbt1.addActionListener(this);
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 19
jbt2.addActionListener(this);
public void insertRecord()
if(tf1.getText().equals(&&)||tf2.getText().equals(&&)||tf3.getText().equals(&&)||
&&&&&&&&&&&&&&&&&&&& tf4.getText().equals(&&)||tf5.getText().equals(&&)||tf6.getText().equals(&&))
&&&&&&&&&&&&& JOptionPane.showMessageDialog(f3,&请填写图书资料&);
&&&&&&&&&&&&&
&&&&&& }//进行图书添加
&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
}//连接数据库
&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&& System.out.println(&加载驱动程序出错&);
&&&&&& Stringdbuser = &sa&;
&&&&&& String dbpwd= &123&;
&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&& Strings=&insert into dbo.Table_bookvalues('&+tf1.getText()+&','&+tf2.getText()+&','&+tf3.getText()+&','&
&&&&&&&&&&&&&&&&&&&& +tf4.getText()+&','&+tf5.getText()+&','&+tf6.getText()+&');&;
&&&&&& String query=&select* from Table_book& where 图书号='&+tf2.getText()+&'&;
&&&&&& //查询功能
&&&&&& sql=con.createStatement();
&&&&&& ResultSetrs=sql.executeQuery(query);
&&&&&& booleanmoreRecords=rs.next();//以上数据库操作基本上一样
&&&&&& if(moreRecords)
&&&&&&&&&&&&& JOptionPane.showMessageDialog(f3,&图书号已经被使用,请重新输入&);
&&&&&&&&&&&&& con.close();//判断图书号是否已经被用
&&&&&&&&&&&&& tf2.setText(&&);//重置图书号
&&&&&&&&&&&&&
&&&&&& intinsert=sql.executeUpdate(s);
&&&&&& if(insert==1)
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 20&&&
JOptionPane.showMessageDialog(null,&图书信息录入成功!!!&);
&&&&&&&&&&&&& con.close();
&&&&&&&&&&&&& tf1.setText(&&);
&&&&&&&&&&&&& tf2.setText(&&);
&&&&&&&&&&&&& tf3.setText(&&);
&&&&&&&&&&&&& tf4.setText(&&);
&&&&&&&&&&&&& tf5.setText(&&);
&&&&&&&&&&&&& tf6.setText(&&);//更新数据库,并且重置六个文本框
catch(SQLException g)
&&&&&& System.out.println(g.getErrorCode());
&&&&&& System.out.println(g.getMessage());
@SuppressWarnings(&deprecation&)@Override
public void actionPerformed(ActionEvent e) {
&&&&&& Stringcmd=e.getActionCommand();
&&&&&& if(cmd.equals(&确定&))
&&&&&&&&&&&&& insertRecord();//匹配按钮事件,调用插入方法
&&&&&& elseif(cmd.equals(&取消&))
&&&&&&&&&&&&& f3.hide();//退出窗口
public static void main(String [] args)
&&&&&& newBookIn();
更改密码UpdateMima类
//代码注释与上面几个类的代码近似一样
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class UpdateMima extends JFrame implementsActionListener{
&&&&&& privatestatic final long serialVersionUID = 1L;
&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&21
JPanel jp1,jp2,jp3,jp4,jp,jpanelW
JButton jbt1,jbt2;
JPasswordField tf1,tf2,tf3;
JLabel label1,label2,label3,label4;
UpdateMima(){}
UpdateMima(String username)
&&&&&& sno=
&&&&&& f=newJFrame(&修改密码&);
&&&&&& cp=f.getContentPane();
&&&&&& jp1=newJPanel();
&&&&&& jp2=newJPanel();
&&&&&& jp3=newJPanel();
&&&&&& jp4=newJPanel();
&&&&&& jpanelWest=newJPanel();
&&&&&& jp=newJPanel();
&&&&&& jbt1=newJButton(&确定&);
&&&&&& jbt2=newJButton(&取消&);
&&&&&& label=newJLabel(&&html&&font color=red size='4'&&
&&&&&&&&&&&&&&&&&&&& +&修改密码&br&&hr&请记住你的密码&/font&&,SwingConstants.CENTER);
&&&&&& label.setForeground(Color.gray);
&&&&&& name=newJTextField(10);
&&&&&& tf1=newJPasswordField(10);
&&&&&& tf2=newJPasswordField(10);
&&&&&& tf3=newJPasswordField(10);
&&&&&& jp1.add(jbt1);
&&&&&& jp1.add(jbt2);
&&&&&& JPaneljpanel=new JPanel();
&&&&&& jpanel.add(label);
&&&&&& JPanelpp4=new JPanel();
&&&&&& JPaneljpane4=new JPanel();
&&&&&& JPanelpp3=new JPanel();
&&&&&& cp.add(jpanel,&North&);
&&&&&& JPanelpp2=new JPanel(new GridLayout(6,1,20,10));
&&&&&& pp4.setLayout(newGridLayout(6,1,20,10));
&&&&&& pp4.add(newJLabel(&用户名: &,SwingConstants.RIGHT));
&&&&&& pp4.add(name);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 22&&&&&&
pp4.add(new JLabel(&原密码: &,SwingConstants.RIGHT));
&&&&&& pp4.add(tf1);
&&&&&& pp4.add(newJLabel(&新密码: &,SwingConstants.RIGHT));
&&&&&& pp4.add(tf2);
&&&&&& pp4.add(newJLabel(&确认密码: &,SwingConstants.RIGHT));
&&&&&& pp4.add(tf3);
&&&&&& pp4.add(newJLabel());
&&&&&& JPaneljpbutton=new JPanel();
&&&&&& jpbutton.add(jbt1);
&&&&&& jpbutton.add(jbt2);
&&&&&& pp3.add(jbt1);
&&&&&& pp3.add(jbt2);
&&&&&& pp2.add(jpbutton);
&&&&&& cp.add(pp4,&West&);
&&&&&& cp.add(pp2,&Center&);
&&&&&& cp.add(pp3,&South&);
&&&&&& cp.add(jpane4,&East&);
&&&&&& f.setSize(400,300);
&&&&&& f.setVisible(true);
&&&&&& jbt1.addActionListener(this);
&&&&&& jbt2.addActionListener(this);
@SuppressWarnings(&deprecation&)
public void upDateM()
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&&&&&&&&& System.out.println(&加载驱动程序出错&);
&&&&&& try
&&&&&&&&&&&&& Stringdbuser = &sa&;
&&&&&&&&&&&&& &String dbpwd = &123&;
&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&& Statementsql=con.createStatement();
&&&&&& Stringuname=name.getText().trim();
&&&&&& StringqueryMima=&select *& from Table_userwhere 用户名='&+uname+&'&;
&&&&&& ResultSetrs=sql.executeQuery(queryMima);
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 23
if(rs.next())
&&&&&&&&&&&&& StringnewMima=tf2.getText().trim();
&&&&&&&&&&&&& Strings=&update dbo.Table_user set 密码='&+newMima+&'where用户名&='&+uname+&'&;
&&&&&&&&&&&&& sql=con.createStatement();
&&&&&&&&&&&&& intupdateMima=sql.executeUpdate(s);
&&&&&&&&&&&&& if(updateMima==1)
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& JOptionPane.showMessageDialog(f,&密码修改成功!&);
&&&&&&&&&&&&& }
&&&&&&&&&&&&& f.hide();
&&&&&&&&&&&&& con.close();
&&&&&& else
&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&该用户不存在&,&提示!&,JOptionPane.YES_NO_CANCEL_OPTION);
&&&&&& name.setText(&&);
&&&&&& tf1.setText(&&);
&&&&&& tf2.setText(&&);
&&&&&& tf3.setText(&&);
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());
@SuppressWarnings(&deprecation&)
public void actionPerformed(ActionEvent e) {
&&&&&& Stringcmd=e.getActionCommand();
&&&&&& if(cmd.equals(&确定&))
&&&&&&&&&&&&& if(name.getText().equals(&&)||tf1.getText().equals(&&)||tf2.getText().equals(&&)||tf3.getText().equals(&&))
&&&&&&&&&&&&& {
&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&请填写用户所有的信息&,&提示&,JOptionPane.YES_NO_OPTION);
&&&&&&&&&&&&&
&&&&&&&&&&&&& }
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 24
if(tf2.getText().trim().equals(tf3.getText().trim()))
&&&&&&&&&&&&& upDateM();
else if(cmd.equals(&取消&))
&&&&&& f.hide();
public static void main(String []args )
&&&&&& newUpdateMima(&&);
删除图书RemoveBook类
//代码注释与上面几个类的代码近似一样
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class RemoveBook implements ActionListener{
JPanel jpS,jpanelW
JButton jbt1,jbt2,jbt3;
JLabel label,L;
Object columnName[]={&图书名&,&图书号&,&单价&,&作者&,&出版社&,&入库时间&};
Object ar[][]=new Object[80][6];
String count=&0&;
RemoveBook()
&&&&&& f=newJFrame(&书籍是人类进步的阶梯!&);
&&&&&& cp=f.getContentPane();
&&&&&& jpS=newJPanel();
&&&&&& jpanelWest=newJPanel();
&&&&&& jbt1=newJButton(&查询&);
&&&&&& jbt1.setBackground(Color.orange);
&&&&&& jbt2=newJButton(&取消&);
&&&&&& jbt2.setBackground(Color.magenta);
&&&&&& jbt3=newJButton(&删除&);
&&&&&& &&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&25
jbt3.setBackground(Color.LIGHT_GRAY);
&&&&&& label =newJLabel(&&html&&font color=yellow size='4'&&
&&&&&&&&&&&&&&&&&&&& +&删除图书&br&&hr&&
&&&&&&&&&&&&&&&&&&&& +&&html&&font color=red size='4'&请输入要删除的图书名:&/font&&,SwingConstants.CENTER);
&&&&&& label.setForeground(Color.blue);
&&&&&& L=newJLabel(&该种图书共有&+count+&本&);
&&&&&& table=newJTable(ar,columnName);
&&&&&& JScrollPanesrollpane=new JScrollPane(table);
&&&&&& tf=newJTextField(18);
&&&&&& jpS.add(jbt1);
&&&&&& jpS.add(jbt2);
&&&&&& jpS.add(jbt3);
&&&&&& JPaneljpanel=new JPanel();
&&&&&& jpanel.add(label);
&&&&&& jpanel.add(tf);
&&&&&& JPanelpp4=new JPanel();
&&&&&& JPaneljpE=new JPanel();
&&&&&& cp.add(jpanel,&North&);
&&&&&& JPanelp=new JPanel();
&&&&&& p.setLayout(newBorderLayout());
&&&&&& p.add(L,&North&);
&&&&&& p.add(srollpane);
&&&&&& cp.add(pp4,&West&);
&&&&&& cp.add(p,&Center&);
&&&&&& cp.add(jpS,&South&);
&&&&&& cp.add(jpE,&East&);
&&&&&& jpS.setBackground(Color.lightGray);
&&&&&& jpanelWest.setBackground(Color.lightGray);
&&&&&& jpanel.setBackground(Color.lightGray);
&&&&&& f.setSize();
&&&&&& f.setVisible(true);
&&&&&& jbt1.addActionListener(this);
&&&&&& jbt2.addActionListener(this);
&&&&&& jbt3.addActionListener(this);
public void showRecord(String ql)
&&&&&& while(i&=0)
&&&&&&&&&&&&& ar[i][0]=&&;
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 26
&&&&&& ar[i][1]=&&;
&&&&&&&&&&&&& ar[i][2]=&&;
&&&&&&&&&&&&& ar[i][3]=&&;
&&&&&&&&&&&&& ar[i][4]=&&;
&&&&&&&&&&&&& ar[i][5]=&&;
&&&&&&&&&&&&& i--;
&&&&&& i=0;
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&&&&&&&&& System.out.println(&加载驱动程序出错&);
&&&&&& try
&&&&&&&&&&&&& &String dbuser = &sa&;
&&&&&&&&&&&&& &String dbpwd = &123&;
&&&&&&&&&&&&& &Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&& &&& S
&&&&&& &&&
&&&&&& &&& String s=&select * from dbo.Table_bookwhere 图书名&='&+ql+&'&;
&&&&&& &&& sql=con.createStatement();
&&&&&& &&& ResultSet rs=sql.executeQuery(s);
&&&&&& &&& while(rs.next())
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& Stringbname=rs.getString(1);
&&&&&&&&&&&&&&&&&&&& Stringbno=rs.getString(2);
&&&&&&&&&&&&&&&&&&&& Stringprice=rs.getString(3);
&&&&&&&&&&&&&&&&&&&& Stringwriter=rs.getString(4);
&&&&&&&&&&&&&&&&&&&& Stringpublish=rs.getString(5);
&&&&&&&&&&&&&&&&&&&& Stringindate=rs.getString(6);
&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&& ar[i][0]=
&&&&&&&&&&&&&&&&&&&& ar[i][1]=
&&&&&&&&&&&&&&&&&&&& ar[i][2]=
&&&&&&&&&&&&&&&&&&&& ar[i][3]=
&&&&&&&&&&&&&&&&&&&& ar[i][4]=
&&&&&&&&&&&&&&&&&&&& ar[i][5]=
&&&&&&&&&&&&& i++;}
&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&& 27
count=&&+i+&&;
&&&&&&&&&&&&& table=newJTable(ar,columnName);
&&&&&&&&&&&&& L.setText(&书库现有图书&+count+&本&);
&&&&&&&&&&&&& f.repaint();
&&&&&&&&&&&&& con.close();
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());&&&&&
public void deleteRecord(int ql)
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&&&&&&&&& System.out.println(&加载驱动程序出错&);
&&&&&& try
&&&&&& {&&&&
&&&&&&&&&&&&& S
&&&&&&&&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& Connectioncon=DriverManager.getConnection(url);
&&&&&&&&&&&&& Strings=&delete * from dbo.Table_book where 图书名='&+ql+&'&;
&&&&&&&&&&&&& sql=con.createStatement();
&&&&&&&&&&&&& intdel=sql.executeUpdate(s);
&&&&&&&&&&&&& if(del==1)
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&删除成功!&,&信息&,JOptionPane.YES_NO_CANCEL_OPTION);
&&&&&&&&&&&&& }
&&&&&&&&&&&&& con.close();
&&&&&&&&&&&&& f.repaint();
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&28
@SuppressWarnings(&deprecation&)
public void actionPerformed(ActionEvent e) {
&&&&&& Stringql=&&;
&&&&&& if(e.getSource()==jbt1)
&&&&&&&&&&&&& ql=tf.getText().trim();
&&&&&&&&&&&&& showRecord(ql);
&&&&&& if(e.getSource()==jbt3)
&&&&&&&&&&&&&
&&&&&&&&&&&&& int& index=table.getSelectedRow();
&&&&&&&&&&&&& if(index==-1)
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&请输入要删除的表格行&,&输入错误&,JOptionPane.YES_NO_OPTION);
&&&&&&&&&&&&& }
&&&&&&&&&&&&& else
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& deleteRecord(index);
&&&&&&&&&&&&& }
&&&&&&&&&&&&& if(e.getSource()==jbt2)
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& f.hide();
&&&&&&&&&&&&& }
&&&&&&&&&&&&&
public static void main(String []arg)
new RemoveBook();
查询图书QueryBook类
import java.sql.*;//包含实现java程序与操作系统以及其他java程序之间进行数据交换的类&
import java.awt.*;//包含创建用户界面与绘制图形的类
import java.awt.event.*;//事件处理所在的类
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 29
import javax.swing.*;//包含轻量级组件
//查询图书
public class QueryBook implements ActionListener{
&&&&&& &*/
//QueryBook类实现接口ActionListener
&&&&&& JF//设置顶级窗口对象
C//容器对象
JPanel jpS,jpanelW//创建面板
JButton jbt1,jbt2,jbt3;//设置按钮
JLabel label,L;//创建标签
JTextF//创建文本框
Object columnName[]={&图书名&,&图书号&,&单价&,&作者&,&出版社&,&入库时间&};
Object ar[][]=new Object [2000][6];
S//创建表 与& 数组
String count=&0&;
QueryBook()
&&&&&& f=newJFrame(&书籍是人类进步的阶梯!&);//设置标题
&&&&&& cp=f.getContentPane();//返回ContentPane内容
&&&&&& jpS=newJPanel();//创建面板jpS
&&&&&& jpanelWest= new JPanel();//创建面板jpanelWest
&&&&&& jbt1=newJButton(&查询&);
&&&&&& jbt1.setBackground(Color.lightGray);//创建按钮 设为查询 并且设置背景颜色
&&&&&& jbt2=newJButton(&确定&);
&&&&&& jbt2.setBackground(Color.lightGray);//创建按钮 设为确定 并且设置背景颜色
&&&&&& jbt3=newJButton(&取消&);
&&&&&& jbt3.setBackground(Color.lightGray);//创建按钮 设为取消 并且设置背景颜色
&&&&&& label=newJLabel(&&html&&font color=blue size='6'&图书查询&br&&hr&请输入图书名:&/Font&&,SwingConstants.CENTER);
&&&&&& label.setForeground(Color.gray);
&&&&&& //设置超级文本 设置颜色
&&&&&&&&&&&&&&&&&&&& L=newJLabel(&该种图书共有&+count+&本&);//添加标签,显示多少本书
&&&&&&&&&&&&&&&&&&&& table=newJTable(ar,columnName);//建立一个新的表
&&&&&&&&&&&&&&&&&&&& JScrollPanescrollpane =new JScrollPane(table);//建立一个滚动面板
&&&&&&&&&&&&&&&&&&&& tf=newJTextField(18);//设置文本框大小
&&&&&&&&&&&&&&&&&&&& jpS.add(jbt1);
&&&&&&&&&&&&&&&&&&&& jpS.add(jbt2);
&&&&&&&&&&&&&&&&&&&& jpS.add(jbt3);//按钮jbt1 jbt2& jbt3 添加到面板jpS
&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&& 30
JPanel jpanel=new JPanel();
&&&&&&&&&&&&&&&&&&&& jpanel.add(label);
&&&&&&&&&&&&&&&&&&&& jpanel.add(tf);
&&&&&&&&&&&&&&&&&&&& JPanelpp4=new JPanel();
&&&&&&&&&&&&&&&&&&&& JPaneljpE=new JPanel();
&&&&&&&&&&&&&&&&&&&& cp.add(jpanel,&North&);//面板添加到容器North
&&&&&&&&&&&&&&&&&&&& JPanelp=new JPanel();
&&&&&&&&&&&&&&&&&&&& p.setLayout(newBorderLayout());//面板为边界布局
&&&&&&&&&&&&&&&&&&&& p.add(L,&North&);//标签为North方向
&&&&&&&&&&&&&&&&&&&& p.add(scrollpane);//面板添加滚动面板
&&&&&&&&&&&&&&&&&&&& cp.add(pp4,&West&);
&&&&&&&&&&&&&&&&&&&& cp.add(p,&Center&);
&&&&&&&&&&&&&&&&&&&& cp.add(jpS,&South&);
&&&&&&&&&&&&&&&&&&&& cp.add(jpE,&East&);//pp4-&Westp-&Center jpS-&South jpE-&East
&&&&&&&&&&&&& jpS.setBackground(Color.lightGray);//设置面板背景颜色
&&&&&&&&&&&&& jpanel.setBackground(Color.lightGray);//设置面板背景颜色
&&&&&&&&&&&&& f.setSize();//设置大小
&&&&&&&&&&&&& f.setVisible(true);//设置可视化
&&&&&&&&&&&&& jbt1.addActionListener(this);
&&&&&&&&&&&&& jbt2.addActionListener(this);
&&&&&&&&&&&&& jbt3.addActionListener(this);//按钮***事件
public void showRecord(String ql)
&&&&&& while(i&=0)
&&&&&&&&&&&&& ar[i][0]=&&;
&&&&&&&&&&&&& ar[i][1]=&&;
&&&&&&&&&&&&& ar[i][2]=&&;
&&&&&&&&&&&&& ar[i][3]=&&;
&&&&&&&&&&&&& ar[i][4]=&&;
&&&&&&&&&&&&& ar[i][5]=&&;
&&&&&&&&&&&&& i--;
&&&&&& i=0;
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&& catch(ClassNotFoundExceptione)
&&&&&&&&&&&&& System.out.println(&加载驱动程序失败&);}
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&31
&&&&&& try
&&&&&&&&&&&&& &Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& &Connectioncon=DriverManager.getConnection(url);
&&&&&&&&&&&&& &S
&&&&&&&&&&&&& &String s=&select * from dbo.Table_bookwhere 图书名 ='&+ql+&'&;
&&&&&&&&&&&&& &sql=con.createStatement();
&&&&&&&&&&&&&&&&&&&& ResultSetrs=sql.executeQuery(s);
&&&&&&&&&&&&&&&&&&&& while(rs.next())
&&&&&&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringbname=rs.getString(1);
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringbno=rs.getString(2);
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringprice=rs.getString(3);
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringwriter=rs.getString(4);
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringpublish=rs.getString(5);
&&&&&&&&&&&&&&&&&&&&&&&&&&& Stringindate=rs.getString(6);
&&&&&&&&&&&&&&&&&&&&&&&&&&& //定义图书名 图书号 价格 作者 出版社 出版日期
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][0]=
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][1]=
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][2]=
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][3]=
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][4]=
&&&&&&&&&&&&&&&&&&&&&&&&&&& ar[i][5]=
&&&&&&&&&&&&&&&&&&&& i++;
&&&&&&&&&&&&& &&& }
&&&&&&&&&&&&&&&&&&&& count=&&+i+&&;
&&&&&&&&&&&&&&&&&&&& L.setText(&书库现有该图书&+count+&本&);
&&&&&&&&&&&&&&&&&&&& f.repaint();
&&&&&&&&&&&&& &con.close();
&&&&&&&&&&&&&&&&&&&&&&&&&&& &System.out.println(ar[0][1]);
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());
&&&&&&&&&&&&&
public void deleteRecord(int index)
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&& 32
&&&&&& }catch(ClassNotFoundExceptione)
&&&&&&&&&&&&& System.out.println(&加载驱动程序失败&);
&&&&&& try
&&&&&&&&&&&&& Stringdbuser = &sa&;
&&&&&&&&&&&&& &String dbpwd = &123&;
&&&&&&&&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&&&&&&&&& S
&&&&&&&&&&&&& Stringql=(String)(ar[index][1]);
&&&&&&&&&&&&& Strings=&delete * from Table_book& where 图书名 ='&+ql+&'&;
&&&&&&&&&&&&& sql=con.createStatement();
&&&&&&&&&&&&& intdel=sql.executeUpdate(s);
&&&&&&&&&&&&& if(del==1)
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& JOptionPane.showMessageDialog(null,&删除成功&,&信息&,JOptionPane.YES_NO_CANCEL_OPTION);
&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&& }
&&&&&&&&&&&&& con.close();
&&&&&&&&&&&&& f.repaint();
catch(SQLException g)
&&&&&& System.out.println(g.getErrorCode());
&&&&&& System.out.println(g.getMessage());
@SuppressWarnings(&deprecation&)
public void actionPerformed(ActionEvent e)
&&&&&& Stringql=&&;
&&&&&& Stringcmd=e.getActionCommand();
&&&&&& if(cmd.equals(&查询&))
&&&&&&&&&&&&& ql=tf.getText().trim();
&&&&&&&&&&&&& showRecord(ql);
&&&&&& if(cmd.equals(&确定&))
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 33
&&&&&&&&&&&&& System.exit(0);
&&&&&& if(cmd.equals(&取消&))
&&&&&& f.hide();
public static void main(String []arg){
&&&&&& newQueryBook();&&&&&&&&&&&
预览图书BookBrower类
import java.sql.*;//包含实现java程序与操作系统以及其他java程序之间进行数据交换的类
import java.awt.*;//包含创建用户界面与绘制图形的类
import java.awt.event.*;//事件处理所在的类
import javax.swing.*;//包含轻量级组件
//预览图书
public class BookBrower implements ActionListener {
&&&&&& /**
&&&&&& &*/
&&&&&& //预览图书 实现ActionListener接口
JF//设置顶级窗口对象
C//容器对象
JPanel jpS,jpanelW//设置面板
JButton jbt1,jbt2;//设置按钮
JLabel L,//设置标签
JT//表对象
Object columnName[]={&书名&,&书号&,&单价&,&作者&,&出版社&,&入架时间&};
//设置一维数组
Object ar[][]=new Object[1000][6];//设置二维数组
String count=&1000&;
BookBrower()
&&&&&& f=newJFrame(&预览图书&);//设置窗口标题
&&&&&& cp=f.getContentPane();//返回窗体的 contentPane对象
&&&&&& jpS=newJPanel();
&&&&&& jpanelWest=newJPanel();
&&&&&& JButtonjbt1 = new JButton(&确定&);//按钮添加确定
&&&&&& jbt1.setBackground(Color.lightGray);//设置按钮颜色
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 34
JButton jbt2=new JButton(&返回&);//按钮添加确定
&&&&&& jbt2.setBackground(Color.lightGray);//设置按钮颜色
&&&&&& label=newJLabel(&&html&&font color= blue size='6'&&&
&&&&&&&&&&&&&&&&&&&& +&&&&&&&&&+&预览图书&br&&hr&立志宜思真品格,读书须尽真功夫--阮元&/font&&,SwingConstants.CENTER);
&&&&&& //设置超文本& 颜色字体大小  为空格符& 放在窗口中间
&&&&&& L=newJLabel(&图书库现有图书&+count+&本&);//标签
&&&&&& table =newJTable(ar,columnName);
&&&&&& JScrollPanescrollpane=new JScrollPane(table);//滚动面板
&&&&&& jpS.add(jbt1);
&&&&&& jpS.add(jbt2);//按钮1& 按钮2& 添加到面板中
&&&&&& JPaneljpanel=new JPanel();
&&&&&& jpanel.add(label);//label添加到面板中
&&&&&& JPanelpp4=new JPanel();
&&&&&& JPaneljpE=new JPanel();
&&&&&& cp.add(jpanel,&North&);//面板jpanel添加到容器North
&&&&&& JPanelp=new JPanel();
&&&&&& p.setLayout(newBorderLayout());//p设为为边界布局
&&&&&& p.add(L,&North&);
&&&&&& p.add(scrollpane);
&&&&&& cp.add(pp4,&West&);//pp4添加到West
&&&&&& cp.add(p,&Center&);//p添加到Center
&&&&&& cp.add(jpS,&South&);//jpS添加到South
&&&&&& cp.add(jpE,&East&);//East添加到East
&&&&&& jpanel.setBackground(Color.LIGHT_GRAY);//设置背景颜色
&&&&&& jpS.setBackground(Color.LIGHT_GRAY);
&&&&&& jpanelWest.setBackground(Color.LIGHT_GRAY);
&&&&&& f.setSize();//设置大小
&&&&&& f.setVisible(true);//设为可视化
&&&&&& jbt1.addActionListener(this);
&&&&&& jbt2.addActionListener(this);&
public void showRecord()
&&&&&& while(i&=0)
&&&&&&&&&&&&& ar[i][0]=&&;
&&&&&&&&&&&&& ar[i][1]=&&;
&&&&&&&&&&&&& ar[i][2]=&&;
&&&&&&&&&&&&& ar[i][3]=&&;
&&&&&&&&&&&&& ar[i][4]=&&;
&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 35
ar[i][5]=&&;
&&&&&&&&&&&&& i--;
&&&&&& i=0;
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& //连接数据库
&&&&&& }catch(ClassNotFoundExceptione)
&&&&&&&&&&&&& System.out.println(&加载驱动程序失败&);//显示驱动加载异常
&&&&&& try
&&&&&&&&&&&&& Stringdbuser = &sa&;
&&&&&&&&&&&&& Stringdbpwd = &123&;
&&&&&&&&&&&&& //存储于数据库中的用户名 密码
&&&&&&&&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&&&&&&&&& Strings=&select * from dbo.Table_book &;//获取图书相关信息
&&&&&&&&&&&&& Statementsql=con.createStatement();
&&&&&&&&&&&&& ResultSetrs=sql.executeQuery(s);
&&&&&&&&&&&&& while(rs.next())
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& Stringbname=rs.getString(1);
&&&&&&&&&&&&&&&&&&&& Stringbno=rs.getString(2);
&&&&&&&&&&&&&&&&&&&& Stringprice=rs.getString(3);
&&&&&&&&&&&&&&&&&&&& Stringwriter=rs.getString(4);
&&&&&&&&&&&&&&&&&&&& Stringpublish=rs.getString(5);
&&&&&&&&&&&&&&&&&&&& Stringindate=rs.getString(6);
&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&& ar[i][0]=
&&&&&&&&&&&&&&&&&&&& ar[i][1]=
&&&&&&&&&&&&&&&&&&&& ar[i][2]=
&&&&&&&&&&&&&&&&&&&& ar[i][3]=
&&&&&&&&&&&&&&&&&&&& ar[i][4]=
&&&&&&&&&&&&&&&&&&&& ar[i][5]=
&&&&&&&&&&&&& i++;
&&&&&& &&& }
&&&&&&&&&&&&& count=&&+i+&&;//计算存储于数据库中的图书数量
&&&&&&&&&&&&& L.setText(&书库现有图书&+count+&本&);//显示标签信息
&&&&&&&&&&&&& f.repaint();
&&&&&&&&&&&&& con.close();}
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 36
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());
@SuppressWarnings(&deprecation&)
public void actionPerformed(ActionEvent e) {
&&&&&& Stringcmd=e.getActionCommand();
&&&&&& if(cmd.equals(&确定&));
&&&&&&&&&&&&& f.hide();//匹配确定按钮
&&&&&& if(cmd.equals(&返回&));
&&&&&&&&&&&&& f.hide();//匹配返回按钮
public static void main(String []arg)
&&&&&&&&&&&&& BookBrowera=new BookBrower();
&&&&&&&&&&&&& a.showRecord();//调用显示方法名
图书主界面Book类
import java.sql.*;//包含实现java程序与操作系统以及其他java程序之间进行数据交换的类
import java.awt.*;//包含创建用户界面与绘制图形的类
import java.awt.event.*;//事件处理所在的类
import javax.swing.*;//包含轻量级组件
//预览图书
public class BookBrower implements ActionListener {
&&&&&& /**
&&&&&& &*/
&&&&&& //预览图书 实现ActionListener接口
JF//设置顶级窗口对象
C//容器对象
JPanel jpS,jpanelW//设置面板
JButton jbt1,jbt2;//设置按钮
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 37
JLabel L,//设置标签
JT//表对象
Object columnName[]={&书名&,&书号&,&单价&,&作者&,&出版社&,&入架时间&};
//设置一维数组
Object ar[][]=new Object[1000][6];//设置二维数组
String count=&1000&;
BookBrower()
&&&&&& f=newJFrame(&预览图书&);//设置窗口标题
&&&&&& cp=f.getContentPane();//返回窗体的 contentPane对象
&&&&&& jpS=newJPanel();
&&&&&& jpanelWest=newJPanel();
&&&&&& JButtonjbt1 = new JButton(&确定&);//按钮添加确定
&&&&&& jbt1.setBackground(Color.lightGray);//设置按钮颜色
&&&&&& JButtonjbt2=new JButton(&返回&);//按钮添加确定
&&&&&& jbt2.setBackground(Color.lightGray);//设置按钮颜色
&&&&&& label=newJLabel(&&html&&font color= blue size='6'&&&
&&&&&&&&&&&&&&&&&&&& +&&&&&&&&&+&预览图书&br&&hr&立志宜思真品格,读书须尽真功夫--阮元&/font&&,SwingConstants.CENTER);
&&&&&& //设置超文本& 颜色字体大小  为空格符& 放在窗口中间
&&&&&& L=newJLabel(&图书库现有图书&+count+&本&);//标签
&&&&&& table =newJTable(ar,columnName);
&&&&&& JScrollPanescrollpane=new JScrollPane(table);//滚动面板
&&&&&& jpS.add(jbt1);
&&&&&& jpS.add(jbt2);//按钮1& 按钮2& 添加到面板中
&&&&&& JPaneljpanel=new JPanel();
&&&&&& jpanel.add(label);//label添加到面板中
&&&&&& JPanelpp4=new JPanel();
&&&&&& JPaneljpE=new JPanel();
&&&&&& cp.add(jpanel,&North&);//面板jpanel添加到容器North
&&&&&& JPanelp=new JPanel();
&&&&&& p.setLayout(newBorderLayout());//p设为为边界布局
&&&&&& p.add(L,&North&);
&&&&&& p.add(scrollpane);
&&&&&& cp.add(pp4,&West&);//pp4添加到West
&&&&&& cp.add(p,&Center&);//p添加到Center
&&&&&& cp.add(jpS,&South&);//jpS添加到South
&&&&&& cp.add(jpE,&East&);//East添加到East
&&&&&& jpanel.setBackground(Color.LIGHT_GRAY);//设置背景颜色
&&&&&& jpS.setBackground(Color.LIGHT_GRAY);
&&&&&& jpanelWest.setBackground(Color.LIGHT_GRAY);
&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 38
f.setSize();//设置大小
&&&&&& f.setVisible(true);//设为可视化
&&&&&& jbt1.addActionListener(this);
&&&&&& jbt2.addActionListener(this);&
public void showRecord()
&&&&&& while(i&=0)
&&&&&&&&&&&&& ar[i][0]=&&;
&&&&&&&&&&&&& ar[i][1]=&&;
&&&&&&&&&&&&& ar[i][2]=&&;
&&&&&&&&&&&&& ar[i][3]=&&;
&&&&&&&&&&&&& ar[i][4]=&&;
&&&&&&&&&&&&& ar[i][5]=&&;
&&&&&&&&&&&&& i--;
&&&&&& i=0;
&&&&&& try
&&&&&&&&&&&&& Class.forName(&com.microsoft.sqlserver.jdbc.SQLServerDriver&);
&&&&&&&&&&&&& //连接数据库
&&&&&& }catch(ClassNotFoundExceptione)
&&&&&&&&&&&&& System.out.println(&加载驱动程序失败&);//显示驱动加载异常
&&&&&& try
&&&&&&&&&&&&& Stringdbuser = &sa&;
&&&&&&&&&&&&& Stringdbpwd = &123&;
&&&&&&&&&&&&& //存储于数据库中的用户名 密码
&&&&&&&&&&&&& Stringurl=&jdbc:sqlserver://localhost:1433;DatabaseName=student&;
&&&&&&&&&&&&& Connectioncon=DriverManager.getConnection(url,dbuser,dbpwd);
&&&&&&&&&&&&& Strings=&select * from dbo.Table_book &;//获取图书相关信息
&&&&&&&&&&&&& Statementsql=con.createStatement();
&&&&&&&&&&&&& ResultSetrs=sql.executeQuery(s);
&&&&&&&&&&&&& while(rs.next())
&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&& Stringbname=rs.getString(1);
&&&&&&&&&&&&&&&&&&&& Stringbno=rs.getString(2);
&&&&&&&&&&&&&&&&&&&& Stringprice=rs.getString(3);
&&&&&&&&&&&&&&&&&&&& Stringwriter=rs.getString(4);
&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&& 39
String publish=rs.getString(5);
&&&&&&&&&&&&&&&&&&&& Stringindate=rs.getString(6);
&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&& ar[i][0]=
&&&&&&&&&&&&&&&&&&&& ar[i][1]=
&&&&&&&&&&&&&&&&&&&& ar[i][2]=
&&&&&&&&&&&&&&&&&&&& ar[i][3]=
&&&&&&&&&&&&&&&&&&&& ar[i][4]=
&&&&&&&&&&&&&&&&&&&& ar[i][5]=
&&&&&&&&&&&&& i++;
&&&&&& &&& }
&&&&&&&&&&&&& count=&&+i+&&;//计算存储于数据库中的图书数量
&&&&&&&&&&&&& L.setText(&书库现有图书&+count+&本&);//显示标签信息
&&&&&&&&&&&&& f.repaint();
&&&&&&&&&&&&& con.close();
&&&&&& catch(SQLExceptiong)
&&&&&&&&&&&&& System.out.println(g.getErrorCode());
&&&&&&&&&&&&& System.out.println(g.getMessage());
@SuppressWarnings(&deprecation&)
public void actionPerformed(ActionEvent e) {
&&&&&& Stringcmd=e.getActionCommand();
&&&&&& if(cmd.equals(&确定&));
&&&&&&&&&&&&& f.hide();//匹配确定按钮
&&&&&& if(cmd.equals(&返回&));
&&&&&&&&&&&&& f.hide();//匹配返回按钮
public static void main(String []arg)
&&&&&&&&&&&&& BookBrowera=new BookBrower();
&&&&&&&&&&&&& a.showRecord();//调用显示方法名
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 40
&&&&&&&&&&&&&&&&&&&&&&&&& 参考文献
[1]Java基础入门&&&& 清华大学出版社&& 传智播客高教产品研发部编著
[2]java编程思想&&&& 机械工业出版社&& Bruce Eckel& 著& 陈昊鹏 译
[3]CSDN博客
[4]HTML5入门经典&&&& 机械工业出版社&& 刘欢 王雨竹 著&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 43& & &&
版权所有 爱编程 (C) Copyright 2012. . All Rights Reserved.
闽ICP备号-3
微信扫一扫关注爱编程,每天为您推送一篇经典技术文章。

参考资料

 

随机推荐