Hallo, ich habe ein Programm geschrieben was momentan ca 3000Zeilen hat. Ich habe mir überlegt, um es übersichtlicher zu gestalten, bestimmte Zeilen "auszulagern" sprich diese in eine neue .java Datei zu speichern.
Hier mal ein Beispielcode:
Wäre es nun möglich diesen Abschnitt:
In eine neue java Datei zu speichern?
Ich habs schon selber versucht aber dann konnte er nie die JTextFields erkennen. ? Wäre für hilfe dankbar.
Hier mal ein Beispielcode:
Java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;
import javax.swing.border.*;
public class Compafree extends JFrame {
Container cp;
private static Compafree fenster = new Compafree("");
String serverdaten[] = new String[10];
JTextField jtf_loginname;
JPasswordField jpf_loginpasswort;
String loginNameAusDB="";
int fullwidth = 0;
JButton jb_login = new JButton("Login");
JPanel jp_center = new JPanel();
JPanel jp_loginbuttons = new JPanel();
JPanel jp_logo = new JPanel();
public Compafree (String title) {
super(title);
cp=getContentPane();
Lauscher lausch = new Lauscher();
jtf_loginname = new JTextField(10);
jpf_loginpasswort = new JPasswordField(10);
JLabel jl_loginname = new JLabel("Name:",JLabel.CENTER);
JLabel jl_loginpasswort = new JLabel("Passwort:",JLabel.CENTER);
jb_login.addActionListener(lausch);
JPanel jp_login = new JPanel();
jp_login.setLayout(new GridLayout(4,1));
jp_login.add(jl_loginname);
jp_login.add(jtf_loginname);
jp_login.add(jl_loginpasswort);
jp_login.add(jpf_loginpasswort);
jp_center.add(jp_login);
cp.add(jp_center,"Center");
cp.add(jb_login,"South");
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
class Lauscher implements ActionListener {
public void actionPerformed(ActionEvent e) {
/////////////////////////////////////////LOGIN////////////////////////////////////////////////////////
if( e.getSource() == jb_login){
String loginPWAusDB="";
String loginname = jtf_loginname.getText();
String loginpassname = new String(jpf_loginpasswort.getPassword());
try{
Connection con = DriverManager.getConnection("jdbc:mysql://"+serverdaten[0]+"/"+serverdaten[1],serverdaten[2],serverdaten[3]);
Statement stmt = con.createStatement();
ResultSet rslt = stmt.executeQuery("select * from ttm_user where Name = '"+loginname+"'");
while (rslt.next()) {
loginNameAusDB=(rslt.getString("Name"));
loginPWAusDB=(rslt.getString("Passwort"));
}
stmt.close();
con.close();
}
catch (Exception f){}
if(loginNameAusDB.equals(loginname)&&loginPWAusDB.equals(loginpassname)){
jp_center.removeAll();
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////
}
}
/////////////////////////////////////////////MAIN/////////////////////////////////////////////////////////
public static void main(String[] args) throws Exception {
fenster.setSize(200,200);
fenster.setLocationRelativeTo(null);
fenster.setVisible(true);
}
}
Wäre es nun möglich diesen Abschnitt:
Java:
/////////////////////////////////////////LOGIN////////////////////////////////////////////////////////
if( e.getSource() == jb_login){
String loginPWAusDB="";
String loginname = jtf_loginname.getText();
String loginpassname = new String(jpf_loginpasswort.getPassword());
try{
Connection con = DriverManager.getConnection("jdbc:mysql://"+serverdaten[0]+"/"+serverdaten[1],serverdaten[2],serverdaten[3]);
Statement stmt = con.createStatement();
ResultSet rslt = stmt.executeQuery("select * from ttm_user where Name = '"+loginname+"'");
while (rslt.next()) {
loginNameAusDB=(rslt.getString("Name"));
loginPWAusDB=(rslt.getString("Passwort"));
}
stmt.close();
con.close();
}
catch (Exception f){}
if(loginNameAusDB.equals(loginname)&&loginPWAusDB.equals(loginpassname)){
jp_center.removeAll();
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////
Ich habs schon selber versucht aber dann konnte er nie die JTextFields erkennen. ? Wäre für hilfe dankbar.