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

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

11
ไม่พบเส้นทางการรับรองที่ถูกต้องไปยังเป้าหมายที่ร้องขอ - ข้อผิดพลาดแม้หลังจากที่ใบรับรองนำเข้าแล้ว
ฉันมีไคลเอนต์ Java พยายามเข้าถึงเซิร์ฟเวอร์ด้วยใบรับรองแบบลงนามด้วยตนเอง เมื่อฉันพยายามโพสต์ไปยังเซิร์ฟเวอร์ฉันได้รับข้อผิดพลาดต่อไปนี้: ไม่สามารถค้นหาเส้นทางการรับรองที่ถูกต้องไปยังเป้าหมายที่ร้องขอ หลังจากทำวิจัยเกี่ยวกับปัญหาแล้วฉันก็ทำสิ่งต่อไปนี้ บันทึกชื่อโดเมนเซิร์ฟเวอร์ของฉันเป็นroot.cerไฟล์ ใน JRE ของเซิร์ฟเวอร์ Glassfish ของฉันฉันรันสิ่งนี้: keytool -import -alias example -keystore cacerts -file root.cer ในการตรวจสอบใบรับรองถูกเพิ่มไปยัง cacert ของฉันสำเร็จฉันทำสิ่งนี้: keytool -list -v -keystore cacerts ฉันเห็นว่าใบรับรองนั้นมีอยู่ จากนั้นฉันเริ่ม Glassfish ใหม่และยกเลิก 'โพสต์' ฉันยังคงได้รับข้อผิดพลาดของงา ฉันมีความรู้สึกเช่นนี้เพราะ Glassfish ของฉันไม่ได้อ่านไฟล์ cacert ที่ฉันได้แก้ไข แต่อาจมีบางอัน คุณเคยมีปัญหานี้บ้างหรือไม่และสามารถผลักฉันไปในทิศทางที่ถูกต้องได้หรือไม่
205 java  ssl  keytool 

5
วิธีการเปลี่ยนตัวแยกทศนิยมของ DecimalFormat จากเครื่องหมายจุลภาคเป็นจุด / จุด?
ฉันมีวิธีบ้าเล็กน้อยที่แปลงค่า BigDecimal เป็นสตริงที่ดีและอ่านได้ private String formatBigDecimal(BigDecimal bd){ DecimalFormat df = new DecimalFormat(); df.setMinimumFractionDigits(3); df.setMaximumFractionDigits(3); df.setMinimumIntegerDigits(1); df.setMaximumIntegerDigits(3); df.setGroupingSize(20); return df.format(bd); } อย่างไรก็ตามมันยังสร้างตัวคั่นการจัดกลุ่มที่เรียก","ว่าค่านิยมทั้งหมดของฉันออกมาเช่นนี้ xxx,xxx ฉันต้องการให้ตัวคั่นเป็นจุดหรือจุดและไม่ใช่เครื่องหมายจุลภาค ใครบ้างมีเบาะแสของวิธีการบรรลุความสำเร็จเล็ก ๆ น้อย ๆ นี้? ฉันได้อ่านนี้และโดยเฉพาะอย่างยิ่งนี้ไปสู่ความตายในขณะนี้ แต่ฉันไม่สามารถหาวิธีที่จะได้รับการกระทำเช่นนี้ ฉันกำลังเข้าใกล้สิ่งนี้ในทางที่ผิดหรือไม่? มีวิธีที่สง่างามกว่านี้อีกไหมในการทำเช่นนี้? อาจเป็นวิธีแก้ปัญหาที่ใช้แทนหมายเลขท้องถิ่นที่แตกต่างกันเนื่องจากเครื่องหมายจุลภาคจะสมบูรณ์แบบตามมาตรฐานยุโรป

16
วิธีใช้ JUnit เพื่อทดสอบกระบวนการแบบอะซิงโครนัส
คุณจะทดสอบวิธีที่ใช้กระบวนการแบบอะซิงโครนัสกับ JUnit ได้อย่างไร ฉันไม่ทราบวิธีที่จะทำให้การทดสอบของฉันรอให้กระบวนการสิ้นสุด (ไม่ใช่การทดสอบหน่วยอย่างแน่นอนมันเป็นเหมือนการทดสอบการรวมเข้าด้วยกันเนื่องจากมันเกี่ยวข้องกับหลายคลาสและไม่ใช่แค่หนึ่งคลาส)

8
วิธีแมปคีย์ผสมกับ JPA และไฮเบอร์เนต
ในรหัสนี้วิธีสร้างคลาส Java สำหรับคอมโพสิตคีย์ (วิธีผสมคีย์ในไฮเบอร์เนต): create table Time ( levelStation int(15) not null, src varchar(100) not null, dst varchar(100) not null, distance int(15) not null, price int(15) not null, confPathID int(15) not null, constraint ConfPath_fk foreign key(confPathID) references ConfPath(confPathID), primary key (levelStation, confPathID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

4
การให้ความชุ่มชื้นกับวัตถุหมายความว่าอะไร
เมื่อมีคนพูดถึงวัตถุที่ให้ความชุ่มชื่นนั่นหมายความว่าอย่างไร ฉันเห็นโครงการ Java ชื่อ Hydrate บนเว็บที่แปลงข้อมูลระหว่างการนำเสนอที่แตกต่างกัน (RDMS เป็น OOPS เป็น XML) นี่เป็นความหมายทั่วไปของการให้ความชุ่มชื้นกับวัตถุหรือไม่ การแปลงข้อมูลระหว่างการรับรอง? มันอาจหมายถึงการสร้างลำดับชั้นของวัตถุใหม่จากการเป็นตัวแทนที่เก็บไว้?
204 java  oop 

12
การเปลี่ยนชื่อของการทดสอบแบบกำหนดพารามิเตอร์
มีวิธีตั้งชื่อกรณีทดสอบแบบกำหนดเองของฉันเองเมื่อใช้การทดสอบแบบกำหนดพารามิเตอร์ใน JUnit4 หรือไม่ ฉันต้องการเปลี่ยนค่าเริ่มต้น[Test class].runTest[n]- เป็นสิ่งที่มีความหมาย

12
วิธีการกำหนด List bean ใน Spring
ฉันกำลังใช้สปริงเพื่อกำหนดลำดับขั้นในใบสมัครของฉัน มันถูกกำหนดค่าว่าคลาสที่จำเป็น (เรียกว่าที่นี่Configurator) ถูกฉีดด้วยสเตจ ตอนนี้ฉันต้องรายการของขั้นตอนในชั้นเรียนอีกชื่อ ไม่ได้นำเสนอการเข้าถึงของเขารายการของขั้นตอนLoginBeanConfigurator ฉันไม่สามารถเปลี่ยนชั้นเรียนConfiguratorได้ ความคิดของฉัน: กำหนดถั่วใหม่ที่เรียกว่าขั้นตอนและฉีดมันและConfigurator LoginBeanปัญหาของฉันกับแนวคิดนี้คือฉันไม่รู้วิธีเปลี่ยนคุณสมบัตินี้: <property ...> <list> <bean ... >...</bean> <bean ... >...</bean> <bean ... >...</bean> </list> </property> เป็นถั่ว สิ่งนี้ไม่ได้ผล: <bean id="stages" class="java.util.ArrayList"> ใครช่วยฉันได้ไหม
203 java  spring 

13
อะไรคือความแตกต่างระหว่าง Generics ใน C # และ Java ... และ Templates ใน C ++ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ปิดให้บริการใน6 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันใช้จาวาและ generics เป็นส่วนใหญ่ค่อนข้างใหม่ ฉันอ่านต่อไปว่า Java ทำการตัดสินใจผิดหรือว่า. NET มีการใช้งานที่ดีขึ้น ฯลฯ ดังนั้นอะไรคือความแตกต่างที่สำคัญระหว่าง C ++, C #, Java ใน generics? ข้อดี / ข้อเสียของแต่ละคน?
203 c#  java  c++  generics  templates 

25
คุณใช้การจับซ้ำได้อย่างไร
ลองจับมีไว้เพื่อช่วยในการจัดการข้อยกเว้น หมายความว่าจะช่วยให้ระบบของเรามีความแข็งแกร่งยิ่งขึ้น: พยายามกู้คืนจากเหตุการณ์ที่ไม่คาดคิด เราสงสัยว่ามีบางอย่างอาจเกิดขึ้นเมื่อดำเนินการและคำสั่ง (ส่งข้อความ) ดังนั้นจึงถูกปิดล้อมในการลอง หากสิ่งนั้นเกือบเกิดขึ้นโดยไม่คาดคิดเราสามารถทำบางสิ่งได้: เราเขียนสิ่งที่จับได้ ฉันไม่คิดว่าเราถูกเรียกให้เข้าสู่ระบบยกเว้น สิ่งที่ฉันบล็อก catch มีขึ้นเพื่อให้โอกาสเราในการกู้คืนจากข้อผิดพลาด ตอนนี้สมมติว่าเรากู้คืนจากข้อผิดพลาดเพราะเราสามารถแก้ไขสิ่งที่ผิด อาจเป็นเรื่องดีสุด ๆ ที่จะลองทำใหม่: try{ some_instruction(); } catch (NearlyUnexpectedException e){ fix_the_problem(); retry; } สิ่งนี้จะตกอยู่ในวงนิรันดร์อย่างรวดเร็ว แต่สมมุติว่า fix_the_problem คืนค่าเป็นจริงจากนั้นเราลองอีกครั้ง เนื่องจากไม่มีสิ่งเช่นนี้ใน Java คุณจะแก้ไขปัญหานี้อย่างไร สิ่งที่จะเป็นรหัสการออกแบบที่ดีที่สุดของคุณสำหรับการแก้ปัญหานี้? นี่เป็นคำถามเชิงปรัชญาเนื่องจากฉันรู้แล้วว่าสิ่งที่ฉันขอไม่ได้รับการสนับสนุนโดยตรงจาก Java


20
วิธีหลีกเลี่ยง java.util.ConcurrentModificationException เมื่อวนซ้ำผ่านและลบองค์ประกอบออกจาก ArrayList
ฉันมี ArrayList ที่ฉันต้องการวนซ้ำ ในขณะที่วนซ้ำฉันต้องลบองค์ประกอบในเวลาเดียวกัน java.util.ConcurrentModificationExceptionเห็นได้ชัดว่านี้พ่น แนวปฏิบัติที่ดีที่สุดในการจัดการปัญหานี้คืออะไร ฉันควรโคลนรายการก่อนหรือไม่ ฉันลบองค์ประกอบที่ไม่ได้อยู่ในลูป แต่เป็นอีกส่วนหนึ่งของรหัส รหัสของฉันมีลักษณะเช่นนี้: public class Test() { private ArrayList<A> abc = new ArrayList<A>(); public void doStuff() { for (A a : abc) a.doSomething(); } public void removeA(A a) { abc.remove(a); } } a.doSomethingอาจเรียกTest.removeA();
203 java  arraylist  foreach 

12
วิธีใช้ null ในสวิตช์
Integer i = ... switch (i){ case null: doSomething0(); break; } ในรหัสข้างต้นฉันไม่สามารถใช้ null ในงบกรณีสวิตช์ ฉันจะทำสิ่งนี้ต่างออกไปได้อย่างไร ฉันไม่สามารถใช้defaultเพราะแล้วฉันต้องการทำอย่างอื่น

7
ความแตกต่างระหว่าง java.util.Random และ java.security.SecureRandom
ทีมของฉันได้มอบรหัสฝั่งเซิร์ฟเวอร์ (ใน Java) ที่สร้างโทเค็นแบบสุ่มและฉันมีคำถามเกี่ยวกับสิ่งเดียวกัน - วัตถุประสงค์ของโทเค็นเหล่านี้มีความอ่อนไหวพอสมควร - ใช้สำหรับรหัสเซสชันลิงก์การตั้งรหัสผ่านเป็นต้นดังนั้นพวกเขาจึงจำเป็นต้องมีการสุ่มเข้ารหัสเพื่อหลีกเลี่ยงใครบางคนที่เดาพวกเขา โทเค็นคือ "ยาว" ดังนั้นจึงมีความยาว 64 บิต รหัสปัจจุบันใช้java.util.Randomคลาสเพื่อสร้างโทเค็นเหล่านี้ เอกสารสำหรับการjava.util.Randomระบุอย่างชัดเจนต่อไปนี้: อินสแตนซ์ของ java.util.Random ไม่ปลอดภัยแบบเข้ารหัส พิจารณาใช้ SecureRandom แทนเพื่อให้เครื่องสร้างตัวเลขสุ่มหลอกเข้ารหัสลับปลอดภัยสำหรับใช้โดยแอปพลิเคชันที่มีความปลอดภัย อย่างไรก็ตามวิธีการที่ใช้รหัสในปัจจุบันjava.util.Randomคือ - มันทำให้คลาสเป็นอินสแตนซ์java.security.SecureRandomแล้วใช้SecureRandom.nextLong()วิธีการรับเมล็ดที่ใช้สำหรับอินสแตนซ์java.util.Randomชั้น จากนั้นจะใช้java.util.Random.nextLong()วิธีการสร้างโทเค็น ดังนั้นคำถามของฉันตอนนี้ - มันยังไม่ปลอดภัยหรือไม่เมื่อjava.util.Randomใช้เมล็ดjava.security.SecureRandom? ฉันจำเป็นต้องแก้ไขรหัสเพื่อใช้เป็นjava.security.SecureRandomเอกสิทธิ์ในการสร้างโทเค็นหรือไม่ ในปัจจุบันเมล็ดรหัสนั้นเป็นRandomครั้งเดียวเมื่อเริ่มต้น

8
java.util.Random เป็นแบบสุ่มจริงๆเหรอ? ฉันจะสร้าง 52 ได้อย่างไร! (แฟกทอเรียล) ลำดับที่เป็นไปได้?
ฉันใช้Random (java.util.Random)เพื่อสับไพ่ 52 ใบ มี 52! (8.0658175e + 67) ความเป็นไปได้ แต่ฉันได้พบว่าเมล็ดพันธุ์แห่งjava.util.Randomนี้คือ a longซึ่งเล็กกว่ามากที่ 2 ^ 64 (1.8446744e + 19) จากที่นี่ฉันสงสัยว่าjava.util.Random มันสุ่มจริงๆหรือเปล่า จริง ๆ แล้วมันสามารถสร้างทั้ง 52! ความเป็นไปได้? ถ้าไม่ฉันจะสร้างซีเควนซ์สุ่มที่ดีกว่าที่สามารถผลิตทั้ง 52 อย่างน่าเชื่อถือ ความเป็นไปได้?


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