Advertisement
Guest User

Untitled

a guest
Dec 11th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.88 KB | None | 0 0
  1. package interfetetest;//interfete
  2.  
  3. import java.awt.FlowLayout;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6. import java.util.Collections;
  7. import java.util.Comparator;
  8. import java.util.Vector;
  9.  
  10. import javax.swing.DefaultListModel;
  11. import javax.swing.JButton;
  12. import javax.swing.JFrame;
  13. import javax.swing.JLabel;
  14. import javax.swing.JList;
  15. import javax.swing.JTextField;
  16.  
  17.  
  18. public class Main {
  19.  
  20. public static void main(String[] args) {
  21. Frame f=new Frame();
  22. f.setVisible(true);
  23.  
  24. }
  25.  
  26. }
  27.  
  28. class Frame extends JFrame{
  29. static Vector<carte> v= new Vector<carte>();
  30.  
  31. public Frame() {
  32. super("Interfata");
  33.  
  34. setSize(600,400);
  35. setDefaultCloseOperation(EXIT_ON_CLOSE);
  36. getContentPane().setLayout(new FlowLayout());
  37.  
  38. JLabel titlul=new JLabel("Titlul");
  39. JTextField t=new JTextField(10);
  40. JLabel autorul=new JLabel("Autorul");
  41. JTextField a=new JTextField(10);
  42. JLabel anul=new JLabel("An aparitie");
  43. JTextField an=new JTextField(10);
  44.  
  45. JButton b1=new JButton("Adauga in vector");
  46. JButton b2=new JButton("Afiseaza");
  47. JButton b3=new JButton("Sortare");
  48.  
  49. DefaultListModel list = new DefaultListModel();
  50. JList l=new JList(list);
  51.  
  52. getContentPane().add(titlul);
  53. getContentPane().add(t);
  54. getContentPane().add(autorul);
  55. getContentPane().add(a);
  56. getContentPane().add(anul);
  57. getContentPane().add(an);
  58. getContentPane().add(b1);
  59. getContentPane().add(b2);
  60. getContentPane().add(b3);
  61. getContentPane().add(l);
  62.  
  63. b1.addActionListener(new Adaugare(t,a,an));
  64. b2.addActionListener(new Afisare(l,list));
  65. b3.addActionListener(new Sortare(l,list));
  66.  
  67.  
  68. }
  69. }
  70.  
  71. class carte{
  72. String titlu;
  73. String aut;
  74. int an;
  75. public String getTitlu() {
  76. return titlu;
  77. }
  78. public void setTitlu(String titlu) {
  79. this.titlu = titlu;
  80. }
  81. public String getAut() {
  82. return aut;
  83. }
  84. public void setAut(String aut) {
  85. this.aut = aut;
  86. }
  87. public int getAn() {
  88. return an;
  89. }
  90. public void setAn(int an) {
  91. this.an = an;
  92. }
  93. public carte(String titlu, String aut, int an) {
  94. super();
  95. this.titlu = titlu;
  96. this.aut = aut;
  97. this.an = an;
  98. }
  99. @Override
  100. public String toString() {
  101. return titlu+" "+aut+" "+an;
  102. }
  103.  
  104. }
  105.  
  106. class Adaugare implements ActionListener
  107. {
  108. JTextField t,au,a;
  109. public Adaugare(JTextField t, JTextField au, JTextField a)
  110. {
  111. this.t=t;
  112. this.au=au;
  113. this.a=a;
  114. }
  115. @Override
  116. public void actionPerformed(ActionEvent e)
  117. {
  118. carte ca=new carte(t.getText(),au.getText(),Integer.parseInt(a.getText()));
  119. Frame.v.add(ca);
  120.  
  121. }
  122. }
  123.  
  124. class Afisare implements ActionListener
  125. {
  126. JList l;
  127. DefaultListModel list;
  128. public Afisare(JList l, DefaultListModel list)
  129. {
  130. this.l=l;
  131. this.list=list;
  132. }
  133. @Override
  134. public void actionPerformed(ActionEvent e)
  135. {
  136. list.clear();
  137. for(carte i:Frame.v)
  138. {
  139. list.addElement(i);
  140. }
  141. }
  142.  
  143. }
  144. class Sortare implements ActionListener
  145. {
  146. JList l;
  147. DefaultListModel list;
  148. JTextField t;
  149. public Sortare(JList l, DefaultListModel list)
  150. {
  151. this.l=l;
  152. this.list=list;
  153. }
  154. @Override
  155. public void actionPerformed(ActionEvent e)
  156. {
  157. Collections.sort(Frame.v,new ComparaTitlu());
  158. list.clear();
  159. for(carte i:Frame.v)
  160. {
  161. list.addElement(i);
  162. }
  163.  
  164. }
  165. }
  166.  
  167. class ComparaTitlu implements Comparator<carte>
  168. {
  169. @Override
  170. public int compare(carte p1, carte p2) {
  171.  
  172. int rez= p1.getTitlu().compareTo(p2.getTitlu());
  173. if (rez>=1) return 1;
  174. else
  175. if (rez<0) return -1;
  176. else return 0;
  177. }}
  178.  
  179.  
  180.  
  181.  
  182. package problema;//servleturi
  183.  
  184. import java.io.IOException;
  185. import java.io.PrintWriter;
  186. import java.util.Vector;
  187.  
  188. import javax.servlet.ServletException;
  189. import javax.servlet.annotation.WebServlet;
  190. import javax.servlet.http.HttpServlet;
  191. import javax.servlet.http.HttpServletRequest;
  192. import javax.servlet.http.HttpServletResponse;
  193.  
  194.  
  195. @WebServlet("/Main")
  196. public class Main extends HttpServlet {
  197. private static final long serialVersionUID = 1L;
  198. static Vector<carte> v= new Vector<carte>();
  199.  
  200. public Main() {
  201. super();
  202.  
  203.  
  204. }
  205.  
  206.  
  207. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  208. PrintWriter nume= response.getWriter();
  209. nume.print("<html><head><title>Orice titlu</title></head>");
  210. nume.print("<body><form method='POST' action='http://localhost:8080/servleturi/Main'>");
  211. nume.print("<p>Titlu<input type='text' name='Numele'></p> ");
  212. nume.print("<p>Autor<input type='text' name='Numele2'></p> ");
  213. nume.print("<p>Anul<input type='text' name='Numele3'></p> ");
  214. nume.print("<p><input type='submit' value='apasa'></p> ");
  215. nume.print("</form></body></html> ");
  216. //response.getWriter().append("Served at: ").append(request.getContextPath());
  217. }
  218.  
  219.  
  220. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  221. String a=request.getParameter("Numele");
  222. String b=request.getParameter("Numele2");
  223. String c=request.getParameter("Numele3");
  224.  
  225. carte ca=new carte(a,b,Integer.parseInt(c));
  226. v.add(ca);
  227.  
  228. PrintWriter k=response.getWriter();
  229. k.print("<html><head><title>titlu</title></head>");
  230. k.print("<body>");
  231. for(carte i:v)
  232. k.print("<p>Cartea este " +i.getTitlu()+" "+i.getAut()+" "+i.getAn() +"</p>");
  233. k.print("</body></html>");
  234.  
  235. //doGet(request, response);
  236. }
  237.  
  238. }
  239.  
  240. class carte{
  241. String titlu;
  242. String aut;
  243. int an;
  244. public String getTitlu() {
  245. return titlu;
  246. }
  247. public void setTitlu(String titlu) {
  248. this.titlu = titlu;
  249. }
  250. public String getAut() {
  251. return aut;
  252. }
  253. public void setAut(String aut) {
  254. this.aut = aut;
  255. }
  256. public int getAn() {
  257. return an;
  258. }
  259. public void setAn(int an) {
  260. this.an = an;
  261. }
  262. public carte(String titlu, String aut, int an) {
  263. super();
  264. this.titlu = titlu;
  265. this.aut = aut;
  266. this.an = an;
  267. }
  268. @Override
  269. public String toString() {
  270. return titlu+" "+aut+" "+an;
  271. }
  272.  
  273. }
  274.  
  275.  
  276.  
  277. package lab6p2;//sql
  278.  
  279. import java.awt.BorderLayout;
  280. import java.awt.Color;
  281. import java.awt.Container;
  282. import java.awt.Dimension;
  283. import java.awt.FlowLayout;
  284. import java.awt.GridLayout;
  285. import java.awt.event.ActionEvent;
  286. import java.awt.event.ActionListener;
  287. import java.sql.*;
  288.  
  289. import javax.swing.JButton;
  290. import javax.swing.JFrame;
  291. import javax.swing.JLabel;
  292. import javax.swing.JOptionPane;
  293. import javax.swing.JPanel;
  294. import javax.swing.JTextField;
  295. import javax.swing.JToolBar;
  296.  
  297. import com.mysql.jdbc.Statement;
  298.  
  299. class MyFrame extends JFrame implements ActionListener{
  300. static JButton bFirst;
  301. static JButton bPrev;
  302. static JButton bNext;
  303. static JButton bLast;
  304. static JButton bAdd;
  305. static JButton bEdit;
  306. static JButton bDel;
  307. static JButton bSearch;
  308. static JButton bSave;
  309. static JButton bCancel;
  310. static JTextField barText;
  311. static JLabel labelId;
  312. static JLabel labelNume;
  313. static JLabel labelVarsta;
  314. static JTextField idText;
  315. static JTextField numeText;
  316. static JTextField varstaText;
  317. static String url;
  318. static Statement sql;
  319. static ResultSet rs;
  320. Connection con;
  321.  
  322. public MyFrame() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException{
  323. super("MySql database App");
  324. Class.forName("com.mysql.jdbc.Driver").newInstance();
  325. url = "jdbc:mysql://localhost:3306/test";
  326. con = DriverManager.getConnection(url, "root", "root");
  327. sql = (Statement)con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
  328. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  329. setSize(500,300);
  330. getContentPane().setLayout(new BorderLayout());
  331. JToolBar bar = new JToolBar();
  332. getContentPane().add(bar, BorderLayout.NORTH);
  333. JPanel pan1 = new JPanel();
  334. pan1.setLayout(new GridLayout(6,1));
  335. getContentPane().add(pan1, BorderLayout.CENTER);
  336. JPanel pan2 = new JPanel();
  337. JPanel pan3 = new JPanel();
  338. JPanel pan4 = new JPanel();
  339. pan2.setLayout(new FlowLayout());
  340. pan3.setLayout(new FlowLayout());
  341. pan4.setLayout(new FlowLayout());
  342.  
  343. bFirst = new JButton("<<");
  344. bFirst.addActionListener(this);
  345. bPrev = new JButton("<");
  346. bPrev.addActionListener(this);
  347. bNext = new JButton(">");
  348. bNext.addActionListener(this);
  349. bLast = new JButton(">>");
  350. bLast.addActionListener(this);
  351. bAdd = new JButton("Add");
  352. bAdd.addActionListener(this);
  353. bEdit = new JButton("Edit");
  354. bEdit.addActionListener(this);
  355. bDel= new JButton("Delete");
  356. bDel.addActionListener(this);
  357. bSearch = new JButton("Search");
  358. bSearch.addActionListener(this);
  359. bSave = new JButton("Save");
  360. bSave.setEnabled(false);
  361. bSave.addActionListener(this);
  362. bCancel = new JButton("Cancel");
  363. bCancel.setEnabled(false);
  364. bCancel.addActionListener(this);
  365. barText = new JTextField();
  366. barText.setEditable(false);
  367. bar.add(bFirst);
  368. bar.add(bPrev);
  369. bar.add(barText);
  370. bar.add(bNext);
  371. bar.add(bLast);
  372. bar.add(bAdd);
  373. bar.add(bEdit);
  374. bar.add(bDel);
  375. bar.add(bSearch);
  376. bar.add(bSave);
  377. bar.add(bCancel);
  378.  
  379. labelId = new JLabel("id");
  380. labelNume = new JLabel("nume");
  381. labelVarsta = new JLabel("varsta");
  382. idText = new JTextField();
  383. numeText = new JTextField();
  384. varstaText = new JTextField();
  385. idText.setEditable(false);
  386. numeText.setEditable(false);
  387. varstaText.setEditable(false);
  388. idText.setPreferredSize(new Dimension(100,20));
  389. numeText.setPreferredSize(new Dimension(100,20));
  390. varstaText.setPreferredSize(new Dimension(100,20));
  391.  
  392. labelId.setPreferredSize(new Dimension(50,20));
  393. labelNume.setPreferredSize(new Dimension(50,20));
  394. labelVarsta.setPreferredSize(new Dimension(50,20));
  395.  
  396. pan1.add(pan2);
  397. pan1.add(pan3);
  398. pan1.add(pan4);
  399. pan2.add(labelId);
  400. pan2.add(idText);
  401. pan3.add(labelNume);
  402. pan3.add(numeText);
  403. pan4.add(labelVarsta);
  404. pan4.add(varstaText);
  405. }
  406. public void actionPerformed(ActionEvent e){
  407. if(e.getSource() == bNext){
  408. try {
  409. rs.next();
  410. updateSelectedRow();
  411.  
  412. } catch (SQLException e1) {
  413. e1.printStackTrace();
  414. }
  415. }
  416. else if(e.getSource() == bPrev){
  417. try {
  418. rs.previous();
  419. updateSelectedRow();
  420. } catch (SQLException e1) {
  421. e1.printStackTrace();
  422. }
  423. }
  424. else if(e.getSource() == bFirst){
  425. try{
  426. rs.first();
  427. updateSelectedRow();
  428. } catch(SQLException e1){
  429. e1.printStackTrace();
  430. }
  431. }
  432. else if(e.getSource() == bLast){
  433. try {
  434. rs.last();
  435. updateSelectedRow();
  436. } catch (SQLException e1) {
  437. e1.printStackTrace();
  438. }
  439. }
  440. else if(e.getSource() == bEdit){
  441. idText.setEditable(true);
  442. numeText.setEditable(true);
  443. varstaText.setEditable(true);
  444.  
  445. bPrev.setEnabled(false);
  446. bFirst.setEnabled(false);
  447. bNext.setEnabled(false);
  448. bLast.setEnabled(false);
  449. bAdd.setEnabled(false);
  450. bDel.setEnabled(false);
  451. bSearch.setEnabled(false);
  452. bSave.setEnabled(true);
  453. bCancel.setEnabled(true);
  454. }
  455. else if(e.getSource() == bCancel){
  456. idText.setEditable(false);
  457. numeText.setEditable(false);
  458. varstaText.setEditable(false);
  459. bPrev.setEnabled(true);
  460. bFirst.setEnabled(true);
  461. bNext.setEnabled(true);
  462. bLast.setEnabled(true);
  463. bAdd.setEnabled(true);
  464. bDel.setEnabled(true);
  465. bSearch.setEnabled(true);
  466. bEdit.setEnabled(true);
  467. bSave.setEnabled(false);
  468. bCancel.setEnabled(false);
  469. try {
  470. updateSelectedRow();
  471. } catch (SQLException e1) {
  472. e1.printStackTrace();
  473. }
  474. }
  475. else if(e.getSource() == bAdd){
  476. idText.setEditable(true);
  477. numeText.setEditable(true);
  478. varstaText.setEditable(true);
  479. idText.setText("");
  480. numeText.setText("");
  481. varstaText.setText("");
  482.  
  483. bPrev.setEnabled(false);
  484. bFirst.setEnabled(false);
  485. bNext.setEnabled(false);
  486. bLast.setEnabled(false);
  487. bAdd.setEnabled(false);
  488. bDel.setEnabled(false);
  489. bSearch.setEnabled(false);
  490. bSave.setEnabled(true);
  491. bCancel.setEnabled(true);
  492. bEdit.setEnabled(false);
  493. }
  494. else if(e.getSource() == bSave){
  495. if(bEdit.isEnabled()){
  496. try {
  497. rs.updateInt("id", Integer.parseInt(idText.getText()));
  498. rs.updateInt("varsta", Integer.parseInt(varstaText.getText()));
  499. rs.updateString("nume", numeText.getText());
  500. rs.updateRow();
  501. } catch (NumberFormatException e1) {
  502. e1.printStackTrace();
  503. } catch (SQLException e1) {
  504. e1.printStackTrace();
  505. }
  506. idText.setEditable(false);
  507. numeText.setEditable(false);
  508. varstaText.setEditable(false);
  509.  
  510. bPrev.setEnabled(true);
  511. bFirst.setEnabled(true);
  512. bNext.setEnabled(true);
  513. bLast.setEnabled(true);
  514. bAdd.setEnabled(true);
  515. bDel.setEnabled(true);
  516. bSearch.setEnabled(true);
  517. bSave.setEnabled(false);
  518. bCancel.setEnabled(false);
  519. }
  520. else{
  521. try {
  522. rs.moveToInsertRow();
  523. rs.updateInt("id", Integer.parseInt(idText.getText()));
  524. rs.updateInt("varsta", Integer.parseInt(varstaText.getText()));
  525. rs.updateString("nume", numeText.getText());
  526. rs.insertRow();
  527. rs.last();
  528.  
  529. idText.setEditable(false);
  530. numeText.setEditable(false);
  531. varstaText.setEditable(false);
  532.  
  533. bPrev.setEnabled(true);
  534. bFirst.setEnabled(true);
  535. bNext.setEnabled(true);
  536. bLast.setEnabled(true);
  537. bAdd.setEnabled(true);
  538. bDel.setEnabled(true);
  539. bSearch.setEnabled(true);
  540. bSave.setEnabled(false);
  541. bCancel.setEnabled(false);
  542. bEdit.setEnabled(true);
  543. updateSelectedRow();
  544. } catch (SQLException e1) {
  545. e1.printStackTrace();
  546. }
  547. }
  548. }
  549. else if(e.getSource() == bDel){
  550. int n = JOptionPane.showConfirmDialog(new JFrame(), "Are you sure you want to delete this row?",
  551. "Delete confirmation", JOptionPane.YES_NO_OPTION);
  552. if(n == JOptionPane.YES_OPTION){
  553. try {
  554. int current = rs.getRow();
  555. rs.last();
  556. int last = rs.getRow();
  557. rs.deleteRow();
  558. if(current < last){
  559. rs.absolute(current+1);
  560. }
  561. else{
  562. rs.absolute(current-1);
  563. }
  564. updateSelectedRow();
  565. } catch (SQLException e1) {
  566. e1.printStackTrace();
  567. }
  568.  
  569. }
  570. else if((n == JOptionPane.NO_OPTION) || (n == JOptionPane.CLOSED_OPTION)){
  571.  
  572. }
  573. }
  574. else if(e.getSource() == bSearch){
  575. String s = (String)JOptionPane.showInputDialog(new JFrame(), "Write the name you're looking for:", "Search parameter",
  576. JOptionPane.PLAIN_MESSAGE);
  577. if((s != null) && (s.length() > 0)){
  578. try {
  579. rs.first();
  580. do{
  581. if(rs.getString("nume").equals(s)){
  582. updateSelectedRow();
  583. break;
  584. }
  585. }while(rs.next());
  586.  
  587. } catch (SQLException e1) {
  588. e1.printStackTrace();
  589. }
  590. }
  591. else{
  592.  
  593. }
  594. }
  595. }
  596. public void updateSelectedRow() throws SQLException{
  597. int current = rs.getRow();
  598. rs.last();
  599. int count = rs.getRow();
  600. barText.setText(current+"/"+count);
  601. rs.absolute(current);
  602. idText.setText(String.valueOf(rs.getInt(1)));
  603. numeText.setText(rs.getString(2));
  604. varstaText.setText(String.valueOf(rs.getInt(3)));
  605. if(current == 1){
  606. bPrev.setEnabled(false);
  607. bFirst.setEnabled(false);
  608. bNext.setEnabled(true);
  609. bLast.setEnabled(true);
  610. }
  611. else if(current == count){
  612. bPrev.setEnabled(true);
  613. bFirst.setEnabled(true);
  614. bNext.setEnabled(false);
  615. bLast.setEnabled(false);
  616. }
  617. else{
  618. bPrev.setEnabled(true);
  619. bFirst.setEnabled(true);
  620. bNext.setEnabled(true);
  621. bLast.setEnabled(true);
  622. }
  623. }
  624. }
  625.  
  626. public class MainApp {
  627.  
  628. public static void main(String[] args) throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {
  629. MyFrame frm = new MyFrame();
  630. frm.setVisible(true);
  631. MyFrame.rs = MyFrame.sql.executeQuery("select * from pers");
  632. MyFrame.rs.last();
  633. int count = MyFrame.rs.getRow();
  634. MyFrame.barText.setText("1/"+count);
  635. MyFrame.rs.first();
  636. MyFrame.idText.setText(String.valueOf(MyFrame.rs.getInt("id")));
  637. MyFrame.numeText.setText(MyFrame.rs.getString("nume"));
  638. MyFrame.varstaText.setText(String.valueOf(MyFrame.rs.getInt("varsta")));
  639. //con.close();
  640. //sql.close();
  641. //rs.close();
  642. }
  643.  
  644. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement