⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adaptoramin.java

📁 数据库通用适配器:实现行粒度的数据库的转换
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
		newItemMenuItem_4.setText("最小化");
		newItemMenuItem_4.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
				shell.setVisible(!shell.isVisible());
                tray.getItem(0).setVisible(!shell.isVisible());
			}
		});

		new MenuItem(menu_4, SWT.SEPARATOR);
		final MenuItem newItemMenuItem_12 = new MenuItem(menu_4, SWT.NONE);
		newItemMenuItem_12.setText("关闭");
		newItemMenuItem_12.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
				shell.close();
			}
		});

		new MenuItem(menu, SWT.SEPARATOR);

		final MenuItem newItemMenuItem = new MenuItem(menu, SWT.CASCADE);
		newItemMenuItem.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
			}
		});
		newItemMenuItem.setText("设置");
		final Menu menu_2 = new Menu(newItemMenuItem);
		newItemMenuItem.setMenu(menu_2);

		final MenuItem newSubmenuMenuItem_1 = new MenuItem(menu_2, SWT.CASCADE);
		newSubmenuMenuItem_1.setText("输入数据源");

		final Menu menu_3 = new Menu(newSubmenuMenuItem_1);
		newSubmenuMenuItem_1.setMenu(menu_3);
		
		
		
		final MenuItem newItemMenuItem_1 = new MenuItem(menu_3, SWT.NONE);
		newItemMenuItem_1.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
				
				final Shell dialogshell=new Shell();
				dialogshell.setLocation(200, 200);
				dialogshell.setText("导入数据库");
				dialogshell.setSize(600,400);
				FormLayout formLayout= new FormLayout();
				dialogshell.setLayout(formLayout);
				formLayout.marginHeight = 10; //设置shell的上下边距为10像素
				formLayout.marginWidth = 20;
				
				Label dialogLabel=new Label(dialogshell,SWT.NONE);				
				dialogLabel.setText("驱动器模板:");
				dialogLabel.setAlignment(SWT.LEFT);
				FormData FormData=new FormData(); //创建布局数据对象formData1				
				FormData.width=60; 
				FormData.height=15; 
				FormData.top = new FormAttachment(0, 6); //Label与shell上边框相距5象素
				FormData.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				dialogLabel.setLayoutData(FormData);
				
				final Combo Dcombo = new Combo(dialogshell, SWT.NONE);
				FormAttachment formAttachment_1=new FormAttachment(dialogLabel); //指定dialogLabel1为参照物
				FormData formData_11=new FormData(480,15); //创建FormData对象,宽度300,高度50
				formData_11.left=formAttachment_1; //b2的左边紧贴与b1的右边
				Dcombo.setLayoutData(formData_11);
				Dcombo.add("Oracle(Thin Driver)");
				Dcombo.add("SQL Server");
				Dcombo.add("IBM DB2");
				Dcombo.add("Sybase");
				Dcombo.add("access");	
				
				
				Label dialogLabel1=new Label(dialogshell,SWT.NONE);				
				dialogLabel1.setText("数据库名:");
				dialogLabel1.setAlignment(SWT.LEFT);
				FormData formData1=new FormData(); //创建布局数据对象formData1				
				formData1.width=60; 
				formData1.height=15; 
				formData1.top = new FormAttachment(dialogLabel, 11); //Label与shell上边框相距5象素
				formData1.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				dialogLabel1.setLayoutData(formData1);
				
				final Text dialogtext1=new Text(dialogshell,SWT.BORDER);
				FormAttachment formAttachment1=new FormAttachment(dialogLabel1); //指定dialogLabel1为参照物
				FormData formData11=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData11.top = new FormAttachment(Dcombo, 11); //Label与shell上边框相距5象素
				formData11.left=formAttachment1; //b2的左边紧贴与b1的右边
				dialogtext1.setLayoutData(formData11);			
				
				
				
				Label dialogLabel2=new Label(dialogshell,SWT.NONE  );
				dialogLabel2.setText("连接的URL:");
				dialogLabel2.setAlignment(SWT.LEFT);
				FormData formData2=new FormData(); //创建布局数据对象formData2
				formData2.top = new FormAttachment(dialogLabel1, 11); //Label与shell上边框相距5象素
				formData2.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				formData2.width=60; 
				formData2.height=15;
				dialogLabel2.setLayoutData(formData2);
				
				final Text dialogtext2=new Text(dialogshell,SWT.BORDER);
                FormData formData21=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData21.top = new FormAttachment(dialogtext1, 5); //Label与shell上边框相距5象素
				FormAttachment formAttachment2=new FormAttachment(dialogLabel2); //指定dialogLabel1为参照物
				formData21.left=formAttachment2; //b2的左边紧贴与b1的右边
				dialogtext2.setLayoutData(formData21);
				
				Label dialogLabel3=new Label(dialogshell,SWT.None);
				dialogLabel3.setText("用户名:");
				FormData formData3=new FormData(); //创建布局数据对象formData2
				formData3.top = new FormAttachment(dialogLabel2, 11); //Label与shell上边框相距5象素
				formData3.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				formData3.width=60; 
				formData3.height=15; 
				dialogLabel3.setLayoutData(formData3);
				
				final Text dialogtext3=new Text(dialogshell,SWT.BORDER);
//				创建FormAttachment对象formAttachment,以b1为参照物
				FormAttachment formAttachment3=new FormAttachment(dialogLabel3); //指定dialogLabel1为参照物
				FormData formData31=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData31.top = new FormAttachment(dialogtext2, 5); //Label与shell上边框相距5象素
				formData31.left=formAttachment3; //b2的左边紧贴与b1的右边
				dialogtext3.setLayoutData(formData31);
				
				
				Label dialogLabel4=new Label(dialogshell,SWT.None);
				dialogLabel4.setText("密码:");
				FormData formData4=new FormData(); //创建布局数据对象formData2
				formData4.top = new FormAttachment(dialogLabel3, 11); //Label与shell上边框相距5象素
				formData4.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				formData4.width=60; 
				formData4.height=15; 
				dialogLabel4.setLayoutData(formData4);
				
				final Text dialogtext4=new Text(dialogshell,SWT.PASSWORD|SWT.BORDER);
//				创建FormAttachment对象formAttachment,以b1为参照物
				FormAttachment formAttachment4=new FormAttachment(dialogLabel4); //指定dialogLabel1为参照物
				FormData formData41=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData41.top = new FormAttachment(dialogtext3, 5); //Label与shell上边框相距5象素
				formData41.left=formAttachment4; //b2的左边紧贴与b1的右边
				dialogtext4.setLayoutData(formData41);
			    
				Label dialogLabel5=new Label(dialogshell,SWT.None);
				dialogLabel5.setText("schema:");
				FormData formData5=new FormData(); //创建布局数据对象formData2
				formData5.top = new FormAttachment(dialogLabel4, 11); //Label与shell上边框相距5象素
				formData5.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				formData5.width=60; 
				formData5.height=15; 
				dialogLabel5.setLayoutData(formData5);
				
				final Text dialogtext5=new Text(dialogshell,SWT.BORDER);
//				创建FormAttachment对象formAttachment,以b1为参照物
				FormAttachment formAttachment5=new FormAttachment(dialogLabel5); //指定dialogLabel1为参照物
				FormData formData51=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData51.top = new FormAttachment(dialogtext4, 5); //Label与shell上边框相距5象素
				formData51.left=formAttachment5; //b2的左边紧贴与b1的右边
				dialogtext5.setLayoutData(formData51);
				
				Label dialogLabel6=new Label(dialogshell,SWT.None);
				dialogLabel6.setText("Driver:");
				FormData formData6=new FormData(); //创建布局数据对象formData2
				formData6.top = new FormAttachment(dialogLabel5, 11); //Label与shell上边框相距5象素
				formData6.left = new FormAttachment(0, 2); // Label与shell左边框相距5象素
				formData6.width=60; 
				formData6.height=15; 
				dialogLabel6.setLayoutData(formData6);
				
				final Text dialogtext6=new Text(dialogshell,SWT.BORDER);
//				创建FormAttachment对象formAttachment,以b1为参照物
				FormAttachment formAttachment6=new FormAttachment(dialogLabel6); //指定dialogLabel1为参照物
				FormData formData61=new FormData(500,15); //创建FormData对象,宽度300,高度50
				formData61.top = new FormAttachment(dialogtext5, 5); //Label与shell上边框相距5象素
				formData61.left=formAttachment6; //b2的左边紧贴与b1的右边
				dialogtext6.setLayoutData(formData61);
				
				
				
				Button b=new Button(dialogshell,SWT.MouseDown);
				b.setText("添加数据库");
				FormData formData=new FormData(); //创建布局数据对象formData1
				formData.top = new FormAttachment(dialogLabel6, 80); //Label与shell上边框相距5象素
				formData.left=new FormAttachment(0,240);
				formData.width=80; //按钮b1的宽度为100像素
				formData.height=40; //按钮b1的高度为50像素
				b.setLayoutData(formData); //设置b1的布局数据为formData1				
				
			
				
			
				Dcombo.addSelectionListener(new SelectionAdapter(){
					public void widgetSelected(SelectionEvent e){
						if(Dcombo.getText().equals("Oracle(Thin Driver)"))
							{
							dialogtext2.setText("jdbc:oracle:thin:@<server>[:<1521>]:<database_name>");
							dialogtext6.setText("oracle.jdbc.driver.OracleDriver");
							}
						else
							if(Dcombo.getText().equals("SQL Server"))
							{
								dialogtext2.setText("jdbc:microsoft:sqlserver://<server_name>:<port>[;databaseName=<dbname>]");
								dialogtext6.setText("com.microsoft.jdbc.sqlserver.SQLServerDriver");
							}
								
							else
								if(Dcombo.getText().equals("IBM DB2"))
									{
									dialogtext2.setText("jdbc:db2://<host_name>[:<6789>]/<database_name>");
									dialogtext6.setText("com.ibm.db2.jdbc.app.DB2Driver");
									}
								else
									if(Dcombo.getText().equals("Sybase"))
										{
										dialogtext2.setText("jdbc:sybase:Tds:@<server>[:<5007>]/<database_name>");
										dialogtext6.setText("com.sybase.jdbc.SybDriver");
										}
									else
										if(Dcombo.getText().equals("access"))
											{
											dialogtext2.setText("jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=+application.getRealPath");
											dialogtext6.setText("sun.jdbc.odbc.JdbcOdbcDriver");
											}
					}
				});
				
				b.addSelectionListener(new SelectionAdapter(){
					public void widgetSelected(SelectionEvent e){
						     //将所有的数据库信息导入数据库对象中
						if((!dialogtext1.getText().equals(""))&&(!dialogtext2.getText().equals(""))&&(!dialogtext6.getText().equals(""))
								&&(!dialogtext5.getText().equals(""))&&(!dialogtext3.getText().equals(""))&&(!dialogtext4.getText().equals(""))){
							Source s=new Source(dialogtext1.getText(),dialogtext2.getText(),dialogtext3.getText(),dialogtext4.getText(),dialogtext6.getText(),dialogtext5.getText());
						     s.setType(Dcombo.getText());
						     S.getS().add(s);
						     dialogtext1.setText("");
						     dialogtext2.setText("");
						     dialogtext3.setText("");
						     dialogtext4.setText("");
						     dialogtext5.setText("");
						     dialogtext6.setText("");
						     
						     System.out.println(s.getType());
						     System.out.println(s.getDateName());
						     System.out.println(s.getConnURL());
						     System.out.println(s.getUseName());
						     System.out.println(s.getPassword());
						     System.out.println(s.getSchema());
						     System.out.println(s.getDriver());
						   						     
						     
						     TableItem[] items=table.getItems();
							 if(items.length!=0){
								 for(int i=0;i<items.length;i++)
								 {
								//数据源选择								
								
								String Sour1=((CCombo)comb1.elementAt(i)).getText();
							 	((CCombo)comb1.elementAt(i)).add(s.getDateName());								
							 	((CCombo)comb1.elementAt(i)).setText(Sour1);
							 	
								
								//目的数据库选择
								
							 	String Sour2=((CCombo)comb2.elementAt(i)).getText();
							 	((CCombo)comb2.elementAt(i)).add(s.getDateName());								
							 	((CCombo)comb2.elementAt(i)).setText(Sour2);							
															
							
								 }									
							}
						}						     					 
						     
						}
						});
				dialogshell.open();
			}			
		});
		newItemMenuItem_1.setText("关系型数据库");

		final MenuItem menuItem = new MenuItem(menu_3, SWT.SEPARATOR);
		menuItem.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
			}
		});

		final MenuItem newItemMenuItem_3 = new MenuItem(menu_3, SWT.NONE);
		newItemMenuItem_3.setText("excel");
		newItemMenuItem_3.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
				try{
					FileDialog dialog =new FileDialog(shell,SWT.OPEN);
					String URL=dialog.open();
					System.out.println(URL);				
					int locator=0;
					for(int i=URL.length()-1;i>0;i--){
						if(URL.substring(i,i+1).equals("\\")){locator=i;System.out.println(locator);break;}
					}
					String name=URL.substring(locator+1); 
					System.out.println(name);
					Source s=new Source(name,URL,"","","sun.jdbc.odbc.JdbcOdbcDriver","");
					s.setType("Excel");
					S.getS().add(s);
					
					  System.out.println(s.getType());
					     System.out.println(s.getDateName());
					     System.out.println(s.getConnURL());
					     System.out.println(s.getUseName());
					     System.out.println(s.getPassword());
					     System.out.println(s.getSchema());
					     System.out.println(s.getDriver());
					TableItem[] items=table.getItems();
					 if(items.length!=0){
						 for(int i=0;i<items.length;i++)
						 {
						//数据源选择								
						
						String Sour1=((CCombo)comb1.elementAt(i)).getText();
					 	((CCombo)comb1.elementAt(i)).add(s.getDateName());								
					 	((CCombo)comb1.elementAt(i)).setText(Sour1);
					 	
						
						//目的数据库选择
						
					 	String Sour2=((CCombo)comb2.elementAt(i)).getText();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -