java图形界面以及链接数据库

合集下载

java中jtable的用法

java中jtable的用法

java中jtable的用法一、JTable简介JTable是Java Swing包中的一个组件,用于在图形用户界面(GUI)中显示和编辑表格数据。

它可以显示任何类型的数据,包括文本、数字、日期和图像等。

二、创建JTable1. 创建一个空的JTable可以通过以下代码创建一个空的JTable:```JTable table = new JTable();```2. 从二维数组创建JTable可以通过以下代码从二维数组创建一个简单的JTable:String[][] data = {{"John", "Doe"}, {"Jane", "Doe"}};String[] columnNames = {"First Name", "Last Name"};JTable table = new JTable(data, columnNames);```3. 从TableModel创建JTable可以通过实现TableModel接口并使用它来创建一个定制的TableModel,然后将其传递给JTable构造函数来创建一个自定义的JTable。

4. 从数据库中获取数据并创建JTable可以通过使用Java数据库连接(JDBC)API与数据库进行交互,并将结果集转换为TableModel,然后将其传递给JTable构造函数来从数据库中获取数据并创建一个自定义的JTable。

三、设置表格属性1. 设置表头可以使用以下代码设置表头:```String[] columnNames = {"First Name", "Last Name"};table.setColumnIdentifiers(columnNames);```2. 设置表格行高和列宽可以使用以下代码设置表格行高和列宽:```table.setRowHeight(30);table.getColumnModel().getColumn(0).setPreferredWidth(100); ```3. 设置表格背景色和前景色可以使用以下代码设置表格背景色和前景色:```table.setBackground(Color.white);table.setForeground(Color.black);```4. 设置表格字体可以使用以下代码设置表格字体:```Font font = new Font("Arial", Font.PLAIN, 14);table.setFont(font);```5. 设置表格边框可以使用以下代码设置表格边框:```Border border = BorderFactory.createLineBorder(Color.black); table.setBorder(border);```四、渲染器和编辑器1. 渲染器渲染器用于将单元格中的值呈现为用户界面上的文本或图像。

Java连接MySql数据库,并且实现插入、删除、更新、选择操作

Java连接MySql数据库,并且实现插入、删除、更新、选择操作

天之火–Qutr的专栏君子终日乾乾,夕惕若,厉,无咎。

HomeJava连接MySql数据库,并且实现插入、删除、更新、选择操作!这是我最近写的一个连接MySql数据库的一个例子,主要实现了插入,删除,更新,选择操作,用的环境是j2sdk1.4.2_08,Eclipse3.1。

以前我的同事用Python 写了同样的类,非常的好用,支持了我们公司的大部分业务,现在我们慢慢改用Java了,所以我用Java重写了一遍。

一方面在今后的业务中能够用到,另一方面熟悉一下Java。

下面我把在Eclipse3.1下怎样配置数据库连接信息简单说一下。

1.启动Eclipse3.1。

2.建立一个Java project就叫DbConnect 吧,再在该Project下建立一个新类也叫DbConnect 吧。

3.右击DbConnect.java文件点import,选择Archive file然后选择你的mysql-connector-java-3.1.8-bin.jar文件,点Finish。

你会看到有好些文件被加载进来,OK这就是连接MySql所需的驱动信息。

如果到了这里你都成功的话那么恭喜你,你已经成功一半了!:)4.接下来把我下面的代码copy到你的Java文件中,修改相关的数据库连接信息运行一下。

OK?我说一下那个mysql-connector-java-3.1.8-bin.jar文件,其实这就是一个MySql的驱动,各数据库厂商提供了不同的适用于JDBC的驱动使得在Java中连接数据库非常简单。

这里我就不多说了,以后我会写篇专门介绍数据库驱动的文章。

关于MySql的驱动还有更新版本的,你需要到MySql的网站上去下载,这个网上到处都是,我就不多说了。

下面看程序,有些地方我写了详细的注释应该能看懂。

这个类是非常有特色的,在每个方法的传人参数和返回值不变的情况下,希望高手能提出改进意见。

多指教,谢谢!/*** 数据库连接、选择、更新、删除演示*///import java.sql.*;import java.sql.Connection;import java.sql.Statement;import java.sql.ResultSet;import java.sql.DriverManager;import java.util.*;public class DbConnect{/////////////////////////////////////////———–>>>数据成员and 构造函数private Connection dbconn;private Statement dbstate;private ResultSet dbresult;DbConnect(){dbconn = null;dbstate = null;dbresult = null;}/////////////////////////////////////////———–>>>类方法public void print(String str)//简化输出{System.out.println(str);}//end print(…)/*** 连接MySql数据库* @param host* @param port* @param dbaName* @param usName* @param psw* @return bool值,连接成功返回真,失败返回假*/public boolean dbConnection(String host, String port, String dbaName, String usName, String psw){String driverName = "com.mysql.jdbc.Driver";//"org.gjt.mm.mysql.Driver"两个驱动都可以用String dbHost = host;//数据库的一些信息String dbPort = port;String dbName = dbaName;String enCoding = "?useUnicode=true&characterEncoding=gb2312"; //解决MySql中文问题,要连续写不能空格String userName = usName;String Psw = psw;String url = "jdbc:mysql://" + dbHost + ":" + dbPort + "/" + dbName + enCoding;try{Class.forName(driverName).newInstance();dbconn = DriverManager.getConnection(url, userName, Psw);//getConnection(url, userName, Psw)从给的driver中选择合适的去连接数据库//return a connection to the URL}catch(Exception e){print("url = " + url); //发生错误时,将连接数据库信息打印出来print("userName = " + userName);print("Psw" + Psw);print("Exception: " + e.getMessage());//得到出错信息}if (dbconn != null)//dbconn != null 表示连接数据库成功,由异常保证!?return true;elsereturn false;}// end boolean dbConnection(…)/*** 对数据库表进行选择操作!* @param tableName 数据库表名* @param fieles 字段名* @param selCondition 选择条件* @return 一个含有map的List(列表)*/public ArrayList dbSelect(String tableName, ArrayList fields, String selCondition){ArrayList mapInList = new ArrayList();String selFields = "";for (int i = 0; i<fields.size(); ++i)selFields += fields.get(i) + ", ";String selFieldsTem = selFields.substring(0, selFields.length() – 2);//根据String的索引提取子串try{dbstate = dbconn.createStatement();String sql = "select " + selFieldsTem + " from " + tableName + selCondition;print("sql = " + sql);try{dbresult = dbstate.executeQuery(sql);}catch(Exception err){print("Sql = " + sql);print("Exception: " + err.getMessage());}while(dbresult.next()){Map selResult = new HashMap();selResult.put("message_type", dbresult.getString("message_type"));selResult.put("message_content",dbresult.getString("message_content"));mapInList.add(selResult);}}catch(Exception e){print("Exception: " + e.getMessage());}return mapInList;}//end String dbSelect(…)/*** 对数据库表中的记录进行删除操作* @param tableName* @param condition* @return bool值,表示删除成功或者失败。

Java桌面应用开发

Java桌面应用开发

优化SQL语句:避免使用复杂的SQL语句, 使用索引和查询优化器
异步处理:将耗时操作异步执行,避免阻 塞主线程
合理使用多线程:根据任务性质合理分配 线程,提高并发处理能力
监控系统资源:CPU、内存、磁盘、网络等 性能优化方法:减少内存占用、优化算法、使用多线程等 工具:JProfiler、VisualVM等 优化效果评估:性能测试、用户反馈等
需求分析:明确应用需求,确定功能模块 设计阶段:设计应用界面和功能模块,制定开 发计划 开发阶段:编写代码,实现功能模块,进行单 元测试
测试阶段:进行集成测试、系统测试和用户验 收测试 部署阶段:将应用部署到目标平台上,进行性 能优化和调试 维护阶段:对应用进行维护和升级,解决用户 反馈的问题
Java桌面应用界面 设计
Java桌面应用开发
作者:
目录
添加章节标题
Java桌面应用开发 基础
Java桌面应用开发简介 Java桌面应用的特点 Java桌面应用开发环境搭建
Java桌面应用开发流程 Java桌面应用开发工具介绍 Java桌面应用开发案例分析
JDK安装:下载并安装JDK,设置JAVA_HOME 环境变量
用户身份验证:确保 用户身份的真实性和 唯一性
安全协议:使用 SSL/TLS等安全协议进 行数据传输和存储
密码管理:要求用户 设置强密码,并定期 更换
异常处理:对用户异 常行为进行监控和报 警
恶意软件类型:病毒、木马、间谍软件等 攻击方式:通过网络、电子邮件、USB设备等传播 防范措施:安装防病毒软件、定期更新系统补丁、提高安全意识等 安全编程:使用安全的编程实践,如输入验证、数据加密等
Java桌面应用功能 实现
文件读取:使 用 FileInputStream 类读取文件内 容

JAVA编程在计算机应用软件中的应用特征与技术

JAVA编程在计算机应用软件中的应用特征与技术

JAVA编程在计算机应用软件中的应用特征与技术JAVA编程在计算机应用软件中的应用特征与技术一、引言随着计算机应用软件的普及,JAVA编程成为了广泛应用的技术之一。

本文将探讨JAVA编程在计算机应用软件中的应用特征与技术,包括其特点、优势以及相关技术。

二、JAVA编程的特点与优势1. 跨平台性JAVA编程的一大特点是其跨平台性。

JAVA语言通过将代码编译为字节码(bytecode),再由JAVA虚拟机(JVM)在目标平台上解释执行。

因此,无论程序在何种操作系统上运行,只要有对应的JVM,都可以执行相同的JAVA代码,使得JAVA程序具有良好的移植性。

2. 面向对象JAVA是一种面向对象的编程语言,具有封装、继承和多态等特性。

面向对象编程使得JAVA程序具有更高的可维护性和扩展性,有利于软件的重复利用与模块化开发。

3. 内存管理JAVA编程自动处理内存管理,减轻了程序员的负担。

JAVA虚拟机负责自动垃圾回收(Garbage Collection,GC),当对象不再被引用时,JVM会自动回收其占用的内存空间,避免了内存泄漏和野指针等问题的发生。

4. 异常处理机制JAVA编程具备强大的异常处理机制,通过try-catch语句,可以捕获并处理程序中的异常情况。

异常处理使得程序可以更好地应对错误和异常,保证程序的稳定性和可靠性。

5. 多线程支持JAVA编程天生支持多线程,通过线程库提供的类和方法,可以方便地实现多线程编程。

多线程可以充分利用多核处理器的计算能力,提高程序的执行效率。

三、JAVA编程在计算机应用软件中的应用技术1. GUI开发JAVA编程提供了一套丰富的图形用户界面(Graphical User Interface,GUI)开发技术。

通过使用JFrame、JPanel、JButton等类,程序员可以轻松构建用户友好的GUI界面。

此外,JAVA还提供了Swing和JavaFX等GUI库,以及AWT (Abstract Window Toolkit)等跨平台的UI组件,使得GUI开发更加便捷和灵活。

Java在图书馆管理系统开发中的应用

Java在图书馆管理系统开发中的应用

Java在图书馆管理系统开发中的应用在当今信息爆炸的社会中,图书馆作为知识传播的重要场所,扮演着不可替代的角色。

为了更好地管理和服务读者,图书馆管理系统应运而生。

Java作为一门广泛应用于软件开发的编程语言,具有跨平台、可靠性强等优点,因此在图书馆管理系统的开发中得到了广泛应用。

一、客户端界面设计客户端是用户使用图书馆管理系统的主要界面,因此其设计直接影响用户体验。

Java通过Swing和JavaFX等图形界面库,能够实现丰富的用户界面设计,包括菜单、按钮、文本框等组件的自定义样式和布局。

通过合理利用这些功能,可以使图书馆管理系统界面简洁美观、易于操作,提高用户的使用体验。

二、数据库管理图书馆管理系统需要处理大量的图书信息、读者信息、借阅记录等数据,因此数据库的管理是必不可少的一环。

Java的关系型数据库MySQL以及非关系型数据库MongoDB等,能够满足图书馆管理系统的数据存储需求。

通过Java提供的数据库连接技术和SQL语句执行,可以实现对数据库的增删改查操作,确保数据的安全性和可靠性。

三、借阅管理借阅管理是图书馆管理系统的核心功能之一。

Java的面向对象特性使得在借阅管理模块的设计中,可以采用面向对象的思维方式,以类和对象的形式对借阅记录进行封装和操作。

通过使用Java封装的日期和时间类,可以方便地管理借书和还书的日期和时间。

此外,Java的异常处理机制可以在借阅管理过程中处理可能的异常情况,提高系统的稳定性。

四、搜索功能图书馆管理系统应提供便捷的搜索功能,方便读者查找图书。

Java 的字符串处理和正则表达式功能可以实现对输入的关键词进行模糊匹配,并在数据库中检索相关图书信息。

通过合理设计搜索算法,可以提高搜索的准确性和效率,满足读者的信息检索需求。

五、权限管理图书馆管理系统中需要区分不同用户的权限,比如管理员和普通读者的权限不同。

Java的面向对象和面向接口的特性可以用来设计用户和权限管理模块,通过继承和实现接口的方式,实现对用户权限的灵活控制。

java连接Mysql方法和示例

java连接Mysql方法和示例

非本人资料,资料来自:/cxwen78/article/details/6863696这网址很多好的资料。

JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术。

一、JDBC基础知识JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

JDBC为数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯Java API 编写数据库应用程序,并且可跨平台运行,并且不受数据库供应商的限制。

1、跨平台运行:这是继承了Java语言的“一次编译,到处运行”的特点;2、不受数据库供应商的限制:巧妙在于JDBC设有两种接口,一个是面向应用程序层,其作用是使得开发人员通过SQL调用数据库和处理结果,而不需要考虑数据库的提供商;另一个是驱动程序层,处理与具体驱动程序的交互,JDBC驱动程序可以利用JDBC API创建Java程序和数据源之间的桥梁。

应用程序只需要编写一次,便可以移到各种驱动程序上运行。

Sun提供了一个驱动管理器,数据库供应商——如MySQL、Oracle,提供的驱动程序满足驱动管理器的要求就可以被识别,就可以正常工作。

所以JDBC不受数据库供应商的限制。

JDBC API可以作为连接Java应用程序与各种关系数据库的纽带,在带来方便的同时也有负面影响,以下是JDBC的优、缺点。

优点如下:∙操作便捷:JDBC使得开发人员不需要再使用复杂的驱动器调用命令和函数;∙可移植性强:JDBC支持不同的关系数据库,所以可以使同一个应用程序支持多个数据库的访问,只要加载相应的驱动程序即可;∙通用性好:JDBC-ODBC桥接驱动器将JDBC函数换成ODBC;∙面向对象:可以将常用的JDBC数据库连接封装成一个类,在使用的时候直接调用即可。

java swing界面实现数据库增删改查

java swing界面实现数据库增删改查

数据库程序设计大作业班级:2012级软件外包效劳一班**:7:。

时间:2013-6-191.功能描述1.1 功能简介用swing做出图形化界面形式,实现数据库的增删改查把员工表跟部门表连接起来,实现数据的增加,删除,修改,查找。

1.2 实现步骤〔1〕安装好虚拟机,并在其下确认oracle已安装成功〔可以在dos下输入相关命令来检查是否安装成功〕。

〔2〕在网络中心修改pc机上的VMware Network Adapter 的IP、子网页码〔默认〕、网关。

〔3〕修改虚拟机的IP、网掩码〔默认〕、网关,确保PC机上的网关和虚拟机的IP一致。

〔在控制面板——>网络和共享中心——>本地连接3——>属性中,修改IP、网掩码〕〔4〕在PC机的dos命令控制台ping虚拟机的IP,确保正常,能ping通〔即将虚拟机内外ping通〕。

〔5〕配置好虚拟机下的oracle的数据库和监听。

〔6〕在eclipse中编写相关代码,并用jtable实现图形化界面,用以实现与数据库的连接和操作数据库等功能。

〔7〕在eclipse中导入数据库的驱动。

〔8〕运行eclipse,查看运行结果。

2. 核心代码1.数据库连接package org.l*.dbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLE*ception;import java.sql.Statement;public class DatabaseConnection {public static void main(String[] args) {Connection conn = null;Statement stmt = null;ResultSet rs = null;try {Class.forName("oracle.jdbc.driver.OracleDriver");String url = "jdbc:oracle:thin:192.168.0.128:1521/WFJ";conn = DriverManager.getConnection(url, "hr", "hr");stmt = conn.createStatement();String sql = "select * from departments";rs = stmt.e*ecuteQuery(sql);while (rs.ne*t()) {System.out.print(rs.getInt("department_id"));System.out.print("\t");System.out.print(rs.getString("department_name"));System.out.print("\t");System.out.print(rs.getInt("manager_id"));System.out.print("\t");System.out.print(rs.getInt("location_id"));System.out.println();}} catch (ClassNotFoundE*ception e) {e.printStackTrace();} catch (SQLE*ception e) {e.printStackTrace();} finally {try {if (rs != null) {rs.close();}if (stmt != null) {stmt.close();}if (conn != null) {conn.close();}} catch (SQLE*ception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}2.生成get set方法package edu;publicclass Country {private String department_id;private String department_name;private String area;private String population;public String get department_id() {return department_id;}publicvoid set department_id(String department_name) { = department_id;}public String get department_name() {return department_name;}publicvoid set department_name(String department_name) { this.department_name = department_name;}public String get manager_id() {return manager_id;}publicvoid set manager_id(String manager_id) {this.manager_id= manager_id;}public String get location_id() {return location_id;}publicvoid set location_id(String location_id n) {this.location_id = location_id;}}}3实现方法package tu*inghua;import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.Serializable;import java.sql.DriverManager;import java.sql.ResultSet;import java.util.ArrayList;import java.util.List;import java*.swing.JButton;import java*.swing.JFrame;import java*.swing.JLabel;import java*.swing.JScrollPane;import java*.swing.JTable;import java*.swing.JTe*tField;import java*.swing.table.DefaultTableModel;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;public class AppStudent e*tends JFrame{private JTe*tField department_idField;private JTe*tField department_nameField;private JTe*tField manager_idField;private JTe*tField location_idField;private JTable table;private DefaultTableModel model;private String[] columns = { "department_id", "department_name", "manager_id", "location_id"};private List data;private Student tmp;public AppStudent() {data = new ArrayList();getContentPane().setLayout(null);JLabel lblemployee = new JLabel("department_id");lblemployee.setBounds(12, 10, 220, 13);getContentPane().add(lblemployee);department_idField = new JTe*tField();department_idField.setBounds(100, 7, 96, 19);getContentPane().add(department_idField);department_idField.setColumns(10);JLabel lblAge = new JLabel("department_name");lblAge.setBounds(252, 10, 220, 13);getContentPane().add(lblAge);department_nameField = new JTe*tField();department_nameField.setBounds(365, 7, 96, 19);getContentPane().add(department_nameField);department_nameField.setColumns(10);JLabel lblStuno = new JLabel("manager_id");lblStuno.setBounds(12, 36, 220, 13);getContentPane().add(lblStuno);manager_idField = new JTe*tField();manager_idField.setColumns(10);manager_idField.setBounds(100, 33, 96, 19);getContentPane().add(manager_idField);JLabel lblClass = new JLabel("location_id");lblClass.setBounds(252, 36, 220, 13);getContentPane().add(lblClass);location_idField = new JTe*tField();location_idField.setColumns(10);location_idField.setBounds(365, 33, 96, 19);getContentPane().add(location_idField);JButton btnAdd = new JButton("增加");btnAdd.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {add();}});btnAdd.setBounds(75, 59, 77, 21);getContentPane().add(btnAdd);JButton btnDel = new JButton("删除");btnDel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {del();}});btnDel.setBounds(180, 59, 77, 21);getContentPane().add(btnDel);JButton btnUpdate = new JButton("更新");btnUpdate.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {update();}});btnUpdate.setBounds(280, 59, 77, 21);getContentPane().add(btnUpdate);JButton btnFind = new JButton("查找");btnFind.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {find();}});btnFind.setBounds(380, 59, 77, 21);getContentPane().add(btnFind);model = new DefaultTableModel(columns, 0);table = new JTable(model);table.addMouseListener(new MouseAdapter(){public void mouseClicked(MouseEvent e){int row = table.getSelectedRow();department_idField.setTe*t((String) table.getValueAt(row, 0));department_nameField.setTe*t((String) table.getValueAt(row, 2));manager_idField.setTe*t((String) table.getValueAt(row, 3));location_idField.setTe*t((String) table.getValueAt(row, 4));tmp = getInput();}});JScrollPane scrollPane = new JScrollPane(table);scrollPane.setBounds(12, 100, 571, 248);getContentPane().add(scrollPane);setDefaultCloseOperation(E*IT_ON_CLOSE);setLocationRelativeTo(null);setLocation(350,200);setSize(601, 380);setResizable(false);setVisible(true);}private Student getInput() {Student stu = new Student();stu.department_id= department_idField.getTe*t();stu.department_name = department_nameField.getTe*t();stu.manager_id = manager_idField.getTe*t();stu.location_id = location_idField.getTe*t();return stu;}private void add() {data.add(getInput());showTable();}private void del() {for (int i = 0; i < data.size(); i++){if (tmp.equals(data.get(i))){data.remove(i);break;}}showTable();}private void update() {Student stu = getInput();for (int i = 0; i < data.size(); i++){if (tmp.equals(data.get(i))) {data.remove(i);data.add(i, stu);break;}}showTable();}private void find() {removeRows();Student stu = getInput();for (int i = 0; i < data.size(); i++) {Student tmp = (Student) data.get(i);if (tmp.equals(stu)) {model.addRow(tmp.toArray());break;}}}private void showTable() {removeRows();for (int i = 0; i < data.size(); i++){Student stu = (Student) data.get(i);model.addRow(stu.toArray());}}private void removeRows() {while (model.getRowCount() > 0) {model.removeRow(0);}}public static void main(String[] args) {new AppStudent();}}class Studentimplements Serializable {public String department_id;public String department_name;public String manager_id;public String location_id;public boolean equals(Object obj) {return equals((Student) obj);}public boolean equals(Student obj) {boolean isdepartment_id = true;if (obj.department_id != null && !"".equals(obj.department_id)) { isdepartment_id = department_id.equals(obj.department_id);}boolean isdepartment_name = true;if (obj.department_name != null && !"".equals(obj.department_name)) { isdepartment_name = department_name.equals(obj.department_name);}boolean ismanager_id = true;if (obj.manager_id != null && !"".equals(obj.manager_id)) {ismanager_id = manager_id.equals(obj.manager_id);}boolean islocation_id = true;if (obj.location_id != null && !"".equals(obj.location_id)) {islocation_id = location_id.equals(obj.location_id);}return isdepartment_id&& isdepartment_name && ismanager_id && islocation_id;}public String[] toArray() {return new String[] { department_id, department_name, manager_id, location_id};}public void setVisible(boolean b) {// TODO Auto-generated method stub}}3. 实训总结通过这次实训我发现了自己许多的缺点和缺乏,我一定会好好找出缺乏,尽最大可能去改正,不断进步开展。

java连接数据库语句

java连接数据库语句

java连接数据库语句在Java中,可以使用JDBC(Java Database Connectivity)来连接和操作数据库。

下面是连接数据库的常见语句示例:1. 加载数据库驱动:```javaClass.forName("com.mysql.jdbc.Driver");```2. 建立数据库连接:```javaString url = "jdbc:mysql://localhost:3306/mydatabase";String username = "root";String password = "password";Connection connection = DriverManager.getConnection(url, username, password);```其中,url是数据库的地址,username和password是登录数据库的用户名和密码。

3. 执行SQL查询或更新:```javaStatement statement = connection.createStatement();String sql = "SELECT * FROM mytable";ResultSet resultSet = statement.executeQuery(sql);``````javaString sql = "INSERT INTO mytable (column1, column2) VALUES ('value1', 'value2')";int rowsAffected = statement.executeUpdate(sql);```4. 处理结果集:```javawhile (resultSet.next()) {String column1 = resultSet.getString("column1");String column2 = resultSet.getString("column2");// 处理每一行数据}```5. 关闭数据库连接:```javaresultSet.close();statement.close();connection.close();```以上是连接和操作数据库的基本语句示例,具体的语句会根据使用的数据库类型、需要执行的SQL语句和具体业务需求进行调整。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
private JButton[] jb = new JButton[4];
private JComboBox box;
private JTextArea jt=new JTextArea();
private JScrollPane js=new JScrollPane(jt,ScrollPaneConstants、VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants、HORIZONTAL_SCROLLBAR_NEVER);
}
jt、setEditable(false);
jt、setLineWrap(true);
jt、setText("留言内容:");
this、add(jp);
this、setTitle("留言版程序");
this、setBounds(100,100,800,500);
this、setVisible(true);
box = new JComboBox(obj);
JLabel j1 = new JLabel("留言版");
JLabel j2 = new JLabel("您");
JLabel j3 = new JLabel("地说:");
jb[0] = new JButton("清屏");
jb[1] = new JButton("至顶");
jt、append(jt1);
try
{
Class、forName("sun、jdbc、odbc、JdbcOdbcDriver");
String dbURL ="jdbc:odbc:driver={Microsoft Access Driver (*、mdb)};DBQ=D:\\DB1、mdb";
System、out、println("数据库连接成功!");
}
j1、setBounds(280,10,50,30);
j2、setBounds(20,375,30,50);
box、setBounds(55,385,80,30);
j3、setBounds(160,375,40,50);
text、setBounds(210,385,300,30);
jb[3]、setBounds(520,365,75,50);
stmt、close();
conn、close();
}catch(Exception e1)
{
System、out、println("添加到数据库出错");
}
jt、setCaretPosition(jt、getText()、length());
text、setText("");
text、requestFocus();
private String[] obj;
private JTextField text = new JTextField();
public NoteTextArea()
{
jp、setLayout(null);
String[] obj = new String[]{"微笑","生气","难过","得意"};
import java、awt、*;
import java、awt、event、*;
import javax、swing、*;
import java、sql、*;
public class NoteTextArea extends JFrame implements ActionListener
{
private JPanel jp=new JPanel();
this、setDefaultCloseOperation(JFrame、EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e)
{
if(e、getSource() == jb[0])
{
jt、setText("");
jt、setText("留言内容:");
jb[2] = new JButton("至尾");
jb[3] = new JButton("提交");
for(int i = 0;i < 3;i++)
{
jb[i]、setBounds(650,i*75+55,100,50);
}
for(int i = 0;i < 3;i++)
{
jp、add(jb[i]);
}
}
public static void main(String[] args)
{
new NoteTextArea();
}
}
Connection conn=DriverManager、getConnection(dbURL);
Statement stmt=conn、createStatement();
stmt、executeUpdate("insert into test1 values('"+jt1+"')");
System、out、println("添加记录:"+ jt1 +"\t成功!");
js、setBounds(10,50,600,300);
jp、add(j1);
jp、add(j2);ห้องสมุดไป่ตู้
jp、add(j3);
jp、add(box);
jp、add(text);
jp、add(jb[3]);
jp、add(js);
for(int i=0;i<=3;i++)
{
jb[i]、addActionListener(this);
}
else if(e、getSource() == jb[1])
{
jt、setCaretPosition(0);
}
else if(e、getSource() == jb[2])
{
jt、selectAll();
}
else if(e、getSource() == jb[3])
{
String jt1 = "\n您" + box、getItemAt(box、getSelectedIndex()) + "地说:" + text、getText();
相关文档
最新文档