📄 javadbtoaccess.java
字号:
package org.wuhang.transfer;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import javax.swing.JOptionPane;
import org.signsmile.view.MainFrame;
import org.signsmile.view.WelcomePanel;
public class JavadbToAccess extends Thread {
Connection i_con = null;
Connection e_con = null;
String import_sql = null;
String export_sql = null;
ResultSet rs = null;
boolean dao = false;
String type = null;
JProgressBarDemo progress = null;
HashMap<Integer,Integer> enrolltime_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> majorrecord_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> majortype_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> majorlength_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> station_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> major_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> examtype_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> course_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> studentstatue_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> student_id_num =
new HashMap<Integer,Integer>();
HashMap<Integer,Integer> studentcourse_id_num =
new HashMap<Integer,Integer>();
public Connection getI_con() {
return i_con;
}
public void setI_con(Connection i_con) {
this.i_con = i_con;
}
public Connection getE_con() {
return e_con;
}
public void setE_con(Connection e_con) {
this.e_con = e_con;
}
private void daoAdmin(Connection import_con,Connection export_con){
TableAdminConcert admin = new TableAdminConcert();
admin.daoAdmin(import_con, export_con);
}
private void daoEnrolltime(Connection import_con,Connection export_con){
TableEnrolltimeConcert enrolltime = new TableEnrolltimeConcert();
enrolltime.daoEnrolltime(import_con, export_con);
enrolltime_id_num = enrolltime.getID_Num();
}
private void daoMajorrecord(Connection import_con,Connection export_con){
TableMajorrecordConcert majorrecord = new TableMajorrecordConcert();
majorrecord.daoMajorrecord(import_con, export_con);
majorrecord_id_num = majorrecord.getID_Num();
}
private void daoMajortype(Connection import_con,Connection export_con){
TableMajortypeConcert majortype = new TableMajortypeConcert();
majortype.daoMajortype(import_con, export_con);
majortype_id_num = majortype.getID_Num();
}
private void daoMajorlength(Connection import_con,Connection export_con){
TableMajorlengthConcert majorlength = new TableMajorlengthConcert();
majorlength.daoMajorlength(import_con, export_con);
majorlength_id_num = majorlength.getID_Num();
}
private void daoStation(Connection import_con,Connection export_con){
TableStationConcert stattion = new TableStationConcert();
stattion.daoStation(import_con, export_con);
station_id_num = stattion.getID_Num();
}
private void daoMajor(Connection import_con,Connection export_con){
TableMajorConcert major = new TableMajorConcert();
major.daoMajor(import_con, export_con,station_id_num,enrolltime_id_num,
majorrecord_id_num,majortype_id_num,majorlength_id_num);
major_id_num = major.getID_Num();
}
private void daoExamtype(Connection import_con,Connection export_con){
TableExamtypeConcert examtype = new TableExamtypeConcert();
examtype.daoExamtype(import_con, export_con);
examtype_id_num = examtype.getID_Num();
}
private void daoCourse(Connection import_con,Connection export_con){
TableCourseConcert course = new TableCourseConcert();
course.daoCourse(import_con, export_con,major_id_num,examtype_id_num);
course_id_num = course.getID_Num();
}
private void daoStudentStatue(Connection import_con,Connection export_con){
TableStudentStatueConcert studentstatue = new TableStudentStatueConcert();
studentstatue.daoStudentStatue(import_con, export_con);
studentstatue_id_num = studentstatue.getID_Num();
}
private void daoStudent(Connection import_con,Connection export_con){
TableStudentConcert student = new TableStudentConcert();
student.daoStudent(import_con, export_con,major_id_num,studentstatue_id_num);
student_id_num = student.getID_Num();
}
private void daoStudentCourse(Connection import_con,Connection export_con){
TableStudentCourseConcert studentcourse = new TableStudentCourseConcert();
studentcourse.daoStudentCourse(import_con, export_con,course_id_num,student_id_num);
studentcourse_id_num = studentcourse.getID_Num();
}
private boolean setCon(String type,Connection javadb_con){
AccessDBConnection accessDBCon = new AccessDBConnection(type);
Connection access_con = accessDBCon.getConnection();
if (access_con == null)
return false;
else {
progress = new JProgressBarDemo(MainFrame.GetMainFrame());
MainFrame.GetMainFrame().setEnabled(false);
if ("javadb".equals(type)) {
Insert_CheckCode(javadb_con);
setI_con(access_con);
setE_con(javadb_con);
} else if ("access".equals(type)) {
setE_con(access_con);
setI_con(javadb_con);
if (DoTcheck.check(getE_con(), getI_con())) {
// 删除表
Drop_Table(getI_con());
// 新建表
new CreateTable(getI_con(), "javadb");
System.out.println("3" + e_con + " " + i_con);
}else{
progress.setVisible(false);
int option = JOptionPane.showConfirmDialog(null, "要导入的数据库非当前系统导出!"+"\n"+
"是否要继续导入!", "提示", JOptionPane.YES_NO_OPTION);
if(option==JOptionPane.YES_OPTION){
progress.setVisible(true);
// 删除表
Drop_Table(getI_con());
// 新建表
new CreateTable(getI_con(), "javadb");
return true;
}
else
return false;
}
}
return true;
}
}
private void dao(Connection import_con,Connection export_con,String flag){
if("javadb".equals(flag)){
DoTcheck.daoTcheck_j(import_con, export_con);
}
daoAdmin(import_con, export_con);
System.out.println("admin");
daoEnrolltime(import_con, export_con);
System.out.println("enrolltime");
daoMajorrecord(import_con, export_con);
System.out.println("majorrecord");
daoMajortype(import_con, export_con);
System.out.println("majortype");
daoMajorlength(import_con, export_con);
System.out.println("majorlength");
daoStation(import_con, export_con);
System.out.println("station");
daoMajor(import_con, export_con);
System.out.println("major");
daoExamtype(import_con, export_con);
System.out.println("examtype");
daoCourse(import_con, export_con);
System.out.println("course");
daoStudentStatue(import_con, export_con);
System.out.println("studentstatue");
daoStudent(import_con, export_con);
System.out.println("student");
daoStudentCourse(import_con, export_con);
System.out.println("studentcourse");
CommitDB();
dao = true;
if("javadb".equals(flag)){
try {
import_con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else if("access".equals(flag)){
try {
export_con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//DBConnection.closeConnecion();
MainFrame.GetMainFrame().setEnabled(true);
}
private void CommitDB(){
try {
i_con.commit();
e_con.commit();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void Drop_Table(Connection javadb_con){
String tableName[] ={"studentcourse","student","course","major","studentstatue",
"station","majortype","examtype","majorrecord","majorlength",
"enrolltime","admin"};
for (int i = 0; i < 12; i++) {
String sql = "drop table "+tableName[i];
try {
PreparedStatement st = javadb_con.prepareStatement(sql);
st.execute();
javadb_con.commit();
System.out.println("drop table"+tableName[i]);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
private void Insert_CheckCode(Connection javadb_con){
Date date = new Date(new java.util.Date().getTime());
RandomCheckcode r_c = new RandomCheckcode();
String sql = "insert into Tcheck(checkcode,updatetime,bz)" +
"values (?,?,?)";
try {
PreparedStatement st = javadb_con.prepareStatement(sql);
st.setString(1, r_c.getRandom_checkcode());
st.setDate(2,date);
st.setString(3, date.getTime()+"导出");
st.execute();
javadb_con.commit();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void showDaoMessage(){
if(dao)
JOptionPane.showMessageDialog(null, "数据库导入/导出成功!", "提示", JOptionPane.PLAIN_MESSAGE);
else
JOptionPane.showMessageDialog(null, "数据库导入/导出失败!", "提示", JOptionPane.PLAIN_MESSAGE);
}
@Override
public void run() {
dao(getI_con(), getE_con(), type);
progress.setPBValue(100);
showDaoMessage();
MainFrame.getModelManager().clearCache();
MainFrame.GetMainFrame().switchView(new WelcomePanel());
MainFrame.GetMainFrame().getJTreePanel().buildDefaultTree();
}
public JavadbToAccess(String type){
Connection javadb_con = MainFrame.getModelManager().getConnection();
this.type = type;
if (setCon(type,javadb_con)) {
System.out.println("dfs");
this.start();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -