คำถามติดแท็ก java

Java เป็นภาษาการเขียนโปรแกรมระดับสูงที่เป็นที่นิยม ใช้แท็กนี้เมื่อคุณมีปัญหาในการใช้หรือทำความเข้าใจภาษานั้น ๆ แท็กนี้ไม่ค่อยได้ใช้คนเดียวและมักใช้ร่วมกับ [สปริง], [สปริงบูต], [jakarta-ee], [android], [javafx], [gradle] และ [maven]

11
ฉันจะใช้ Serializer แบบกำหนดเองกับ Jackson ได้อย่างไร
ฉันมีคลาส Java สองคลาสที่ฉันต้องการทำให้เป็นอนุกรมกับ JSON โดยใช้ Jackson: public class User { public final int id; public final String name; public User(int id, String name) { this.id = id; this.name = name; } } public class Item { public final int id; public final String itemNr; public final User createdBy; public Item(int …


3
จุดประสงค์พื้นฐานของคำอธิบายประกอบ @SerializedName ใน Android โดยใช้ Gson คืออะไร
วัตถุประสงค์พื้นฐานของ@SerializedNameคำอธิบายประกอบใน Android โดยใช้ Gson คืออะไร? ขอยกตัวอย่างที่แตกต่างกัน ฉันไม่เข้าใจจุดประสงค์หลักของการใช้งาน
111 java  android  json  gson 

7
วิธีตรวจสอบว่า int เป็นโมฆะหรือไม่
Personฉันมีวัตถุที่เรียกว่า มันมีคุณสมบัติหลายอย่างอยู่ในนั้น int id; String name; ฉันตั้งวัตถุบุคคลเช่นPerson p = new Person(1,"Joe");. 1. ) ฉันต้องการตรวจสอบว่าวัตถุนั้นไม่เป็นโมฆะหรือไม่ นิพจน์ต่อไปนี้ถูกต้องหรือไม่ if (person == null){ } Or if(person.equals(null)) 2. ) ฉันต้องการทราบว่า ID มี Int หรือไม่ if(person.getId()==null){} แต่ java ไม่อนุญาต ฉันจะตรวจสอบได้อย่างไร?
111 java  int 

3
การใช้ flush () อย่างถูกต้องใน JPA / Hibernate
ฉันกำลังรวบรวมข้อมูลเกี่ยวกับวิธีการ flush () แต่ยังไม่ชัดเจนว่าควรใช้เมื่อใดและจะใช้อย่างไรให้ถูกต้อง จากสิ่งที่ฉันอ่านความเข้าใจของฉันคือเนื้อหาของบริบทการคงอยู่จะถูกซิงโครไนซ์กับฐานข้อมูลนั่นคือการออกคำสั่งที่โดดเด่นหรือการรีเฟรชข้อมูลเอนทิตี ตอนนี้ฉันได้ติดตามสถานการณ์ที่มีสองเอนทิตีAและB(ในความสัมพันธ์แบบหนึ่งต่อหนึ่ง แต่ไม่ได้บังคับใช้หรือจำลองโดย JPA) Aมี PK recordIdคอมโพสิตซึ่งตั้งด้วยตนเองและยังมีสนาม นี้recordIdควรจะเขียนกิจการเป็นต่างประเทศที่สำคัญในการB AฉันกำลังบันทึกAและBในการทำธุรกรรมครั้งเดียว ปัญหาคือว่าค่าสร้างขึ้นโดยอัตโนมัติA.recordIdไม่ได้มีอยู่ในการทำธุรกรรมจนกว่าฉันโทรชัดเจนem.flush()หลังจากเรียกบนem.persist() A(ถ้าฉันมี IDENTITY PK ที่สร้างขึ้นโดยอัตโนมัติค่าจะได้รับการอัปเดตโดยตรงในเอนทิตี แต่นั่นไม่ใช่กรณีนี้) อาจem.flush()ก่อให้เกิดอันตรายใด ๆ เมื่อใช้ภายในธุรกรรมหรือไม่?

4
Lambda Expression และวิธีการทั่วไป
สมมติว่าฉันมีอินเทอร์เฟซทั่วไป: interface MyComparable<T extends Comparable<T>> { public int compare(T obj1, T obj2); } และวิธีการsort: public static <T extends Comparable<T>> void sort(List<T> list, MyComparable<T> comp) { // sort the list } ฉันสามารถเรียกใช้วิธีนี้และส่งนิพจน์แลมบ์ดาเป็นอาร์กิวเมนต์: List<String> list = Arrays.asList("a", "b", "c"); sort(list, (a, b) -> a.compareTo(b)); ที่จะทำงานได้ดี แต่ตอนนี้ถ้าฉันทำให้อินเทอร์เฟซไม่ใช่แบบทั่วไปและวิธีการทั่วไป: interface MyComparable { public <T extends …
111 java  generics  lambda  java-8 

1
ที่เก็บข้อมูล Spring ถูกนำไปใช้จริงอย่างไร?
ฉันทำงานกับที่เก็บ Spring Data JPA ในโครงการของฉันมาระยะหนึ่งแล้วและฉันรู้ประเด็นด้านล่าง: ในอินเทอร์เฟซที่เก็บเราสามารถเพิ่มเมธอดเช่นfindByCustomerNameAndPhone()(สมมติว่าcustomerNameและphoneเป็นฟิลด์ในอ็อบเจ็กต์โดเมน) จากนั้น Spring จัดเตรียมการนำไปใช้โดยการนำเมธอดอินเทอร์เฟซที่เก็บข้อมูลข้างต้นไปใช้ที่รันไทม์ (ระหว่างการรันแอปพลิเคชัน) ฉันสนใจว่ารหัสนี้ถูกเข้ารหัสอย่างไรและฉันได้ดูซอร์สโค้ดและ API ของ Spring JPA แล้ว แต่ฉันไม่พบคำตอบสำหรับคำถามด้านล่าง: คลาสการใช้งานที่เก็บถูกสร้างขึ้นที่รันไทม์ & วิธีการที่ถูกนำไปใช้และฉีดอย่างไร? Spring Data JPA ใช้ CGlib หรือไลบรารีการจัดการ bytecode เพื่อใช้วิธีการและฉีดแบบไดนามิกหรือไม่ คุณช่วยกรุณาตอบคำถามข้างต้นและให้เอกสารที่รองรับได้หรือไม่?

5
ฉันจะหลีกเลี่ยงเครื่องหมายจุลภาคและเครื่องหมายคำพูดในไฟล์ CSV เพื่อให้ทำงานใน Excel ได้อย่างไร
ฉันกำลังสร้างไฟล์ CSV (คั่นด้วยจุลภาคแทนที่จะเป็นแท็บ) ผู้ใช้ของฉันมักจะเปิดไฟล์ CSV ใน Excel โดยดับเบิลคลิกที่ไฟล์นั้น ข้อมูลของฉันอาจมีลูกน้ำและเครื่องหมายคำพูดดังนั้นฉันจึงหลีกเลี่ยงสิ่งเหล่านี้ดังนี้ Reference, Title, Description 1, "My little title", "My description, which may contain ""speech marks"" and commas." 2, "My other little title", "My other description, which may also contain ""speech marks"" and commas." เท่าที่ฉันรู้นั่นเป็นวิธีที่ต้องทำเสมอ นี่คือความเข้าใจผิดของฉัน: เมื่อฉันเปิดไฟล์นี้ใน Excel 2010 การหลบหนีของฉันไม่ได้รับการยอมรับ เครื่องหมายคำพูดปรากฏบนแผ่นงานและลูกน้ำจะทำให้เกิดคอลัมน์ใหม่

3
ทำไม writeObject ถึงโยน java.io.NotSerializableException และฉันจะแก้ไขได้อย่างไร
ฉันมีข้อยกเว้นนี้และฉันไม่เข้าใจว่าทำไมมันถึงถูกโยนทิ้งหรือฉันควรจัดการอย่างไร try { os.writeObject(element); } catch (IOException e) { e.printStackTrace(); } ที่ไหนelementเป็นTransformGroupที่มีอื่น ๆ บางTransformGroupsตัวอย่างของ Atom คลาส: public class Atom extends Group implements Serializable{ float pozX,pozY; Group group= new Group(); Color3f blue = new Color3f(new Color(255)); Color3f black = new Color3f(new Color(0)); Sphere AtSph=new Sphere(); public Atom(final float WEIGHT, final int …

6
JavaFX และ OpenJDK
ฉันกำลังพยายามตัดสินใจว่าจะเปลี่ยนไปใช้ JavaFX สำหรับอินเทอร์เฟซผู้ใช้ของแอปพลิเคชัน Java ได้หรือไม่ ผู้ใช้ส่วนใหญ่ของฉันจะใช้ Oracle JRE ซึ่งมี JavaFX รวมอยู่ในทุกวันนี้ อย่างไรก็ตามบางคนกำลังใช้ OpenJDK (บน linux) นี้ (เดิม) คำถามที่แสดงให้เห็นว่าข้อเสนอที่ OpenJDK แย่มากกับ JavaFX จากคำถามนี้ OpenJFX ทางเลือกจะรวมเข้ากับ OpenJDK ในเวอร์ชัน 9 เท่านั้นดังนั้นคำถามของฉันจึงเป็นสองเท่า: การรองรับ JavaFX ใน OpenJDK ยังแย่ขนาดนี้หรือเปล่า? ถ้าเป็นเช่นนั้นมีลีนุกซ์รุ่นใดบ้างที่เสนอแพ็กเกจ OpenJFX แล้วผู้ใช้จะไม่ต้องสร้างเอง ?
111 java  javafx-2  javafx  openjdk 



8
การเรียกเมธอด Spring @Transaction โดยเมธอดภายในคลาสเดียวกันไม่ได้ผลใช่หรือไม่
ฉันเพิ่งเริ่มทำธุรกรรม Spring มีบางอย่างที่ฉันพบว่าแปลกจริงๆฉันอาจเข้าใจเรื่องนี้อย่างถูกต้อง ฉันต้องการมีทรานแซคชันในระดับเมธอดและฉันมีเมธอดผู้โทรภายในคลาสเดียวกันและดูเหมือนว่ามันจะไม่เป็นแบบนั้นมันจะต้องถูกเรียกจากคลาสแยกต่างหาก ฉันไม่เข้าใจว่ามันเป็นไปได้อย่างไร หากใครมีความคิดในการแก้ไขปัญหานี้ฉันจะขอบคุณมาก ฉันต้องการใช้คลาสเดียวกันเพื่อเรียกใช้วิธีการทำธุรกรรมที่มีคำอธิบายประกอบ นี่คือรหัส: public class UserService { @Transactional public boolean addUser(String userName, String password) { try { // call DAO layer and adds to database. } catch (Throwable e) { TransactionAspectSupport.currentTransactionStatus() .setRollbackOnly(); } } public boolean addUsers(List<User> users) { for (User user : users) { …

9
บริบทความคงอยู่คืออะไร?
ฉันยังใหม่กับโลก Java และ JPA ฉันเรียน JPA และเจอศัพท์ใหม่ ๆ มากมายเช่น Entity, persistence ขณะที่อ่านผมไม่สามารถเข้าใจความหมายที่แน่นอนสำหรับความคงทนบริบท ใครช่วยอธิบายเป็นฆราวาสง่ายๆ จะทำอย่างไรกับข้อมูลที่ใช้ใน@Entity? ตัวอย่างเช่นฉันพบว่าคำจำกัดความนี้ซับซ้อนเกินกว่าที่จะเข้าใจ: บริบทการคงอยู่คือชุดของเอนทิตีที่สำหรับเอกลักษณ์ถาวรใด ๆ จะมีอินสแตนซ์เอนทิตีที่ไม่ซ้ำกัน
111 java  jpa  orm  persistence 

2
application.yml รองรับตัวแปรสภาพแวดล้อมหรือไม่
ฉันลองใช้ตัวแปร env ในการกำหนดค่า application.yml ของฉันเช่น: spring: main: show_banner: false --- spring: profiles: production server: address: $OPENSHIFT_DIY_IP port: $OPENSHIFT_DIY_PORT แต่ตัวแปร env ไม่ได้รับการแก้ไข ฉันต้องระบุสัญกรณ์อื่นหรือไม่? ใน Rails คุณสามารถใช้ <% = ENV ['FOOVAR']%> ได้ ทางเลือกเดียวคือเรียกใช้แอปเช่น: java -jar my.jar --server.address=$OPENSHIFT_DIY_IP --server.port=$OPENSHIFT_DIY_PORT
111 java  spring  yaml  spring-boot 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.