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

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

20
เราจะพิมพ์หมายเลขบรรทัดไปยัง log in java ได้อย่างไร
วิธีพิมพ์หมายเลขบรรทัดลงในบันทึก สมมติว่าเมื่อส่งข้อมูลบางอย่างไปยังบันทึกฉันต้องการพิมพ์หมายเลขบรรทัดโดยที่เอาต์พุตนั้นอยู่ในซอร์สโค้ดด้วย ดังที่เราเห็นในการติดตามสแต็กจะแสดงหมายเลขบรรทัดที่มีข้อยกเว้นเกิดขึ้น การติดตามสแต็กมีอยู่ในอ็อบเจ็กต์ข้อยกเว้น ทางเลือกอื่น ๆ เช่นการใส่หมายเลขบรรทัดด้วยตนเองเมื่อพิมพ์ลงในบันทึก มีวิธีอื่น ๆ ?
133 java  logging 

1
แนวคิด DTO และ DAO และ MVC [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา 1) เหตุใดเราจึงใช้DTOและDAOและเมื่อใดที่เราควรใช้ ฉันกำลังพัฒนาGUIซอฟต์แวร์ Java เพื่อทำเกี่ยวกับการแทรกแก้ไขลบข้อมูล แต่ผมกำลังดิ้นรนที่จะแยกแยะระหว่างDTO/DAOและModel, View, Controller(MVC) โครงสร้าง? พวกเขามีความคล้ายกันซึ่งจะดีกว่าที่จะใช้เมื่อมีปฏิสัมพันธ์กับฐานข้อมูลผ่าน GUIJava 2) สิ่งหนึ่งที่ฉันอยากรู้มากคือการมีแบบฝึกหัดที่ดีviewหรือไม่Controllerในชั้นเรียนเดียว หากเราคิดถึงNetbeansคุณสามารถสร้างGUIFrame Class และเพิ่มส่วนประกอบต่างๆเช่นJButtonลงในเฟรมได้โดยการดับเบิลคลิกที่ปุ่มจะนำคุณไปยังactionListenermethod (Controller) ซึ่งดูเหมือนว่าจะอยู่ในเฟรมข้อมูลที่จะแสดงต่อผู้ใช้ (View) . พวกเขาอยู่ในคลาสเดียวกัน นั่นขัดกับแนวคิดนี้อย่างสิ้นเชิงหรือไม่? นี่คือสิ่งที่ฉันกำลังพูดถึง การปฏิบัติที่ไม่ดีในการมีมุมมองและควบคุมในชั้นเรียนเดียว?

8
การกำหนดค่า log4j ผ่านอาร์กิวเมนต์ JVM?
ตัวแปรใดบ้างที่ฉันต้องตั้งค่า / ส่งผ่านเป็นอาร์กิวเมนต์ไปยัง JVM เพื่อให้ log4j ทำงานได้อย่างถูกต้อง และโดยถูกต้องฉันหมายถึงไม่บ่นและพิมพ์ไปที่คอนโซล ฉันสามารถดูตัวอย่างทั่วไปได้หรือไม่? หมายเหตุ: ฉันต้องการหลีกเลี่ยงการสร้างไฟล์ log4j.properties ในแอปพลิเคชัน
133 java  logging  log4j 

1
'SAM type' ใน Java คืออะไร?
เมื่ออ่านข้อมูลจำเพาะ Java-8 ฉันมักจะเห็นการอ้างอิงถึง 'ประเภท SAM' ฉันยังไม่สามารถหาคำอธิบายที่ชัดเจนได้ว่านี่คืออะไร ประเภท SAM คืออะไรและสถานการณ์ตัวอย่างของเวลาที่จะใช้คืออะไร?
133 java  lambda  java-8 


3
Regex ไม่ใช่ตัวดำเนินการ
ไม่มีตัวดำเนินการใน Regexes หรือไม่? เช่นเดียวกับในสตริงนั้น:"(2001) (asdf) (dasd1123_asd 21.01.2011 zqge)(dzqge) name (20019)" ฉันต้องการลบทั้งหมด\([0-9a-zA-z _\.\-:]*\)แต่ไม่ใช่สิ่งที่เป็นปี: (2001). ดังนั้นสิ่งที่ regex (2001) nameควรกลับต้อง: หมายเหตุ: สิ่งที่เหมือน\((?![\d]){4}[0-9a-zA-z _\.\-:]*\)ไม่ได้ผลสำหรับฉัน (แต่(20019)ก็ตรงกับ ... )
133 java  regex  string 


10
จะทำอย่างไรถ้าอย่างอื่นใน Thymeleaf?
เป็นวิธีที่ดีที่สุดที่จะทำง่ายif- elseใน Thymeleaf? ฉันต้องการประสบความสำเร็จใน Thymeleaf เช่นเดียวกับ <c:choose> <c:when test="${potentially_complex_expression}"> <h2>Hello!</h2> </c:when> <c:otherwise> <span class="xxx">Something else</span> </c:otherwise> </c:choose> ใน JSTL สิ่งที่ฉันได้คิดไปแล้ว: <div th:with="condition=${potentially_complex_expression}" th:remove="tag"> <h2 th:if="${condition}">Hello!</h2> <span th:unless="${condition}" class="xxx">Something else</span> </div> ฉันไม่ต้องการประเมินpotentially_complex_expressionสองครั้ง conditionนั่นเป็นเหตุผลที่ผมแนะนำตัวแปรท้องถิ่น ยังคงฉันไม่ชอบใช้ทั้งและth:if="${condition}th:unless="${condition}" สิ่งที่สำคัญก็คือว่าผมใช้สองแท็กที่แตกต่างกัน: สมมติว่าและh2span คุณสามารถแนะนำวิธีที่ดีกว่าในการบรรลุเป้าหมายได้หรือไม่?

17
javac ไม่ทำงานในพรอมต์คำสั่งของ windows
ฉันพยายามใช้javacกับพรอมต์คำสั่งของ windows แต่ใช้ไม่ได้ หลังจากเพิ่มไดเร็กทอรี"C:\Program Files\Java\jdk1.6.0_16\bin\"ที่ส่วนท้ายของPATHตัวแปรสภาพแวดล้อมjavaคำสั่งจะทำงานได้ดี แต่การใช้javacทำให้ฉันมีข้อผิดพลาดต่อไปนี้: ไม่รู้จัก 'javac' เป็นคำสั่งภายในหรือภายนอกโปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

3
Shiro กับ SpringSecurity [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบพร้อมข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ขณะนี้ฉันได้ประเมินกรอบการรักษาความปลอดภัยที่ใช้ Java ฉันเป็นผู้ใช้ Spring 3.0 ดังนั้นดูเหมือนว่า SpringSecurity จะเป็นตัวเลือกที่เหมาะสม แต่การรักษาความปลอดภัยของ Spring ดูเหมือนจะประสบกับความซับซ้อนมากเกินไปดูเหมือนว่าจะไม่ทำให้การรักษาความปลอดภัยง่ายขึ้นอย่างแน่นอน ชิโระดูเหมือนจะเข้ากันและเข้าใจง่ายกว่ามาก ฉันกำลังมองหารายการข้อดีข้อเสียระหว่างสองกรอบนี้

4
อะไรคือความแตกต่างระหว่างการอัปเดต Java แบบคี่และแบบคู่?
ฉันติดตั้ง JDK 8u60 แล้ว ฉันจะตรวจสอบเว็บไซต์ของออราเคิลในวันนี้และพวกเขาได้รับการปล่อยตัวพร้อมกันสองรุ่น: 8u65และ8u66 ทั้งสองเป็นเวอร์ชันเผยแพร่สาธารณะ ทำไมถึงปล่อยสองเวอร์ชันพร้อมกัน? เงื่อนไข / เหตุผลใดที่จะทำให้เราเลือกอย่างใดอย่างหนึ่ง
132 java  version  oraclejdk 

2
Android - การเขียนคอมโพเนนต์ (สารประกอบ) ที่กำหนดเอง
แอป Android ที่ฉันกำลังพัฒนาอยู่มีกิจกรรมหลักที่เติบโตขึ้นค่อนข้างมาก ส่วนใหญ่เป็นเพราะมีTabWidget3 แท็บ แต่ละแท็บมีส่วนประกอบค่อนข้างน้อย กิจกรรมต้องควบคุมส่วนประกอบเหล่านั้นทั้งหมดพร้อมกัน ดังนั้นฉันคิดว่าคุณคงนึกออกว่ากิจกรรมนี้มี 20 ช่อง (ช่องสำหรับเกือบทุกองค์ประกอบ) นอกจากนี้ยังมีตรรกะมากมาย (ตัวฟังคลิกตรรกะเพื่อเติมรายการ ฯลฯ ) โดยปกติสิ่งที่ฉันทำในเฟรมเวิร์กที่ใช้ส่วนประกอบคือการแยกทุกอย่างออกเป็นส่วนประกอบที่กำหนดเอง ส่วนประกอบที่กำหนดเองแต่ละส่วนจะมีความรับผิดชอบที่ชัดเจน มันจะมีชุดส่วนประกอบของตัวเองและตรรกะอื่น ๆ ทั้งหมดที่เกี่ยวข้องกับส่วนประกอบนั้น ฉันพยายามหาวิธีที่จะทำได้และพบบางอย่างในเอกสารของ Android ที่พวกเขาชอบเรียกว่า "Compound Control" (ดูhttp://developer.android.com/guide/topics/ui/custom-components.html#compoundและเลื่อนไปที่ส่วน "Compound Controls") ฉันต้องการสร้างส่วนประกอบดังกล่าวโดยใช้ไฟล์ XML ที่กำหนด ดูโครงสร้าง ในเอกสารระบุว่า: โปรดทราบว่าเช่นเดียวกับกิจกรรมคุณสามารถใช้วิธีการประกาศ (ตาม XML) ในการสร้างส่วนประกอบที่มีอยู่หรือคุณสามารถซ้อนกันโดยทางโปรแกรมจากโค้ดของคุณ นั่นเป็นข่าวดี! วิธีการที่ใช้ XML เป็นสิ่งที่ฉันต้องการ! แต่มันไม่ได้บอกว่าต้องทำอย่างไรยกเว้นว่า "ชอบด้วยกิจกรรม" ... แต่สิ่งที่ฉันทำในกิจกรรมคือการเรียกร้องsetContentView(...)ให้ขยายมุมมองจาก XML LinearLayoutวิธีการที่ไม่สามารถใช้ได้ถ้าคุณตัวอย่างเช่นประเภทรอง ดังนั้นฉันจึงพยายามขยาย XML ด้วยตนเองดังนี้: …

16
การกำหนดค่า XML เทียบกับการกำหนดค่าตามคำอธิบายประกอบ [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบพร้อมข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ในโครงการขนาดใหญ่สองสามโครงการที่ฉันได้ดำเนินการเมื่อไม่นานมานี้ดูเหมือนว่าการเลือกโครงการใดโครงการหนึ่ง (XML หรือ Annotation) มีความสำคัญมากขึ้น เมื่อโครงการเติบโตขึ้นความสม่ำเสมอเป็นสิ่งสำคัญมากสำหรับการบำรุงรักษา คำถามของฉันคืออะไรคือข้อดีของการกำหนดค่าที่ใช้ XML เหนือการกำหนดค่าตามคำอธิบายประกอบและอะไรคือข้อดีของการกำหนดค่าตามคำอธิบายประกอบผ่านการกำหนดค่าตาม XML
132 java  xml  spring  annotations 

8
จะใช้ฟังก์ชัน mouseover ใน Selenium WebDriver โดยใช้ Java ได้อย่างไร?
ฉันต้องการใช้ฟังก์ชันวางเมาส์เหนือเมนูแบบเลื่อนลง เมื่อเราวางเมาส์เหนือเมนูจะแสดงตัวเลือกใหม่ ฉันพยายามคลิกตัวเลือกใหม่โดยใช้ xpath แต่ไม่สามารถคลิกเมนูโดยตรง ดังนั้นตามวิธีการด้วยตนเองฉันพยายามวางเมาส์เหนือเมนูแบบเลื่อนลงแล้วคลิกตัวเลือกใหม่ Actions action = new Actions(webdriver); WebElement we = webdriver.findElement(By.xpath("//html/body/div[13]/ul/li[4]/a")); action.moveToElement(we).build().perform();

6
ฉันควรใช้คิวใดพร้อมกันใน Java
จาก JavaDocs: ConcurrentLinkedQueueเป็นทางเลือกที่เหมาะสมเมื่อหลายกระทู้จะแบ่งปันการเข้าถึงคอลเลกชันที่พบบ่อย คิวนี้ไม่อนุญาตองค์ประกอบ null ArrayBlockingQueueเป็น "บัฟเฟอร์ที่มีขอบเขต" แบบคลาสสิกซึ่งอาร์เรย์ที่มีขนาดคงที่จะเก็บองค์ประกอบที่ผู้ผลิตแทรกและสกัดโดยผู้บริโภค คลาสนี้สนับสนุนนโยบายความเป็นธรรมที่เป็นทางเลือกสำหรับการสั่งซื้อเธรดผู้ผลิตและผู้บริโภคที่รอคอย โดยทั่วไปLinkedBlockingQueueจะมีปริมาณงานที่สูงกว่าคิวที่ใช้อาร์เรย์ แต่ประสิทธิภาพที่คาดเดาได้น้อยกว่าในแอปพลิเคชันที่ทำงานพร้อมกันส่วนใหญ่ ฉันมี 2 สถานการณ์สถานการณ์หนึ่งต้องการคิวเพื่อสนับสนุนผู้ผลิตหลายราย (เธรดที่ใช้) กับผู้บริโภครายหนึ่งและอีกสถานการณ์หนึ่งเป็นอีกทางหนึ่ง ฉันไม่เข้าใจว่าจะใช้การนำไปใช้งานใด ใครสามารถอธิบายความแตกต่างคืออะไร? นอกจากนี้ 'นโยบายความเป็นธรรมทางเลือก' ArrayBlockingQueueคืออะไรใน?

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