Java怎么显示时间,Java怎么显示图片

  Java怎么显示时间,Java怎么显示图片

  用爪哇岛的摇摆组件画出表格,实现"增加"、"删除"、"保存"、"退出"的功能,并且与关系型数据库数据库相连接。

  可以实现提取数据库中表的数据显示到含有表格的窗体上,也可以将在表格中修改的内容写入数据库表中。

  写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用

  我实现以上功能时用了两个类,其中一个类是我的框架,另外一个类是PutinStorage。

  具体代码如下(以下代码均为完整代码,经测试成功的):

  PutinStorage类:

  导入Java。SQL。连接;

  导入Java。SQL。司机经理;

  导入Java。SQL。准备好的声明;

  导入Java。SQL。结果集;

  导入Java。SQL。结果集元数据;

  导入Java。SQL。SQL异常;

  导入Java。util。向量;

  导入javax。挥棒。joptionpane

  公共类PutinStorage {

  //得到数据库表数据

  公共静态向量getRows(){

  字符串SQL _ URL= JDBC:MySQL://localhost:3306/哈哈;//数据库路径(一般都是这样写),测试是数据库名称

  string name=" root//用户名

  字符串密码= 123456 ;//密码

  连接接头;

  prepared语句prepared语句=null

  向量行=空;

  向量列标题=空

  尝试{

  班级。forname( com。MySQL。JDBC。司机’);//连接驱动

  驱动程序管理器。getconnection(SQL _ URL,名称,密码);//连接数据库

  //如果(!conn.isClosed())

  //System.out.println(成功连接数据库);

  prepared语句=conn . prepare语句( select * from aa );

  结果集结果1=准备好的语句。执行查询();

  if(result1.wasNull())

  joptionpane。showmessagedialog(null,结果集中无记录);

  行数=新向量();

  结果集元数据rsmd=结果1。获取元数据();

  while(result1.next()){

  行。add元素(get nextrow(result 1,rsmd));

  }

  } catch(ClassNotFoundException e){

  //TODO自动生成的捕捉块

  System.out.println(未成功加载驱动。);

  e。printstacktrace();

  } catch (SQLException e) {

  //TODO自动生成的捕捉块

  System.out.println(未成功打开数据库。);

  e。printstacktrace();

  }

  返回行;

  }

  //得到数据库表头

  公共静态向量getHead(){

  字符串SQL _ URL= JDBC:MySQL://localhost:3306/哈哈;//数据库路径(一般都是这样写),测试是数据库名称

  string name=" root//用户名

  字符串密码= 123456 ;//密码

  连接接头;

  prepared语句prepared语句=null

  向量列标题=空

  尝试{

  班级。forname( com。MySQL。JDBC。司机’);//连接驱动

  驱动程序管理器。getconnection(SQL _ URL,名称,密码);//连接数据库

  //如果(!conn.isClosed())

  //System.out.println(成功连接数据库);

  prepared语句=conn . prepare语句( select * from aa );

  结果集结果1=准备好的语句。执行查询();

  布尔更多记录=结果1。next();

  如果(!更多记录)

  joptionpane。showmessagedialog(null,结果集中无记录);

  列标题=new Vector();

  结果集元数据rsmd=结果1。获取元数据();

  for(int I=1;I=rsmd。get column count();我)

  列标题。添加元素(rsmd。获取列名(I));

  } catch(ClassNotFoundException e){

  //TODO自动生成的捕捉块

  System.out.println(未成功加载驱动。);

  e。printstacktrace();

  } catch (SQLException e) {

  //TODO自动生成的捕捉块

  System.out.println(未成功打开数据库。);

  e。printstacktrace();

  }

  返回列标题;

  }

  //得到数据库中下一行数据

  私有静态向量getNextRow(结果集rs,结果集元数据rsmd)引发SQLException{

  Vector currentRow=new Vector();

  for(int I=1;I=rsmd。get column count();i ){

  当前行。添加元素(RS。getstring(I));

  }

  返回当前行;

  }

  /*//主函数

  公共静态void main(String[] args){

  getRows();

  }*/

  }MyFrame类:

  导入Java。awt。borderlayout

  导入Java。awt。流程布局;

  导入Java。awt。事件。动作事件;

  导入Java。awt。事件。动作监听器;

  导入Java。SQL。连接;

  导入Java。SQL。司机经理;

  导入Java。SQL。准备好的声明;

  导入Java。SQL。SQL异常;

  导入Java。util。向量;

  导入javax。挥棒。jbutton

  导入javax。挥棒。jframe

  导入javax。挥棒。jpanel

  导入javax。挥棒。jscrollpane

  导入javax。挥棒。jtable

  导入javax。挥棒。桌子。defaulttablemodel

  导入per。土叔。存储。普京存储;

  公共类自己扩展JFrame{

  DefaultTableModel表模型;//默认显示的表格

  命令按钮添加、删除、退出、保存;//各处理按钮

  组建表;//表格

  JPanel panelUP//增加信息的面板

  //构造函数

  公共MyFrame(){

  this.setBounds(300,200,600,450);//设置窗体大小

  this.setTitle(测试);//设置窗体名称

  这个。set layout(new BorderLayout());//设置窗体的布局方式

  //新建各按钮组件

  add=new JButton(增加);

  del=新JButton(删除);

  save=new JButton(保存);

  exit=new JButton(退出);

  panel up=new JPanel();//新建按钮组件面板

  panelUP.setLayout(新流程布局(流程布局。左));//设置面板的布局方式

  //将各按钮组件依次添加到面板中

  panelUP.add(添加);

  面板向上。add(del);

  panelUP.add(保存);

  panelUP.add(退出);

  //取得哈哈的笑数据库的嗜酒者互诫协会表的各行数据

  向量行数据=普京存储。getrows();

  //取得哈哈的笑数据库的嗜酒者互诫协会表的表头数据

  向量列名=普京存储。gethead();

  //新建表格

  table model=new DefaultTableModel(行数据,列名);

  table=new JTable(表格模型);

  JScrollPane s=new JScrollPane(table);

  //将面板和表格分别添加到窗体中

  this.add(panelUP,BorderLayout .北);

  this.add

  //事件处理

  我的事件();

  这个。设置可见(真);//显示窗体

  这个。setdefaultcloseoperation(JFrame .EXIT _ ON _ CLOSE);//设置窗体可关闭

  }

  //事件处理

  public void MyEvent(){

  //增加

  add.addActionListener(新的ActionListener(){

  @覆盖

  已执行公共void操作(操作事件参数0){

  //增加一行空白区域

  表模型。addrow(new Vector());

  }

  });

  //删除

  del.addActionListener(新的ActionListener(){

  @覆盖

  已执行公共void操作(操作事件参数0){

  //TODO自动生成的方法存根

  //删除指定行

  int rowcount=table。getselectedrow();

  if(rowcount=0){

  表模型。移除行(rowcount);

  }

  }

  });

  /**

  * 保存

  * 我的解决办法是直接将嗜酒者互诫协会表中的全部数据删除,

  * 将表格中的所有内容获取到,

  * 然后将表格数据重新写入嗜酒者互诫协会表

  */

  保存。addactionlistener(新操作侦听器(){

  @覆盖

  已执行公共无效操作(操作事件e){

  int列=表。get column count();//表格列数

  int row=table。getrowcount();//表格行数

  //值数组存放表格中的所有数据

  字符串[][]值=新字符串[行][列];

  for(int I=0;我划船;i ){

  for(int j=0;j柱;j ){

  value[i][j]=table.getValueAt(i,j).toString();

  }

  }

  //以下均为对数据库的操作

  字符串SQL _ URL= JDBC:MySQL://localhost:3306/哈哈;//数据库路径(一般都是这样写),哈哈是数据库名称

  string name=" root//用户名

  字符串密码= 123456 ;//密码

  连接接头;

  prepared语句prepared语句=null

  尝试{

  班级。forname( com。MySQL。JDBC。司机’);//连接驱动

  驱动程序管理器。getconnection(SQL _ URL,名称,密码);//连接数据库

  如果(!conn.isClosed())

  System.out.println(成功连接数据库);

  //删除嗜酒者互诫协会表中所有数据

  prepared statement=conn . prepare statement( delete from aa where true );

  准备好的声明。执行update();

  //将价值数组中的数据依次存放到嗜酒者互诫协会表中

  for(int I=0;我划船;i ){

  prepared statement=conn . prepare statement( insert into aa values( integer。parse int(value[I][0]), value[I][1] ));

  准备好的声明。执行update();

  }

  } catch(ClassNotFoundException E1){

  //TODO自动生成的捕捉块

  System.out.println(未成功加载驱动。);

  E1。printstacktrace();

  } catch (SQLException e1) {

  //TODO自动生成的捕捉块

  System.out.println(未成功打开数据库。);

  E1。printstacktrace();

  }

  //保存后退出

  系统。退出(0);

  }

  });

  //退出

  退出。addactionlistener(新操作侦听器(){

  @覆盖

  已执行公共无效操作(操作事件e){

  //TODO自动生成的方法存根

  系统。退出(0);

  }

  });

  }

  //主函数

  公共静态void main(String[] args){

  new my frame();

  }

  }执行以上代码的时候,最初显示的窗体如下所示:

  点击增加按钮并写入需要增加的内容(我增加了三次)如下图:

  点击删除按钮,删除指定行(我删除了第2行和第4行),如下图:

  点击保存按钮,你会发现窗口也关闭了。这是您可以重新执行代码的地方,您会发现出现了如上图所示的表单页面。

  单击退出按钮关闭窗口。java就是这样展示mysql的详细内容的。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: