📄 db.java
字号:
/*
* 创建日期 2006-12-8
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.sxw.xml;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
/**
* @author sxwailyc
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class DB {
Connection con = null ;
ResultSet result = null ;
int column ;
//构造函数,产生一个数据库连接对像con
public DB(String databasename,String username,String password) {
try{
Class.forName("org.gjt.mm.mysql.Driver");
con =DriverManager.getConnection("jdbc:mysql://localhost:3306/"+databasename+"?useUnicode=true&characterEncoding=GBK",
username,password);
}catch(Exception e){
e.printStackTrace() ;
}
}
//数据库查询方法,接收一个查询的语句参数sql,返回查询的结果集result
public ResultSet openSql(String sql){
try{
Statement stmt = con.createStatement();
result = stmt.executeQuery(sql);
System.out.println("result = stmt.executeQuery(sql);");
}catch(Exception e){
e.printStackTrace();
}
return result ;
}
//数据库插入方法,接收一个更新的语句参数sqlstr,如果成功插入,返回true,否则返回false
public boolean insert(String sqlstr){
try{
Statement stmt =con.createStatement();
stmt.executeUpdate(sqlstr);
}catch(Exception e){
JFrame f =new JFrame();
JOptionPane.showMessageDialog(f,"插入异常!,请确认格试是否正确、"+"\n"+"记录是否已经存在.",
"警告", JOptionPane.INFORMATION_MESSAGE);
e.printStackTrace();
return false;
}
return true;
}
//查询表列数
public int getColumn() {
try{
ResultSetMetaData rsmd =result.getMetaData();
column =rsmd.getColumnCount() ;
}catch(Exception e) {
e.printStackTrace();
}
return column ;
}
//用一个String数据保存格列的名字并返回
public String[] getColumnNmae(){
String columnName[] =new String[column] ;
try{
ResultSetMetaData rsmd =result.getMetaData();
for(int i =1 ;i<=column;i++) {
columnName[i-1] =rsmd.getColumnName(i);
}
}catch(Exception e) {
e.printStackTrace();
}
return columnName ;
}
//以String的形式返回各列的数据类型
public String[] getColumnTypeName() {
String columnName[] =new String[column];
try{
ResultSetMetaData rsmd =result.getMetaData();
for(int i=1;i<=column;i++){
columnName[i-1] =rsmd.getColumnTypeName(i);
}
}catch(Exception e) {
e.printStackTrace() ;
}
return columnName;
}
//获得当前操作的表的名字
public String getTableName(){
String tablename=null;
try{
ResultSetMetaData rsmd =result.getMetaData();
tablename =rsmd.getTableName(1);
}catch(Exception e) {
e.printStackTrace() ;
}
return tablename;
}
//关闭数据库连接
public void close(){
try{
result.close() ;
con.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -