【java】MyEclipse连接SQL server 2012简易信息查询窗体
2016-05-29 23:43
423 查看
在学习java的过程中连接数据库是必不可少的一课。对于没有用过数据库的人而言,数据库的连接就显得尤为困难,我也是一样,第一次使用MyEclipse连接数据路的时候在网上找各式各样的教程,发现基本都是骗人的,根本就不需要配置什么环境变量,只需要下载相应的jar包就可以了。
图片窗体对应的代码如下:
import java.awt.BorderLayout; public class InfoShow extends JFrame { private JPanel contentPane; private JTextField textName; private JTextField textNo; private JTextField textNumber; private JTextField textSearch; private JTextField textNumberSearch; private JTextField textNewName; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Icon p[]=new Icon[5]; //图片数组 p[0]=new ImageIcon("1.jpg"); p[1]=new ImageIcon("2.jpg"); p[2]=new ImageIcon("3.jpg"); p[3]=new ImageIcon("4.jpg"); p[4]=new ImageIcon("5.jpg"); InfoShow frame = new InfoShow(p); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public InfoShow(final Icon p[]) { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 472, 382); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel lbName = new JLabel("书名:"); lbName.setFont(new Font("宋体", Font.PLAIN, 16)); lbName.setBounds(41, 107, 54, 15); contentPane.add(lbName); JLabel lbNo = new JLabel("编号:"); lbNo.setFont(new Font("宋体", Font.PLAIN, 16)); lbNo.setBounds(41, 71, 54, 15); contentPane.add(lbNo); JLabel lbNumber = new JLabel("数量:"); lbNumber.setFont(new Font("宋体", Font.PLAIN, 16)); lbNumber.setBounds(41, 146, 54, 15); contentPane.add(lbNumber); textName = new JTextField(); textName.setEditable(false); textName.setBounds(119, 105, 104, 21); contentPane.add(textName); textName.setColumns(10); textNo = new JTextField(); textNo.setEditable(false); textNo.setBounds(119, 69, 104, 21); contentPane.add(textNo); textNo.setColumns(10); textNumber = new JTextField(); textNumber.setEditable(false); textNumber.setBounds(119, 144, 104, 21); contentPane.add(textNumber); textNumber.setColumns(10); final JLabel lbPicture = new JLabel(""); lbPicture.setBounds(303, 34, 121, 151); contentPane.add(lbPicture); JLabel lbSearch = new JLabel("请输入编号:"); lbSearch.setFont(new Font("宋体", Font.PLAIN, 14)); lbSearch.setBounds(25, 191, 84, 15); contentPane.add(lbSearch); textSearch = new JTextField(); textSearch.setBounds(119, 188, 104, 21); contentPane.add(textSearch); textSearch.setColumns(10); JButton btnOK = new JButton("确定"); btnOK.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); Statement St=con.createStatement(); ResultSet r=St.executeQuery("select * from books where id = '"+textSearch.getText()+"'"); while(r.next()) { textName.setText(r.getString("name")); textNo.setText(r.getString("id")); textNumber.setText(r.getString("number")); int num = Integer.parseInt(r.getString("id"))-100; lbPicture.setIcon(p[num-1]); } textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); }catch (Exception e1) { e1.printStackTrace(); } } }); //btnOK.addActionListener(new ActionListener() {} btnOK.setFont(new Font("宋体", Font.PLAIN, 14)); btnOK.setBounds(339, 293, 93, 23); contentPane.add(btnOK); JLabel lbNumberSearch = new JLabel("请输入数量:"); lbNumberSearch.setFont(new Font("宋体", Font.PLAIN, 14)); lbNumberSearch.setBounds(25, 222, 84, 15); contentPane.add(lbNumberSearch); textNumberSearch = new JTextField(); textNumberSearch.setBounds(119, 219, 104, 21); contentPane.add(textNumberSearch); textNumberSearch.setColumns(10); JButton btnAdd = new JButton("增加"); btnAdd.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("insert into books values('"+textSearch.getText()+"','"+textNewName.getText()+"','"+textNumberSearch.getText()+"')"); r.executeUpdate(); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); JOptionPane.showMessageDialog(null, "插入成功!"); }catch (Exception e1) { e1.printStackTrace(); } } }); btnAdd.setFont(new Font("宋体", Font.PLAIN, 14)); btnAdd.setBounds(28, 293, 93, 23); contentPane.add(btnAdd); JButton btnDelete = new JButton("删除"); btnDelete.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ if(JOptionPane.OK_OPTION == JOptionPane.showConfirmDialog(InfoShow.this,"确定要删除吗?","删除",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE)) { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("delete from books where id = '"+textSearch.getText()+"'"); r.executeUpdate(); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); JOptionPane.showMessageDialog(null, "删除成功!"); } }catch (Exception e1) { e1.printStackTrace(); } } }); btnDelete.setFont(new Font("宋体", Font.PLAIN, 14)); btnDelete.setBounds(130, 293, 93, 23); contentPane.add(btnDelete); JButton btnUpdate = new JButton("修改"); btnUpdate.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("update books set name = '"+textNewName.getText()+"',number = '"+textNumberSearch.getText()+"' where id = '"+textSearch.getText()+"'"); r.executeUpdate(); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); JOptionPane.showMessageDialog(null, "修改成功!"); }catch (Exception e1) { e1.printStackTrace(); } } }); btnUpdate.setFont(new Font("宋体", Font.PLAIN, 14)); btnUpdate.setBounds(234, 293, 93, 23); contentPane.add(btnUpdate); JLabel lblNewName = new JLabel("请输入书名:"); lblNewName.setFont(new Font("宋体", Font.PLAIN, 14)); lblNewName.setBounds(25, 253, 84, 15); contentPane.add(lblNewName); textNewName = new JTextField(); textNewName.setBounds(119, 250, 104, 21); contentPane.add(textNewName); textNewName.setColumns(10); JMenuBar menuBar = new JMenuBar(); menuBar.setBounds(10, 0, 105, 21); contentPane.add(menuBar); JMenu menu = new JMenu("操作"); menuBar.add(menu); JMenuItem menuItem = new JMenuItem("增加"); menuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("insert into books values('"+textSearch.getText()+"','"+textNewName.getText()+"','"+textNumberSearch.getText()+"')"); r.executeUpdate(); JOptionPane.showMessageDialog(null, "插入成功!"); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); }catch (Exception e1) { e1.printStackTrace(); } } }); menu.add(menuItem); JMenuItem menuItem_1 = new JMenuItem("删除"); menuItem_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ if(JOptionPane.OK_OPTION == JOptionPane.showConfirmDialog(InfoShow.this,"确定要删除吗?","删除",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE)) { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("delete from books where id = '"+textSearch.getText()+"'"); r.executeUpdate(); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); JOptionPane.showMessageDialog(null, "删除成功!"); } }catch (Exception e1) { e1.printStackTrace(); } } }); menu.add(menuItem_1); JMenuItem menuItem_2 = new JMenuItem("修改"); menuItem_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); PreparedStatement r=con.prepareStatement("update books set name = '"+textNewName.getText()+"',number = '"+textNumberSearch.getText()+"' where id = '"+textSearch.getText()+"'"); r.executeUpdate(); textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); JOptionPane.showMessageDialog(null, "修改成功!"); }catch (Exception e1) { e1.printStackTrace(); } } }); menu.add(menuItem_2); JMenuItem menuItem_3 = new JMenuItem("查询"); menuItem_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=book","sa", "88888888"); Statement St=con.createStatement(); ResultSet r=St.executeQuery("select * from books where id = '"+textSearch.getText()+"'"); while(r.next()) { textName.setText(r.getString("name")); textNo.setText(r.getString("id")); textNumber.setText(r.getString("number")); int num = Integer.parseInt(r.getString("id"))-100; lbPicture.setIcon(p[num-1]); } textSearch.setText(null); textNewName.setText(null); textNumberSearch.setText(null); }catch (Exception e1) { e1.printStackTrace(); } } }); menu.add(menuItem_3); JMenuBar menuBar_1 = new JMenuBar(); menu.add(menuBar_1); } }
lable中显示的图片我使用的是图片数组,与上一篇一样,放在本项目文件夹中。
其实连接数据库很简单,进行增删改查的代码都很类似,我在C#编程时也是如此。
相关文章推荐
- #java读书笔记#IO流2
- Java应用--显示数据库中的信息
- Java基础回顾 : 利用字节流实现文件的拷贝
- Java 中断
- How to solve java.net.SocketTimeoutException:60000millis problem in HDFS
- 【java】MyEclipse的简易信息查询窗体
- Spring+MyBatis多数据源配置实现(mysql和sqlserver数据库)
- Java LockSupport
- 配置 OpenStack Eclipse开发环境 - 远程调试
- Spring MVC Beginner's Guide--应该看第二次
- JAVA_OA管理系统(二)番外篇:IoC原理
- java 集合练习题2
- Spring in action 03 -- 装配 Bean(xml配置)
- #java读书笔记#IO流1
- 2015-2016-2《Java程序设计》团队博客3
- Spring管理
- java自定义异常类型
- jdk安装及环境变量配置
- Maven+SpringMVC+Mybatis整合入门Demo
- Java基础回顾 : 字符流操作