//先创建登录界面

package com.txl.jm;

import javafx.application.Application;

import javafx.event.ActionEvent;

import javafx.event.EventHandler;

import javafx.geometry.Insets;

import javafx.geometry.Pos;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.scene.control.ButtonBuilder;

import javafx.scene.control.Label;

import javafx.scene.layout.GridPane;

import javafx.stage.Stage;

public class denglu extends Application{

public void  start( final Stage primaryStage) {

GridPane pane= new GridPane();

pane.setAlignment(Pos.CENTER);

pane.setPadding(new Insets(50));

pane.setHgap(5);

pane.setVgap(5);

final javafx.scene.control.TextField yhm=new javafx.scene.control.TextField();

final javafx.scene.control.TextField mm=new javafx.scene.control.TextField();

pane.add(new javafx.scene.control.Label("用户名"),0,0);

pane.add(yhm,1,0);

pane.add(new Label("密码"),0,1);

pane.add(mm,1,1);

Button    button1 = ButtonBuilder.create().text("登陆").onAction(new EventHandler()

{         public void handle(ActionEvent e){

String a=yhm.getText();

String b=mm.getText();

if("8".equals(a)&&"8".equals(b)){

javafx.application.Platform.runLater(new Runnable() {//Platform方法实现界面跳转

public void run() {

new jiemian().start(new Stage());

}

});

} else{

javafx.application.Platform.runLater(new Runnable() {//Platform方法实现界面跳转

public void run() {

new jieshu().start(new Stage());

}

});

}

primaryStage.close();

System.out.println("button  clicked");

}       }).build();

pane.add(button1,2,3);

Scene scene=new Scene(pane);

primaryStage.setTitle("通讯录");

primaryStage.setScene(scene);

primaryStage.show();

}

public static void main(String[] args) {

Application.launch(args);

}

}

//创建用户

package com.txl.jm;

public class person {

String id;

String dh;

String xm;

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getDh() {

return dh;

}

public void setDh(String dh) {

this.dh = dh;

}

public String getXm() {

return xm;

}

public void setXm(String xm) {

this.xm = xm;

}

public  void people(String xm,String dh, String id) {

this.setDh(dh);

this.setId(id);

this.setXm(xm);

}

}

//创建主界面

package com.txl.jm;

import java.sql.SQLException;

import javafx.application.Application;

import javafx.event.ActionEvent;

import javafx.event.EventHandler;

import javafx.geometry.Insets;

import javafx.geometry.Pos;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.scene.control.Label;

import javafx.scene.layout.GridPane;

import javafx.stage.Stage;

public class jiemian extends Application{

javafx.scene.control.TextField cx=new javafx.scene.control.TextField();

javafx.scene.control.TextField mz=new javafx.scene.control.TextField();

javafx.scene.control.TextField xh=new javafx.scene.control.TextField();

javafx.scene.control.TextField dh=new javafx.scene.control.TextField();

public void start(Stage primaryStage) {

//窗体

GridPane pane= new GridPane();

pane.setAlignment(Pos.CENTER);

pane.setPadding(new Insets(11,12,13,14));

pane.setHgap(5);

pane.setVgap(5);

pane.add(new Label("查询学号"),0,0);

pane.add(cx,1,0);

Button button2=new Button("查询");

OKHandlerClass handler1=new OKHandlerClass();

button2.setOnAction(handler1);

pane.add(button2,2,0);

pane.add(new javafx.scene.control.Label("名字:"),0,1);

pane.add(mz,1,1);

pane.add(new Label("学号:"),0,2);

pane.add(xh,1,2);

pane.add(new Label("电话:"),0,3);

pane.add(dh,1,3);

Button button1=new Button("添加");

pane.add(button1,2,3);

OKHandlerClass1 handler2=new OKHandlerClass1();

button1.setOnAction(handler2);

Button button3=new Button("删除");

pane.add(button3,2,2);

OKHandlerClass2 handler3=new OKHandlerClass2();

button3.setOnAction(handler3);

Button button4=new Button("修改");

pane.add(button4,2,1);

OKHandlerClass3 handler4=new OKHandlerClass3();

button4.setOnAction(handler4);

Scene scene1=new Scene(pane);

primaryStage.setTitle("通讯录");

primaryStage.setScene(scene1);

primaryStage.show();

}

class OKHandlerClass implements EventHandler{

public void handle(ActionEvent e) {

search();

System.out.println("查询button  clicked");

}

}

class OKHandlerClass1 implements EventHandler{

public void handle(ActionEvent e) {

tianjia();

System.out.println("添加 button clicked");

}

}

class OKHandlerClass2 implements EventHandler{

public void handle(ActionEvent e) {

delete();

System.out.println("删除 button clicked");

}

}

class OKHandlerClass3 implements EventHandler{

public void handle(ActionEvent e) {

update();

System.out.println("修改button clicked");

}

}

private void search(){

person ren=new person();

ren.id=cx.getText();

mysqljdbc a=new mysqljdbc();

a.initializeDB();

try {

String queryString="select * from stu where id=""+ren.id+""";

a.preStmt = a.connect.prepareStatement(queryString);

a.rSet=a.preStmt.executeQuery();

if(a.rSet.next()){

String name1=a.rSet.getString(1);

String xh1=a.rSet.getString(2);

String txl1=a.rSet.getString(3);

xh.setText(name1);

dh.setText(txl1);

mz.setText(xh1);

}

exit1();

} catch (Exception e) {

}

}

private void tianjia(){

person ren1=new person();

ren1.xm=mz.getText();

ren1.id=xh.getText();

ren1.dh=dh.getText();

try {

mysqljdbc b1=new mysqljdbc();

b1.initializeDB();

String queryString="insert into stu values(?,?,?)";

b1.preStmt = b1.connect.prepareStatement(queryString);

b1.preStmt.setString(2, ren1.xm);

b1.preStmt.setString(1, ren1.id);

b1.preStmt.setString(3, ren1.dh);

b1.preStmt.executeUpdate();

exit1();

} catch (Exception e) {

}

}

public int delete()   {

person ren2=new person();

ren2.id=xh.getText();

String sql = "delete from stu where id=""+ren2.id+""";

int i=0;

try  {

mysqljdbc cMysqljdbc=new mysqljdbc();

cMysqljdbc.initializeDB();

cMysqljdbc.preStmt =  cMysqljdbc.connect.prepareStatement(sql);

i =  cMysqljdbc.preStmt.executeUpdate();

exit1();

}

catch (SQLException e)

{

e.printStackTrace();

}

return i;//如果返回的是1,则执行成功;

}

public int update()

{  person aPerson=new person();

aPerson.xm=mz.getText();

aPerson.id=xh.getText();

aPerson.dh=dh.getText();

int i=0;

String sql="update stu set name=?,txl=?,id=?where id=""+aPerson.id+""";//注意要有where条件

try{

mysqljdbc cMysqljdbc=new mysqljdbc();

cMysqljdbc.initializeDB();

cMysqljdbc.preStmt =cMysqljdbc.connect.prepareStatement(sql);

cMysqljdbc.preStmt.setString(1, aPerson.xm);

cMysqljdbc. preStmt.setString(2, aPerson.dh);

cMysqljdbc.preStmt.setString(3, aPerson.id);

i=cMysqljdbc.preStmt.executeUpdate();

exit1();

}

catch (SQLException e)

{

e.printStackTrace();

}

return i;//返回影响的行数,1为执行成功

}

public void exit1()   {

mysqljdbc a=new mysqljdbc();

if(a.rSet != null){   // 关闭记录集

try{

a.rSet.close() ;

}catch(SQLException e){

e.printStackTrace() ;

}

}

if(a.preStmt != null){   // 关闭声明

try{

a.preStmt.close() ;

}catch(SQLException e){

e.printStackTrace() ;

}

}

if(a.connect != null){  // 关闭连接对象

try{

a.connect.close() ;

}catch(SQLException e){

e.printStackTrace() ;

}

}

}

public static void main(String[] args) {

Application.launch(args);

}

}

//创建结束界面

package com.txl.jm;

import javafx.application.Application;

import javafx.geometry.Insets;

import javafx.geometry.Pos;

import javafx.scene.Scene;

import javafx.scene.control.Label;

import javafx.scene.layout.GridPane;

import javafx.stage.Stage;

public class jieshu extends Application{

public void start(Stage primaryStage) {

//窗体

GridPane pane= new GridPane();

pane.setAlignment(Pos.CENTER);

pane.setPadding(new Insets(11,12,13,14));

pane.setHgap(5);

pane.setVgap(5);

Label button1=new Label("密码错误");

pane.add(button1,1,1);

Scene scene=new Scene(pane);

primaryStage.setTitle("通讯录");

primaryStage.setScene(scene);

primaryStage.show();

}

public static void main(String[] args) {

Application.launch(args);

}

}

//创建数据库连接

package com.txl.jm;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

class mysqljdbc {

Connection connect;

ResultSet rSet;

java.sql.PreparedStatement preStmt;

public void initializeDB(){

try {

Class.forName("com.mysql.jdbc.Driver");     //加载MYSQL JDBC驱动程序

//Class.forName("org.gjt.mm.mysql.Driver");

System.out.println("Success loading Mysql Driver!");

connect= DriverManager.getConnection(

"","","");

//连接URL为   jdbc:mysql//服务器地址/数据库名  ,后面的2个参数分别是登陆用户名和密码

System.out.println("Success connect Mysql server!");

}

catch (Exception e) {

e.printStackTrace();

}

}

}

//新手写的,请指教,谢谢。

本文出自 “11706014” 博客,转载请与作者联系!

通讯录javafx和mysql_用javafx实现通讯录相关推荐

  1. 解决JavaFX报错缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序

    解决JavaFX报错缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序 方法 1:使用 Java 8 方法 2:使用 Java 模块系统 方法 3:使用引导类   很多 JavaFX 初 ...

  2. javafx 和swing_集成JavaFX和Swing(修订版)

    javafx 和swing 我刚刚完成了对使用Swing的应用程序组件的重写,现在正在使用JavaFX,最后得到了与更大的swing应用程序集成的JavaFX组件. 这是一个很大的应用程序,重写花了我 ...

  3. javafx 和swing_集成JavaFX和Swing

    javafx 和swing 我刚刚完成了对使用Swing的应用程序组件的重写,现在正在使用JavaFX,最后得到了与更大的swing应用程序集成的JavaFX组件. 这是一个很大的应用程序,重写花了我 ...

  4. javafx 使用_使用JavaFX AnimationTimer

    javafx 使用 回想一下,给AnimationTimer起个名字可能不是一个好主意,因为它不仅可以用于动画,还可以用于测量fps速率,碰撞检测,模拟步骤,游戏主循环等.实际上,我大部分时间都在看A ...

  5. idea javafx添加maven_maven+IDEA+JavaFX+JFoenix

    1.maven环境准备 解压apache-maven-3.5.4.zip到D盘根目录,并建一个本地仓库目录my_maven_jar,如图 准备maven和本地仓库目录 2.在IDEA中配置maven环 ...

  6. JavaFx教程-01初识javaFX

    什么是JavaFX JavaFX是一个强大的图形和多媒体处理工具包集合,它允许开发者用来设计.创建.测试.调试和部署富客户端程序,和Java一样跨平台. JavaFX特点 官方对于JavaFX的解释如 ...

  7. javafx 教程_集成JavaFX和Swing

    javafx 教程 我刚刚完成了对使用Swing的应用程序组件的重写,现在使用的是JavaFX,最后得到了与更大的swing应用程序集成的JavaFX组件. 这是一个很大的应用程序,重写花了我一段时间 ...

  8. javafx 教程_集成JavaFX和Swing(修订版)

    javafx 教程 我刚刚完成了对使用Swing的应用程序组件的重写,现在使用的是JavaFX,最后得到了与更大的swing应用程序集成的JavaFX组件. 这是一个很大的应用程序,重写花了我一段时间 ...

  9. javafx 教程_Swing和JavaFX:使用JFXPanel

    javafx 教程 我很快将不得不在基于Swing的胖客户端中处理JavaFX –哦,很抱歉,我的意思是"多层富客户端"! 因此,这使我来看看JFXPanel . JFXPanel ...

最新文章

  1. asp.net性能的技巧
  2. 三十三、Java集合中的LinkedList
  3. JavaScript实现求最大公约数 (GCD)的算法(附完整源码)
  4. 华为计算机如何计算sina,一道华为的“简单四则运算”题
  5. 一个基于SAP Hybris Commerce和微信的社交电商原型介绍
  6. CF 1642 F. Two Arrays 随机 + sosdp
  7. 【kafka】 kafka 0.10报错IOException: Connection to 1 was disconnected before the response was read
  8. BOMTool更新到1.3.0.10
  9. js-ES6学习笔记-Class(6)
  10. P2P技术原理及应用
  11. 机械设计(机电)_简要问答_复习笔记
  12. 【Hadoop】Hadoop大数据架构及关键组件
  13. Hive教程(08)- JDBC操作Hive
  14. 网卡 的linux驱动精灵,下载:Intel PRO100/1000网卡驱动13.0版
  15. 120xa变频器调试参数_图文并茂 | 西门子G120变频器的面板调试操作
  16. 程序设计比赛WBS图
  17. 机器学习 简答题 速记
  18. 2021-04-29 Do not nest ternary expressions
  19. 解决 openwrt/Lede pppoe拨号频繁掉线的问题
  20. 周转时间和带权周转时间的计算

热门文章

  1. SAP/SD - 做SD你要知道的透明表
  2. 又一金融科技巨头入局,智慧出行的竞争靠什么胜出?
  3. matlab中鼠标光标后面的阴影怎么去除,UG在绘图是拖动鼠标出现残影怎么回事?看看这个方法就知道了...
  4. python的所有数据类型都可以相互转化吗_Python python 数据类型的相互转换
  5. [JDBC] 获取数据库连接方式
  6. Python基础教程:带参装饰器、生成器、迭代器、for循环迭代器、枚举
  7. Python3 操作符重载方法
  8. 3分钟教你用python制作一个简单词云
  9. Python规范:提高可读性
  10. python是烂语言吗