【Java系列】数据库系统的可视化界面开发
Java Swing 图形界面开发
一、图形界面步骤
1、创建窗口
// 1. 创建一个顶层容器(窗口)// 创建窗口JFrame jf = new JFrame("测试窗口"); // 设置窗口大小jf.setSize(250, 250); // 把窗口位置设置到屏幕中心 jf.setLocationRelativeTo(null); // 当点击窗口的关闭按钮时退出程序(没有这一句,程序不会退出) jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
2、设置面板容器
// 2. 创建中间容器(面板容器)// 创建面板容器,使用默认的布局管理器JPanel panel = new JPanel();
3、设置顶上菜单
/** 创建一个菜单栏*/JMenuBar menuBar = new JMenuBar();/** 创建一级菜单*/JMenu fileMenu = new JMenu("文件");JMenu editMenu = new JMenu("编辑");JMenu viewMenu = new JMenu("视图");JMenu aboutMenu = new JMenu("关于");// 一级菜单添加到菜单栏menuBar.add(fileMenu);menuBar.add(editMenu);menuBar.add(viewMenu);menuBar.add(aboutMenu);/** 创建 "文件" 一级菜单的子菜单*/JMenuItem newMenuItem = new JMenuItem("新建");JMenuItem openMenuItem = new JMenuItem("打开");JMenuItem exitMenuItem = new JMenuItem("退出");// 子菜单添加到一级菜单fileMenu.add(newMenuItem);fileMenu.add(openMenuItem);fileMenu.addSeparator(); // 添加一条分割线fileMenu.add(exitMenuItem);
要先创建菜单栏,在创建一级菜单,把一级菜单添加到菜单栏。再创建一级菜单的子菜单,把子菜单添加到一级菜单。
4、添加按钮,标签,文本框等组件
// 创建一个基本组件(按钮),并添加到 面板容器 中JButton btn = new JButton("测试按钮");panel.add(btn);
//创建一个只显示文本的标签JLabel label01 = new JLabel();label01.setText("Only Text");// 设置字体label01.setFont(new Font(“宋体”, Font.PLAIN, 25)); panel.add(label01);// 创建文本框,指定可见列数为8列final JTextField textField = new JTextField(8);textField.setFont(new Font(null, Font.PLAIN, 20));panel.add(textField);
5、把 面板容器 作为窗口的内容面板 设置到 窗口
jf.setContentPane(panel);
6、显示窗口
// 前面创建的信息都在内存中,通过 jf.setVisible(true) 把内存中的窗口显示在屏幕上。jf.setVisible(true);
二、窗口的一些相关操作
1、利用按钮触发一些事件
//利用按钮触发获取文本框信息
btn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {System.out.println("提交: " + textField1.getText());}});
2、多窗口切换
怎么点击菜单栏进行转换?
在子菜单设置触发命令,点击后----销毁当前的页面 :jf.dispose();
打开一个新的页面:new FirstPage().firtPage();
fhMenuItem.addActionListener(new ActionListener() { @Overridepublic void actionPerformed(ActionEvent e) {jf.dispose();new eas_home().Page();}});
3.各个组件如何定位
利用绝对分布:置组件的坐标和宽高来布置组件
//null是绝对布局,通过设置组件在Container中的坐标位置来放置组件
JPanel panel = new JPanel(null);
// 设置组件的界限(一次性设置组件的 坐标 和 宽高)
void setBounds(int x, int y, int width, int height)
三、与数据库的一些操作
1、与SQL server 2008连接的前期准备
详细请参考此博客
2、Java连接数据库进行操作
import java.sql.*;
public class lj {public static void main(String[] args) {try {// 加载数据库驱动Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");// 数据库连接字符串// jdbc:sqlserver 连接协议// localhost 连接地址// 1433 连接端口// sql 连接的数据库String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";// 打开数据库连接// sa 用户名// 1 刚刚设置的密码Connection connection = DriverManager.getConnection(url, "sa", "#hb980498");// 关闭数据库连接connection.close();System.out.println("数据库连接成功");} catch (Exception e) {System.out.println("数据库连接失败");e.printStackTrace();}}
}//删除操作
String sql="insert into Course(cno,cname,credit,tno) values('"+cnoo+"','"+cnamee+"',"+creditt+",'"+tnoo+"')";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//DriverManager负责加载各种不同的驱动程序
String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";
Connection conn = DriverManager.getConnection(url, "sa", "#hb980498");//Connection数据库连接,负责与数据库间通讯
Statement pstmt = conn.createStatement();//Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果
pstmt.executeUpdate(sql);//增改查操作
String sql="select sname from Student where Student.sno='"+snoo+"'";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//DriverManager负责加载各种不同的驱动程序
String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";
Connection conn = DriverManager.getConnection(url, "sa", "#hb980498");//Connection数据库连接,负责与数据库间通讯
Statement pstmt = conn.createStatement();//Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果
ResultSet rs=pstmt.executeQuery(sql);//ResultSet获得SQL查询结果
rs.next();
return rs.getString("sname");
先用Class.forName加载数据库驱动,再用Connection建立与数据库的连接。再定义一个Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果。
【Java系列】数据库系统的可视化界面开发相关推荐
- 【PBL项目实战】户外智慧农场项目实战系列——3.云端可视化页面开发及设备数据源的配置与调试
[PBL项目实战]户外智慧农场项目实战系列--3.云端可视化页面开发及设备数据源的配置与调试 原文链接 https://mp.weixin.qq.com/s/5OT57-_QlN7lwRMWvey4 ...
- Python量化交易平台开发教程系列7-顶层GUI界面开发(1)
原创文章,转载请注明出处:用Python的交易员 前言 终于有时间来写第一篇顶层GUI界面开发相关的教程了,之前实在是事情太多,跟各位读者抱个歉. 整合底层接口的各项功能到中层引擎中后,当我们开发顶层 ...
- Android可视化界面开发工具DroidDraw
Eclipse虽然提供了可视化的Android的预览界面功能,但功能并不好,这里推荐一个可视化的Android设计器--DroidDraw. 它是免费开源的项目,可在http://code.googl ...
- OtoStudio可视化界面开发示例
今天在家清理电脑,在硬盘中找到了2014年刚毕业那会用 OtoStudio(CoDeSys)写的一个三轴运动控制模拟程序. 软件下载:https://download.csdn.net/downloa ...
- python可视化界面开发实例-python界面编程,python可视化窗口编程
看了你的问题,几个回答似乎都不完全对.给你补充一下吧. 你的问题与flask基本上没有关系.flask是一个简单的微型编程框架,很优美,也很简单好用.不过它仅仅实现了基于HTTP协议的服务端交互部分. ...
- 网络安全课程设计Java实现DES加密算法(可视化界面)代码+设计文档
一.DES加密/解密算法 DES是一种对称加密算法,DES算法明文分组长度为64 bit,秘钥长度也为64 bit,但是实际密钥长度只有56位,其中第8.16.24.32.40.48.56.64位是奇 ...
- 在java图形界面中,在Java中,有哪些图形界面开发工具包?()
案例分析一:假定CPU的主频是500MHz.硬盘采用DMA方式进行数据传送,其数据传输率为4MB/s, 每次DMA传输的数据量为8KB, 要求没有任何数据传输被错过. 如果CPU在DMA初始化设置和启 ...
- 从Android界面开发谈起(转)
原文地址:http://blog.csdn.net/nieweilin/article/details/5967815 这篇文章没有打算有一个很好的逻辑去介绍android的某个方面,全盘大致上就是我 ...
- 从Android界面开发谈起
这篇文章没有打算有一个很好的逻辑去介绍android的某个方面,全盘大致上就是我接触.了解android的ui开发后到现在的一些感想以及个人理解吧! 全文可能会涉及到java.android开发.an ...
最新文章
- 【力扣网练习题】最长公共前缀
- SQL查询1064报错 [ERR] 1064 - You have an error in your SQL syntax; check the manual.......
- COM.MYSQL.JDBC.DRIVER 和 COM.MYSQL.CJ.JDBC.DRIVER的区别
- Memory Networks论文串烧
- Visual C++中的异常处理浅析[轉]
- 实现子元素在父元素中水平垂直都居中笔记
- 2021 年 五一数学建模比赛 C 题
- 如何提升设备管理效率和巡检效率?
- SpringBoot_快速实战搭建项目
- Android Metro风格的Launcher开发系列第三篇
- 梦幻星空html,如何使用HTML5的canvas来画一个梦幻星空,快来学习一下吧 | 龙奔网...
- 拉卡拉支付——综合普惠金融科技平台
- Ubuntu安装中文字体
- Zabbix Server trapper命令注入漏洞(CVE-2017-2824)
- 详细的“BP神经网络数据分类—语音特征信号分类”代码
- 数据结构(三)线性表概念及Java代码实现顺序结构链式结构
- Python----空空如也
- metasploit完整的使用流程包括meterpreter后渗透
- PHP 为项目设置谷歌身份验证器
- 如何采集淘宝最新价格
热门文章
- android实时视频方案,Android中实时视频监控方案设计思路
- 优秀网页设计:30佳精美的国外黑色风格网站作品
- python笔记11面向对象
- sihpostreboot关闭没有权限_修复:Win10系统您目前没有权限访问此文件夹
- linux对4T硬盘进行分区
- 云端办公后,协同软件也能轻松做好项目管理
- 【2019斯坦福CS224N笔记】(5)The probability of a sentence Recurrent Neural Networks and Language Models
- 利好消息!康复肺炎患者抗体血浆有助于拯救危重病人!捐献号召一呼百应
- Java网络请求代理API的设计思路
- python 地图偏移_python 地图经纬度转换、纠偏