Вы находитесь на странице: 1из 8

import

import
import
import
import
import
import

com.mysql.jdbc.Connection;
com.mysql.jdbc.Statement;
java.sql.DriverManager;
java.sql.ResultSet;
java.sql.SQLException;
javax.swing.DefaultListModel;
javax.swing.JOptionPane;

public class DiaryApp extends javax.swing.JFrame {


public static DefaultListModel listModel = new DefaultListModel();
public static void listupdate() {
try {
listModel.removeAllElements();
Class.forName("java.sql.DriverManager");
Connection con = (Connection) DriverManager.getConnection("jdbc:mysq
l://localhost:3306/recorder", "root", "2312");
Statement stmt = (Statement) con.createStatement();
String query = "SELECT date,topic FROM Diary";
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
String B = rs.getString("Date");
String C = rs.getString("Topic");
listModel.addElement(B + " " + C);
}
} catch (Exception e) {
}
}
public DiaryApp() {
initComponents();
listupdate();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:i
nitComponents
private void initComponents() {
jScrollPane2 = new javax.swing.JScrollPane();
listc = new javax.swing.JList(listModel);
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jButton1 = new javax.swing.JButton();
jTextField1 = new javax.swing.JTextField();
jButton2 = new javax.swing.JButton();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jTextField2 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jTextField3 = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jTextField4 = new javax.swing.JTextField();
jLabel7 = new javax.swing.JLabel();
jTextField5 = new javax.swing.JTextField();
jSeparator1 = new javax.swing.JSeparator();
jButton3 = new javax.swing.JButton();
jLabel8 = new javax.swing.JLabel();

jScrollPane3 = new javax.swing.JScrollPane();


jTextArea2 = new javax.swing.JTextArea();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane2.setViewportView(listc);
jTextArea1.setColumns(20);
jTextArea1.setLineWrap(true);
jTextArea1.setRows(5);
jTextArea1.setWrapStyleWord(true);
jScrollPane1.setViewportView(jTextArea1);
jButton1.setText("Save Entery");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("Show Entry");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jLabel1.setText("Place:");
jLabel2.setText("Date: (Format: yyyy-mm-dd)");
jLabel3.setText("Time: (Format: HH/MM)");
jLabel4.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel4.setText("Diary Entry");
jLabel5.setText("Dear Diary,");
jLabel6.setText("Name:");
jLabel7.setText("Topic:");
jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
jButton3.setText("Exit");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jLabel8.setText("Entry Veiwer (Select Entry to view):");
jTextArea2.setColumns(20);
jTextArea2.setLineWrap(true);
jTextArea2.setRows(5);
jTextArea2.setWrapStyleWord(true);
jScrollPane3.setViewportView(jTextArea2);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentP


ane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
.addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.s
wing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Ali
gnment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing
.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(jav
ax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle
.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(jav
ax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTextField2)
.addComponent(jTextField3)))
.addComponent(jScrollPane1, javax.swing.Grou
pLayout.DEFAULT_SIZE, 274, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle
.ComponentPlacement.RELATED)
.addComponent(jTextField1))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel6)
.addGap(2, 2, 2)
.addComponent(jTextField4))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel5, javax.swing.Group
Layout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addGap(12, 12, 12))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING
, layout.createSequentialGroup()
.addComponent(jLabel7)
.addPreferredGap(javax.swing.LayoutStyle.Compone
ntPlacement.RELATED)
.addComponent(jTextField5)
.addPreferredGap(javax.swing.LayoutStyle.Compone
ntPlacement.UNRELATED))))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout
.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, S
hort.MAX_VALUE)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRE
D_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(52, 52, 52)))

.addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZ
E, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELA
TED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Ali
gnment.LEADING)
.addComponent(jButton2, javax.swing.GroupLayout.Alignment.TR
AILING, javax.swing.GroupLayout.DEFAULT_SIZE, 275, Short.MAX_VALUE)
.addComponent(jLabel8, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jScrollPane3)
.addComponent(jScrollPane2))
.addContainerGap())
.addGroup(layout.createSequentialGroup()
.addGap(257, 257, 257)
.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE,
72, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX
_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 2
3, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Ali
gnment.LEADING, false)
.addGroup(layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(jTextField5, javax.swing.GroupLayout.P
REFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PRE
FERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jLabel5)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREF
ERRED_SIZE, 209, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(jTextField4, javax.swing.GroupLayout.P
REFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PRE
FERRED_SIZE))
.addGap(5, 5, 5)
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
.addComponent(jTextField1, javax.swing.GroupLayout.P
REFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PRE
FERRED_SIZE)
.addComponent(jLabel1))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem

ent.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jTextField2, javax.swing.GroupLayout.P
REFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PRE
FERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jTextField3, javax.swing.GroupLayout.P
REFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PRE
FERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jButton1))
.addGroup(layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jSeparator1, javax.swing.GroupLayout.PREFE
RRED_SIZE, 401, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(15, 15, 15)
.addComponent(jLabel8)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jScrollPane2, javax.swing.GroupLayout.PREF
ERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFER
RED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.RELATED)
.addComponent(jButton2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacem
ent.UNRELATED)
.addComponent(jScrollPane3, javax.swing.GroupLayout.PREF
ERRED_SIZE, 193, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(0, 13, Short.MAX_VALUE)
.addComponent(jButton3)
.addGap(6, 6, 6))
);
pack();
}// </editor-fold>//GEN-END:initComponents
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButton2ActionPerformed
String username = "root";
String password = "2312";
try {
Class.forName("java.sql.DriverManager");
Connection con = (Connection) DriverManager.getConnection("jdbc:mysq
l://localhost:3306/recorder", "" + username + "", "" + password + "");
Statement stmt = (Statement) con.createStatement();
String query = "SELECT * FROM Diary where date= '"+listModel.getElem
entAt(listc.getSelectedIndex()).toString().substring(0,10)+"'";
JOptionPane.showMessageDialog(this, query);
ResultSet rs = stmt.executeQuery(query);
int I = listc.getSelectedIndex();

int O = 0;
while (rs.next()) {
String B = rs.getString("Entry");
String C = rs.getString("Date");
String D = rs.getString("Place");
String E = rs.getString("Time");
String F = rs.getString("Name");
String G = rs.getString("Topic");
jTextArea2.setText(C+"\n"+E+"\nTopic: "+G+"\n"+D+"\n\n"+B+"\
n"+F);
O++;
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}//GEN-LAST:event_jButton2ActionPerformed
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButton1ActionPerformed
if (jTextArea1.getText().isEmpty() || jTextField5.getText().isEmpty() ||
jTextField2.getText().isEmpty() || jTextField1.getText().isEmpty() || jTextFiel
d4.getText().isEmpty() || jTextField3.getText().isEmpty()) {
JOptionPane.showMessageDialog(this, "Enter the complete details plea
se");
} else {
try {
String username = "root";
String password = "2312";
String Date;
Class.forName("java.sql.DriverManager");
Connection con = (Connection) DriverManager.getConnection("jdbc:
mysql://localhost:3306/recorder", "" + username + "", "" + password + "");
Statement stmt = (Statement) con.createStatement();
String query = "insert into diary values(\"" +"Dear Diary,\n"+ j
TextArea1.getText() + "\",\"" + jTextField2.getText() + "\",\"" + jTextField1.ge
tText() + "\",\"" + jTextField3.getText() + "\",\"" + jTextField4.getText() + "\
",\"" + jTextField5.getText() + "\")";
stmt.executeUpdate(query);
JOptionPane.showMessageDialog(this, "Diary Entry saved successfu
lly!");
listupdate();
} catch (ClassNotFoundException | SQLException e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
}//GEN-LAST:event_jButton1ActionPerformed
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButton3ActionPerformed
System.exit(0);
}//GEN-LAST:event_jButton3ActionPerformed
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting cod
e (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the d

efault look and feel.


* For details see http://download.oracle.com/javase/tutorial/uiswing/lo
okandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIMana
ger.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(DiaryApp.class.getName()).log(jav
a.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(DiaryApp.class.getName()).log(jav
a.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(DiaryApp.class.getName()).log(jav
a.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(DiaryApp.class.getName()).log(jav
a.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new DiaryApp().setVisible(true);
}
});
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JSeparator jSeparator1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextArea jTextArea2;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
private javax.swing.JTextField jTextField4;
private javax.swing.JTextField jTextField5;
private static javax.swing.JList listc;
// End of variables declaration//GEN-END:variables

Вам также может понравиться