Das Buchinformationsmanagement ähnelt dem Leserinformationsmanagement. Es enthält zwei Teile: Buchabschluss und Buchfrage und -änderung. Bei der Zusatzinformationen sind die korrekte Eingabe von acht Informationen des Buches erforderlich, und die ISBN -Nummer ist eindeutig. Während des Implementierungsprozesses sollte ISBN als Hauptschlüssel verwendet werden. Sehen wir uns den Implementierungsprozess an:
Bücher in der Datenbank:
Der Prozess des Hinzufügens von Büchern:
Datenbankinhalt hinzugefügt:
Abfrage und Änderung von Büchern: Der Abfragevorgang kann nach verschiedenen Bedingungen wie ISBN, Autor, Herausgebern, Buchname usw. abgefragt werden, und alle Bücher werden standardmäßig in der Liste angezeigt. Nach Eingabe der Abfragebedingungen werden die Abfragergebnisse in der Tabelle angezeigt.
Dieses Modul verwendet das Tag -Feld, mit dem die erforderlichen Informationen problemlos abfragen können. Wenn der Änderungsprozess in die ISBN -Nummer eingeht und die Eingabetaste drücken, um alle folgenden Buchinformationen anzuzeigen, werden alle Inhalte nach Änderungen der Buchinformationen aktualisiert.
Buchanfrage:
Buchinformationen ändern:
Fügen Sie den Quellcode des Buches wie folgt hinzu: addbook.java
Paket pdsu.bbm.view; Import Java.awt.BorderLayout; import Java.awt.flowlayout; import Java.awt.font; import Java.awt.image; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; Java.text.ParseException importieren; Java.Text.SimpledateFormat importieren; import Java.util.date; Import Java.util.iterator; importieren java.util.list; import Javax.swing.buttongroup; import Javax.swing.imageicon; import Javax.swing.jbutton; import Javax.swing.jcombobox; importieren javax.swing.jframe; import Javax.swing.jlabel; import Javax.swing.joptionpane; import Javax.swing.jpanel; importieren javax.swing.jtextfield; Import PDSU.BBM.DAO.BOOKDAO; Import PDSU.BBM.DAO.BOOKYPEDAO; pdsu.bbm.model.book; Import PDSU.BBM.MODEL.BOOKTYPE; Public Class Addbook erweitert JFrame implementiert ActionListener {private jpanel contentPane; Private JLabel Label_1; Privat JLabel LBLL; Private JLabel Label_2; Private JLabel Label_3; Private JLabel Label_4; Private JLabel Label_5; Jpanel Centerppanel; Jbutton Button1, Button2, Button3; private jcombobox combobox_1; Bildsymbol = new ImageCon ("Bild/icon.png"). GetImage (); private jtextfield isbnfiled; Private Jtextfield Publishfield; Private Jtextfield Publishdatefield; private JTextfield PublishTime; Private JTextfield UnitPriceField; Private Jtextfield BookNamefield; private jtextfield authored; public static void main (String [] args) {new addbook (); } public addbook () {settitle ("Buchinformationen hinzufügen"); setSize (555, 333); seticonimage (icon); setLocationRelativeto (null); settitle ("Buchinformationen hinzufügen"); setSize (555, 334); setLocationRelativeto (null); setvisible (wahr); CenterPlanel = new jpanel (); Centerppanel.SetLayout (NULL); JLabel Label1 = new JLabel ("ISBN:"); Label1.Setfont (neue Schriftart ("宋体", font.plain, 20)); Label1.Setbounds (71, 26, 95, 42); Centerppanel.Add (Label1); IsbnFiled = new JTextField (); IsbnFiled.setBounds (120, 30, 110, 30); Centerppanel.Add (ISBNFiled); IsbnFiled.setColumns (10); JLabel Label = new JLabel ("Kategorie:"); Label.SetFont (neue Schriftart ("Zongyi", font.plain, 20)); Label.Setbounds (306, 30, 116, 35); Centerppanel.Add (Etikett); label_1 = new JLabel ("Buchtitel:"); label_1.setfont (neue Schriftart ("宋体", font.plain, 20)); Label_1.Setbounds (50, 75, 154, 50); Centerppanel.Add (Label_1); lbll = new JLabel ("Autor:"); lbll.setfont (neue Schriftart ("宋体", font.plain, 20)); lbll.setBounds (306, 75, 137, 50); Centerppanel.Add (LBLL); label_2 = new JLabel ("Verlag:"); label_2.setfont (neue Schriftart ("宋体", font.plain, 20)); Label_2.SetBounds (50, 130, 154, 50); Centerppanel.Add (Label_2); label_3 = new JLabel ("宋体:"); label_3.setfont (neue Schriftart ("宋体", font.plain, 20)); Label_3.SetBounds (285, 135, 137, 50); CenterPlanel.Add (Label_3); Publishfield = new JTextField (); Publishfield.setColumns (10); Publishfield.SetBounds (120, 143, 110, 30); Centerppanel.add (Publishfield); Publishdatefield = new JTextfield (); Publishdatefield.setColumns (10); Publishdatefield.SetBounds (380, 143, 120, 30); Centerppanel.add (Publishdatefield); label_4 = new JLabel ("Anzahl des Drucks:"); label_4.setfont (neue Schriftart ("宋体", font.plain, 20)); Label_4.SetBounds (28, 190, 154, 50); CenterPlanel.Add (Label_4); PublishTime = new JTextField (); PublishTime.setColumns (10); PublishTime.SetBounds (120, 203, 110, 30); Centerppanel.Add (PublishTime); label_5 = new JLabel ("宋体:"); label_5.setfont (neue Schriftart ("宋体", font.plain, 20)); Label_5.SetBounds (305, 194, 84, 42); CenterPlanel.Add (Label_5); UnitPriceField = new JTextField (); UnitPricefield.SetColumns (10); UnitPriceField.SetBounds (380, 203, 120, 30); Centerppanel.Add (UnitPricefield); GetContentPane (). Add (Centerppanel, BorderLayout.Center); bookNamefield = new JTextField (); bookNamefield.setColumns (10); BookNamefield.SetBounds (120, 86, 110, 30); Centerppanel.Add (BookNamefield); AuthorFiled = new JTextField (); AuthorFiled.setColumns (10); AuthorFiled.SetBounds (380, 86, 120, 30); Centerppanel.Add (Autorfiled); Liste <BookType> rs = bookTypedao.SelectbookType (); Iterator <BookType> iterator = rs.iterator (); String [] AllTyPename = new String [rs.size ()]; int i = 0; while (iterator.hasnext ()) {String typeName = iterator.next (). GettTypeName (); AllTePename [i] = typename; i ++; } combobox_1 = new JcomBobox (AllTypename); Combobox_1.SetBounds (380, 30, 120, 30); combobox_1.setfont (neue Schriftart ("安体", font.plain, 16)); CenterPlanel.Add (Combobox_1); Buttongroup gruppe = new buttongroup (); JPanel panel2 = new Jpanel (); panel2.setLayout (neuer FlowLayout ()); button1 = neuer jbutton ("add"); button1.setfont (neue Schriftart ("宋体", font.plain, 20)); button2 = neuer jbutton ("宋体", font.plain, 20)); Button3 = neuer Jbutton ("Reset"); button3.setFont (neue Schriftart ("宋体", font.plain, 20)); Panel2.Add (Taste1); Panel2.Add (Taste3); Panel2.Add (Taste2); button1.addactionListener (this); Button2.AddactionListener (this); Button3.AddactionListener (this); getContentPane (). Add (Panel2, BorderLayout.South); setvisible (wahr); } @SuppressWarnings ("unbenutzt") public void actionPerformed (actionEvent e) {if (e.getSource () == button1) {string isbn = isbnfiled.getText (). ToString (); String bookName = bookNamefield.getText (); String Author = AuthorFiled.GeteText (); String selectType = combobox_1.getSelectedItem (). ToString (); String publish = publishfield.getText (); String Publishdate = PublishdateField.GeteText (); String time = publishTime.getText (). Trim (); String Price = UnitPriceField.GeteText (). TRIM (); if (Isbn.equals("") || bookname.equals("") || author.equals("") || selectType.equals("") || publish.equals("") || publishdate.equals("") || time.equals("") || price.equals("")) { JOptionPane.showMessageDialog(this, "Please enter full information"); zurückkehren; } else {bookType bt = new BookType (); Buchbuch = neues Buch (); book.setisbn (ISBN); book.setbookname (bookName); book.setAuthor (Autor); Bt.SetTypename (selectType); int m = 0; Liste <BookType> list = bookTypedao .SelectidByTypeName (SelectType); Iterator <BookType> item = list.Iterator (); while (ite.hasnext ()) {m = item.next (). getId (); } book.setTypeid (m + ""); book.setPublish (veröffentlichen); try {book.setPublishTime (Integer.ParseInt (Zeit)); Book.Setunitprice (Integer.ParseInt (Preis)); } catch (numberFormatexception e1) {e1.printstacktrace (); } SimpledateFormat SDF = new SimpledateFormat ("yyyy-mm-dd"); Datum RegDate = null; try {Regdate = Sdf.Parse (PublishDate); } catch (parseException e1) {joptionpane.showMessagedialog (dies, "Bitte geben Sie das richtige Datum ein"); Publishdatefield.setText (""); } book.setPublishDate (RegDate); if (Regdate == null) return; if (bookdao.SelectbookByIsBn (isbn)! zurückkehren; } else if (bookdao.insertbook (book)! } else joptionpane.showMessagedialog (dies, "fehlgeschlagen"); }} if (e.getSource () == button3) {isbnfiled.setText (""); bookNamefield.setText (""); Authorfield.SetText (""); Publishfield.setText (""); Publishdatefield.setText (""); PublishTime.setText (""); UnitPriceField.setText (""); UnitPriceField.setText (""); } if (e.getSource () == button2) {dispose (); neuer MainWindow (); }}} Buchabfrage und Ändern von Quellcode: BookSelectandModify.java
Paket pdsu.bbm.view; Import Java.awt.BorderLayout; Import Java.awt.Dimension; import Java.awt.font; importieren java.awt.gridlayout; import Java.awt.image; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; Java.Text.SimpledateFormat importieren; Import Java.util.ArrayList; import Java.util.date; Import Java.util.iterator; importieren java.util.list; import Javax.swing.imageicon; import Javax.swing.jbutton; import Javax.swing.jcombobox; importieren javax.swing.jframe; import Javax.swing.jlabel; import Javax.swing.joptionpane; import Javax.swing.jpanel; import Javax.swing.jscrollpane; import Javax.swing.jtabbedpane; import Javax.swing.jtable; importieren javax.swing.jtextfield; import Javax.swing.swingConstants; import javax.swing.table.tablemodel; Import PDSU.BBM.DAO.BOOKDAO; Import PDSU.BBM.DAO.BOOKYPEDAO; pdsu.bbm.model.book; Import PDSU.BBM.MODEL.BOOKTYPE; public class bookSelectandModify erweitert JFrame implementiert actionListener {// Setzen Sie die Seriennummer private statische endgültige long serialversionuid = 1l; private jtabbedpane jtabbedpane; // Tag panel// selectJP query panel select_conditionJP drop-down list panel select_resultJP result button panel updateJP modification panel// updateJP modification panel, bookJP middle panel buttonJP2 button panel private JPanel selectJP, select_conditionJP, select_resultJP, buttonJP1, bookJP, updateJP, buttonJP2; // private JTextField SelectJtf, ISBNJTF, BookNameJtf, Authorjtf, PrintTimeJtf, Publishjtf, PublishDateJtf, UnitPricejtf; private jlabel isbnjl, bookNamejl, Authorjl, categoryjl, printTimejl, Publishjl, Publishdatejl, UnitPricejl; // Fokus! private jtable jtable; // table private jcombobox choch Jcb, bookTypejcb; Privat Jscrollpane JScrollpane; Private Jbutton SelectJB, Exitjb, UpdateJB, ResetJB; // Abfrage -Schaltfläche, Beenden Sie Schaltfläche, ändern Sie Schaltfläche, schließen Sie die Schaltfläche Private Tablemodel getSelect; private String [] title = {"isbn", "Buchsequenz", "Buchname", "Autor", "Publisher", "Datum der Veröffentlichung", "Anzahl der Drucke", "Einheitspreis"}; Bildsymbol = new ImageCon ("Bild/icon.png"). GetImage (); public bookSelectandModify () {Super (); seticonimage (icon); Settitle ("Buchabfrage und Änderung"); Setbounds (100, 100, 555, 400); setLocationRelativeto (null); // jtabbedpane tabjtabbedpane = new Jtabbedpane (); add (jtabbedpane); selectjp = new jpanel (); selectjp.setLayout (new BorderLayout ()); jtabbedpane.add ("Buchinformationsabfrage", SelectJP); // Abfragebedingungsbedingungen select_conditionjp = new JPanel (); ChoiceJCB = new jcomBobox (); String-Array [] = {"isbn", "Buchname", "Buchsequenz", "Autor", "Publisher", "All"}; // auf ein einmangeliges Array für (int i = 0; i <array.Length; i ++) {choicejcb.additem (array [i]); } select_conditionjp.add (Auswahljcb); selectjtf = new JTextField (20); select_conditionjp.add (selectjtf); selectjp.add (select_conditionjp, borderLayout.north); // Query -Ergebnis -Panel select_resultjp = new JPanel (); Bookdao dao = new Bookdao (); Liste <Book> list = Dao.Selectbook (); jtable = new JTable (getSelect (Liste), Titel); //! Setzen Sie die Tabellengröße unverändert. //! Setzen Sie die Spaltenbreite jtable.getColumnModel (). GetColumn (4) .setPreferredwidth (175); jScrollpane = new JscrollPane (jTable); // Fügen Sie die Tabelle dem Bildlauffeld // den Rand des Bildlauffelds hinzu. select_resultjp.add (jScrollPane); selectjp.add (select_resultjp, borderLayout.Center); // Schaltfläche "Schaltfläche Abfragen" Schaltfläche JP1 = new JPanel (); selectjb = new Jbutton ("Abfrage"); selectjb.setfont (neue Schriftart ("Zongyi", font.plain, 20)); selectjb.addactionListener (this); ButtonJP1.Add (selectjb); exitjb = new Jbutton ("exit"); exitjb.setfont (neue Schriftart ("Zongyi", font.plain, 20)); exitjb.addactionListener (this); buttonjp1.add (exitjb); selectjp.add (buttonjp1, borderLayout.South); // Informationsänderung Seite updatejp = new JPanel (); updatejp.setLayout (new BorderLayout ()); jtabbedpane.addtab ("Buchinformationsänderung", UpdateJP); bookjp = new Jpanel (); Final GridLayout GridLayout = New GridLayout (8, 2); // den Abstand zwischen Grenzen gridlayout.setVgap (8) festlegen; gridlayout.sethgap (8); bookjp.setLayout (gridLayout); Isbnjl = new JLabel ("isbn:"); Isbnjl.setfont (neue Schriftart ("宋体", font.plain, 20)); Isbnjl.sethorizontalalignment (SwingConstants.Center); bookjp.add (isbnjl); Isbnjtf = new JTextField (20); Isbnjtf.addactionListener (this); bookjp.add (isbnjtf); categoryJl = new JLabel ("Kategorie:"); categoryjl.setfont (neue Schriftart ("宋体", font.plain, 20)); categoryjl.sethorizontalalignment (SwingConstants.Center); bookjp.add (categoryJl); // Dropdown-Liste Liste <BookType> list1 = bookTyPedao.SelectbookType (); Iterator <BookType> iT = list1.Iderator (); String ty [] = new String [list1.size ()]; int i = 0; bookTypejcb = new jcomBobox (); while (it.hasnext ()) {ty [i] = it.next (). GettTypeName (); bookTypejcb.additem (ty [i]); i ++; } bookjp.add (bookTypejcb); bookNamejl = new JLabel ("Buchtitel:"); bookNameJl.setfont (neue Schriftart ("宋体", font.plain, 20)); bookNamejl.sethorizontalalignment (SwingConstants.Center); bookjp.add (bookNamejl); bookNameJtf = new JTextField (); bookNameJtf.setColumns (20); bookjp.add (bookNameJtf); AutorJl = new Jlabel ("Autor:"); AutorJl.setFont (neue Schriftart ("宋体", font.plain, 20)); AutorJl.Sethorizontalalignment (SwingConstants.Center); bookjp.add (AuthorJL); AutorJtf = new JTextField (); Authorjtf.setColumns (20); bookjp.add (Authorjtf); Publishjl = new JLabel ("Publisher:"); Publishjl.setfont (neue Schriftart ("宋体", font.plain, 20)); Publishjl.Sethorizontalalignment (SwingConstants.Center); bookjp.add (Publishjl); Publishjtf = new JTextField (); bookjp.add (Publishjtf); publishdatejl = new JLabel ("veröffentlichtes Datum:"); publishDatejl.setfont (neue Schriftart ("宋体", font.plain, 20)); publishdatejl.sethorizontalalignment (SwingConstants.Center); bookjp.add (Publishdatejl); publishdatejtf = new JTextField (); publishdatejtf.sethorizontalalignment (SwingConstants.Left); bookjp.add (publishdatejtf); printTimeJl = new JLabel ("Anzahl des Drucks:"); printTimeJl.setfont (neue Schriftart ("宋体", font.plain, 20)); printTimejl.sethorizontalalignment (SwingConstants.Center); bookjp.add (printTimeJl); printTimeJtf = new JTextField (); bookjp.add (printTimeJtf); UnitPriceJl = new JLabel ("Einheitspreis:"); UNITPRICEJL.SETFONT (neue Schriftart ("宋体", font.plain, 20)); UnitPriceJl.Sethorizontalalignment (SwingConstants.Center); bookjp.add (UnitPricejl); UNITPRICEJTF = new JTextField (); bookjp.add (UnitPriceJtf); // Schaltfläche // Schaltfläche "Panel Design Button JP2 = New JPanel (); updatejb = new Jbutton ("modify"); updatejb.setfont (neue Schriftart ("Songyi", font.plain, 20)); updateJB.AddactionListener (this); resetjb = new Jbutton ("Close"); resetjb.setfont (neue Schriftart ("Zongyi", font.plain, 20)); resetjb.addactionListener (this); ButtonJP2.Add (UpdateJB); ButtonJP2.Add (ResetJB); updatejp.add (bookJP, borderLayout.Center); updatejp.add (buttonjp2, borderLayout.South); setvisible (wahr); setDefaultCloseOperation (jframe.exit_on_close); } // Die Abfrage-Tabelle zum Panel Private Object [] [] GetSelect (Liste <Book> Liste) {// Todo automatisch generierter Methode Stub-Objekt [] [] Objekte = neues Objekt [list.size ()] [title.Length] hinzufügen; für (int i = 0; i <list.size (); i ++) {book book = list.get (i); Objekte [i] [0] = book.getIsBn (); Objekte [1] = book.gettTypEID (); // Buchsequenzobjekte [i] [2] = book.getBookName (); // Buchname Objekte [i] [3] = book.getAuthor (); // Buchautor -Objekte [i] [4] = book.getPublish () // Publisher -Objekte [i] [5] = 5] = 5] = 5] = 5] = 5] = 5] = 5] = book. Objekte [i] [6] = book } public void actionPerformed (actionEvent e) {// Todo automatisch generierte Methode Stub if (e.getSource () == isbnjtf) {string isbn = isbnjtf.GeteText (); String typeName = null; String id = bookDao.SelectbookByIsBn (ISBN) .GetTypEID (); typeName = bookTypedao.SelectbyId (id); System.out.println (Typename); bookTypejcb.setSelectedItem (TypName); bookNameJtf.setText (bookDao.SelectbookByIsBn (ISBN) .GetBookName ()); AutorJtf.setText (bookDao.SelectbookByIsBn (ISBN) .GetAuthor ()); Publishjtf.setText (bookDao.SelectbookByIsBn (ISBN) .GetPublish ()); publishDatejtf.setText (bookDao.SelectbookByIsBn (ISBN) .getPublishDate ()); publishdatejtf.setText (bookDao.SelectbookByIsBn (ISBN) .getPublishDate ()+""); printTimeJtf.setText (bookDao.SelectbookByIsBn (ISBN) .GetPublishTime ()+""); UnitPriceJtf.setText (bookDao.SelectbookByIsBn (ISBN) .getUnitPrice ()+""); } if (e.getSource () == SELECTJB) {// finde int r = choicejcb.getSelectedIndex (); if (r == 0) {String name = selectjtf.GeteText (). trim (); // an lineare Tabellentypliste <Book> list = new ArrayList <Book> () gegossen; Book book = bookDao.SelectbookByIsBn (Name); if (book == null) {joptionpane.showMessagedialog (diese "diese Codierung existiert nicht!"); } else {list.add (Buch); Objekt [] [] data = getSelect (Liste); JTable = new JTable (Daten, Titel); jtable.getColumnmodel (). getColumn (4) .setPreferredwidth (175); jtable.setAutoresizemode (jtable.auto_resize_off); jScrollpane.setViewPortView (jTable); }} if (r == 1) {// Informationen basierend auf dem Buchname String name = selectjtf.getText (). toString (); Liste <Book> list = bookDao.SelectbookByName (Name); // Bestimmen Sie, ob die lineare Tabelle leer ist, wenn (list == null || list.size () == 0) {joptionpane.showMessagedialog (dieses Buch existiert nicht! "); } else {Object [] [] data = getSelect (Liste); JTable = new JTable (Daten, Titel); Tianjia (); }} if (r == 2) {// Informationen basierend auf Buchsequenz String name = selectjtf.getText (). toString (); Liste <Book> list = bookDao.SelectbookByType (Name); // Bestimmen Sie, ob die lineare Tabelle leer ist, wenn (list == null || list.size () == 0) {joptionpane.showMessagedialog (dieses Buch existiert nicht! "); } else {Object [] [] data = getSelect (Liste); JTable = new JTable (Daten, Titel); Tianjia (); }} if (r == 3) {// String nach dem Autor name = selectjtf.getText (). toString (); // Suchen Sie nach Liste <Book> list = bookDao.SelectbookByAuthor (Name); // Überprüfen Sie, ob die lineare Tabelle leer ist, wenn (list == null || list.size () == 0) {joptionpane.showMessagedialog (dieses Buch existiert nicht! "); } else {Object [] [] data = getSelect (Liste); JTable = new JTable (Daten, Titel); Tianjia (); }} if (r == 4) {// Suchen Sie nach String gemäß dem Publisher name = selectjtf.getText (). toString (); Liste <Book> list = bookDao.SelectbookBypublish (Name); if (list == null || list.size () == 0) {joptionpane.showMessagedialog (dieses Buch existiert nicht! "); } else {Object [] [] data = getSelect (Liste); JTable = new JTable (Daten, Titel); Tianjia (); }} if (r == 5) {list <Book> list = bookDao.Selectbook (); }} if (e.getSource () == UpdateJB) {string isbn = isbnjtf.getText (). trim (); String typeName = ((String) bookTypejcb.getSelectedItem ()). Trim (); String id = bookTyPedao.SelectByTypename (typeName); String bookName = bookNameJtf.GeteText (); String Author = AuthorJtf.GeteText (); String Publish = Publishjtf.Getetext (); String Publishdate = PublishDateJtf.GeteText (); SimpledateFormat SDF = new SimpledateFormat ("yyyy-mm-dd"); Datum RegDate = null; try {Regdate = Sdf.Parse (PublishDate); } catch (Ausnahme e2) {e2.printstacktrace (); JOPTIONPANE.SHOWMESSAGEDIALOG (Dies, "Bitte geben Sie das richtige Datumsformat ein!"); } if (Regdate == null) return; int PublishTime = integer.parseInt (printTimeJtf.GeteText ()); int UnitPrice = Integer.ParseInt (UnitPriceJtf.Getext ()); // Incapsulate Object Book book = new Book (); book.setisbn (ISBN); book.setTypeid (id); book.setbookname (bookName); book.setAuthor (Autor); book.setPublish (veröffentlichen); book.setPublishDate (RegDate); book.setPublishTime (PublishTime); Book.Setunitprice (UnitPrice); Book.SetTypename (Typename); int result = bookDao.update (Buch); Liste <Book> list2 = new ArrayList <Book> (); List2.Add (Buch); // system.out.println (list2); if (result == 1) {joptionpane.showMessagedialog (dies, "erfolgreich geändert!"); Bookdao bk = new BookDao (); Liste <Book> list = bk.selectbook (); jtable = new JTable (getSelect (Liste), Titel); Tianjia (); } else {joptionpane.showMessagedialog (dies, "modifiziert fehlgeschlagen!"); }} if (e.getSource () == resetjb) {dispose (); neuer MainWindow (); } if (e.getSource () == exitjb) {dispose (); neuer MainWindow (); }} private void tianjia () {jtable.getColumnModel (). getColumn (4) .setPreferredwidth (175); jtable.setAutoresizemode (jtable.auto_resize_off); jScrollpane.setViewPortView (jTable); } public static void main (String [] args) {new BookSelectAndModify (); }}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.