>>>实现代码:
=========
数据库
SET FOREIGN_KEY_CHECKS=0;
– Table structure for members
DROP TABLE IF EXISTS members
;
CREATE TABLE members
(
memberID
int(11) NOT NULL AUTO_INCREMENT,
phone
varchar(32) NOT NULL,
name
varchar(32) NOT NULL,
sex
varchar(5) DEFAULT NULL,
openDate
date DEFAULT NULL,
balance
decimal(6,2) DEFAULT NULL,
PRIMARY KEY (memberID
)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
– Records of members
INSERT INTO members
VALUES (‘1’, ‘18214217246’, ‘杨明金’, ‘男’, ‘2020-10-21’, ‘200.00’);
INSERT INTO members
VALUES (‘2’, ‘18214217244’, ‘李韬’, ‘男’, ‘2020-10-21’, ‘500.00’);
com.ynavc.Bean
member.java
package com.ynavc.Bean;
public class Members {
int memberID;
String phone;
String name;
String sex;
String openDate;
String balance;
public Members() {
super();
}
public Members(int memberID, String phone, String name, String sex, String openDate, String balance) {
super();
this.memberID = memberID;
this.phone = phone;
this.name = name;
this.sex = sex;
this.openDate = openDate;
this.balance = balance;
}
public int getMemberID() {
return memberID;
}
public void setMemberID(int memberID) {
this.memberID = memberID;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getOpenDate() {
return openDate;
}
public void setOpenDate(String openDate) {
this.openDate = openDate;
}
public String getBalance() {
return balance;
}
public void setBalance(String balance) {
this.balance = balance;
}
}
com.ynavc.Controller
Select.java
package com.ynavc.Controller;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import com.ynavc.Bean.Members;
import com.ynavc.Dao.DbConnection;
public class Select {
public Object[][] getMebers(String sql) {
ResultSet resultSet = DbConnection.query(sql);
ArrayList list=new ArrayList();
try {
while (resultSet.next()) {
Members m=new Members();
m.setMemberID(resultSet.getInt(1));
m.setPhone(resultSet.getString(2));
m.setName(resultSet.getString(3));
m.setSex(resultSet.getString(4));
m.setOpenDate(resultSet.getString(5));
m.setBalance(resultSet.getString(6));
list.add(m);
}
} catch (SQLException e) {
e.printStackTrace();
}
Object[][] objects=new Object[list.size()][6];
for(int i=0;i<list.size();i++) {
objects[i][0]=list.get(i).getMemberID();
objects[i][1]=list.get(i).getPhone();
objects[i][2]=list.get(i).getName();
objects[i][3]=list.get(i).getSex();
objects[i][4]=list.get(i).getOpenDate();
objects[i][5]=list.get(i).getBalance();
}
return objects;
}
}
Updata.java
package com.ynavc.Controller;
import com.ynavc.Dao.DbConnection;
public class Updata {
//添加数据
public int addData(String sql) {
return DbConnection.updataInfo(sql);
}
}
com.ynavc.Dao
DbConnection.java
package com.ynavc.Dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import com.mysql.jdbc.Statement;
public class DbConnection {
//驱动类的类名
private static final String DRIVERNAME=“com.mysql.jdbc.Driver”;
//连接数据的URL路径
private static final String URL=“jdbc:mysql://127.0.0.1:3306/memberdb?useSSL=true&serverTimezone=GMT”;
//数据库登录账号
private static final String USER=“root”;
//数据库登录密码
private static final String PASSWORD=“root”;
//加载驱动
static{
try {
Class.forName(DRIVERNAME);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
//获取数据库连接
public static Connection getConnection() {
try {
return DriverManager.getConnection(URL,USER,PASSWORD);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
//查询
public static ResultSet query(String sql) {
System.out.println(sql);
//获取连接
Connection connection=getConnection();
PreparedStatement psd;
try {
psd = connection.prepareStatement(sql);
return psd.executeQuery();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,“执行语句出错\n”+e.toString());
e.printStackTrace();
}
return null;
}
//增、删、改、查
public static int updataInfo(String sql) {
System.out.println(sql);
//获取连接
Connection connection=getConnection();
try {
PreparedStatement psd=connection.prepareStatement(sql);
return psd.executeUpdate();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,“执行语句出错\n”+e.toString());
e.printStackTrace();
}
return 0;
}
//关闭连接
public static void colse(ResultSet rs,Statement stmt,Connection conn) throws Exception{
try { if (rs != null){ rs.close(); }
if (stmt != null) { stmt.cancel(); }
if (conn != null) { conn.close(); }
} catch (Exception e) {
e.printStackTrace(); throw new Exception();
}
}
}
com.ynavc.Test
Main.java
package com.ynavc.Test;
import com.ynavc.Vive.MainJframe;
public class Main {
public static void main(String[] args) {
new MainJframe().setVisible(true);
}
}
com.ynavc.Vive
MainJframe.java
package com.ynavc.Vive;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.ScrollPaneConstants;
import javax.swing.table.DefaultTableModel;
import com.ynavc.Controller.Select;
import com.ynavc.Controller.Updata;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class MainJframe extends JFrame {
Select select = new Select();
Updata updata = new Updata();
Object[] header= {“序号”,“手机”,“姓名”,“性别”,“会员日期”,“卡余额”};
String sql = “SELECT memberid,phone,name,sex,openDate,balance FROM members;”;
Object[][] data= select.getMebers(sql);
DefaultTableModel df = new DefaultTableModel(data, header);
int v=ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
int h=ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;
public MainJframe() {
super(“会员卡管理系统”);
this.setBounds(0, 0, 600, 400);
this.setLocationRelativeTo(null);//让窗口在屏幕中间显示
this.setResizable(false);//让窗口大小不可改变
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//用户单击窗口的关闭按钮时程序执行的操作
getContentPane().setLayout(null);
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://i-blog.csdnimg.cn/blog_migrate/a68baa774bcf9f00f317c37ec4666f76.jpeg)
最后
俗话说,好学者临池学书,不过网络时代,对于大多数的我们来说,我倒是觉得学习意识的觉醒很重要,这是开始学习的转折点,比如看到对自己方向发展有用的信息,先收藏一波是一波,比如如果你觉得我这篇文章ok,先点赞收藏一波。这样,等真的沉下心来学习,不至于被找资料分散了心神。慢慢来,先从点赞收藏做起,加油吧!
另外,给大家安排了一波学习面试资料:
以上就是本文的全部内容,希望对大家的面试有所帮助,祝大家早日升职加薪迎娶白富美走上人生巅峰!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://i-blog.csdnimg.cn/blog_migrate/a68baa774bcf9f00f317c37ec4666f76.jpeg)
最后
俗话说,好学者临池学书,不过网络时代,对于大多数的我们来说,我倒是觉得学习意识的觉醒很重要,这是开始学习的转折点,比如看到对自己方向发展有用的信息,先收藏一波是一波,比如如果你觉得我这篇文章ok,先点赞收藏一波。这样,等真的沉下心来学习,不至于被找资料分散了心神。慢慢来,先从点赞收藏做起,加油吧!
另外,给大家安排了一波学习面试资料:
[外链图片转存中…(img-7RwHc5KL-1713518581514)]
[外链图片转存中…(img-Sr1mnQDt-1713518581515)]
以上就是本文的全部内容,希望对大家的面试有所帮助,祝大家早日升职加薪迎娶白富美走上人生巅峰!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!