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

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

2
การอ้างอิงที่แตกต่างกันสำหรับโปรไฟล์การสร้างที่แตกต่างกัน
เป็นไปได้ไหมที่จะมีชุดการอ้างอิงที่แตกต่างกันในไฟล์ maven pom.xml สำหรับโปรไฟล์ที่แตกต่างกัน? เช่น mvn -P debug mvn -P release ฉันต้องการรับไฟล์ jar การพึ่งพาอื่นในโปรไฟล์เดียวที่มีชื่อคลาสเดียวกันและการใช้งานอินเทอร์เฟซเดียวกันที่แตกต่างกัน


27
เกิดข้อผิดพลาดในการสร้าง bean ด้วยชื่อ 'entityManagerFactory' ที่กำหนดในทรัพยากรพา ธ คลาส: การเรียกใช้เมธอด init ล้มเหลว
เมื่อฉันรวบรวมโครงการฤดูใบไม้ผลิของฉันฉันได้รับข้อผิดพลาดต่อไปนี้ เกิดข้อผิดพลาดในการสร้าง bean ด้วยชื่อ 'entityManagerFactory' ที่กำหนดไว้ในทรัพยากรพา ธ คลาส [org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class]: การเรียกใช้เมธอด init ล้มเหลว ฉันใช้ STS Eclipse และ MySql Database สตริงการเชื่อมต่อของฉันApplication.Propertiesคือ spring.datasource.url=jdbc:mysql://localhost:3306/stgdb spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.hibernate.ddl-auto=update ข้อผิดพลาดโดยละเอียดได้รับด้านล่าง ================================================= 2016-10-15 15:34:38.875[0;39m [31mERROR[0;39m [35m3700[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.s.boot.SpringApplication [0;39m [2m:[0;39m Application startup …

5
ความแตกต่างระหว่างแอ็พพลิเคชันเซิร์ฟเวอร์และคอนเทนเนอร์ servlet
ฉันพยายามทำความเข้าใจความแตกต่างระหว่างแอ็พพลิเคชันเซิร์ฟเวอร์ที่มีคุณสมบัติครบถ้วน (เช่น Weblogic, JBoss เป็นต้น) และคอนเทนเนอร์ servlet (Tomcat, Jetty เป็นต้น) แตกต่างกันอย่างไรและควรใช้เมื่อใด ขอบคุณ

4
เนื่องจากบล็อกสุดท้ายไม่ได้รับการหุ้มอย่างถูกต้อง
ฉันกำลังพยายามใช้อัลกอริทึมการเข้ารหัสที่ใช้รหัสผ่าน แต่ฉันได้รับข้อยกเว้นนี้: javax.crypto.BadPaddingException: เนื่องจากบล็อกสุดท้ายไม่ได้รับการหุ้มอย่างถูกต้อง ปัญหาอาจเกิดจากอะไร? นี่คือรหัสของฉัน: public class PasswordCrypter { private Key key; public PasswordCrypter(String password) { try{ KeyGenerator generator; generator = KeyGenerator.getInstance("DES"); SecureRandom sec = new SecureRandom(password.getBytes()); generator.init(sec); key = generator.generateKey(); } catch (Exception e) { e.printStackTrace(); } } public byte[] encrypt(byte[] array) throws CrypterException { try{ Cipher cipher …

6
วิธีการดีบักสตรีม () แผนที่ (…) ด้วยนิพจน์แลมบ์ดา
ในโครงการของเราเรากำลังย้ายไปที่ java 8 และเรากำลังทดสอบคุณสมบัติใหม่ของมัน ในโครงการของฉันฉันใช้ภาคฝรั่งและฟังก์ชั่นในการกรองและการแปลงคอลเลกชันโดยใช้และCollections2.transformCollections2.filter ในการย้ายข้อมูลนี้ฉันจำเป็นต้องเปลี่ยนเช่น guava code เป็น java 8 การเปลี่ยนแปลง ดังนั้นการเปลี่ยนแปลงที่ฉันทำคือประเภทของ: List<Integer> naturals = Lists.newArrayList(1,2,3,4,5,6,7,8,9,10,11,12,13); Function <Integer, Integer> duplicate = new Function<Integer, Integer>(){ @Override public Integer apply(Integer n) { return n * 2; } }; Collection result = Collections2.transform(naturals, duplicate); ถึง... List<Integer> result2 = naturals.stream() .map(n -> n …
115 java  debugging  lambda  java-8 

6
รัน jar อื่นในโปรแกรม Java
ฉันได้เขียนแอปพลิเคชั่น java ง่ายๆหลายตัวชื่อ A.jar, B.jar ตอนนี้ฉันต้องการเขียนโปรแกรม GUI java เพื่อให้ผู้ใช้สามารถกดปุ่ม A เพื่อเรียกใช้งาน A. jar และปุ่ม B เพื่อเรียกใช้งาน B.jar นอกจากนี้ฉันต้องการส่งออกรายละเอียดกระบวนการรันไทม์ในโปรแกรม GUI ของฉัน ข้อเสนอแนะใด ๆ ?
115 java  jar  executable-jar 

9
วิธีส่งคืนออบเจ็กต์ที่กำหนดเองจากแบบสอบถาม Spring Data JPA GROUP BY
ฉันกำลังพัฒนาแอปพลิเคชัน Spring Boot ด้วย Spring Data JPA ฉันใช้แบบสอบถาม JPQL ที่กำหนดเองเพื่อจัดกลุ่มตามฟิลด์และรับการนับ ต่อไปนี้เป็นวิธีการจัดเก็บของฉัน @Query(value = "select count(v) as cnt, v.answer from Survey v group by v.answer") public List<?> findSurveyCount(); มันใช้งานได้และได้ผลลัพธ์ดังนี้: [ [1, "a1"], [2, "a2"] ] ฉันต้องการได้รับสิ่งนี้: [ { "cnt":1, "answer":"a1" }, { "cnt":2, "answer":"a2" } ] ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?

3
ประเภทที่เก็บคีย์: จะใช้อันไหนดี?
จากการดูไฟล์java.securityของฉันJREฉันเห็นว่าประเภทที่เก็บคีย์ที่จะใช้โดยค่าเริ่มต้นถูกตั้งค่าเป็นJKS. ที่นี่มีรายการประเภทที่เก็บคีย์ที่สามารถใช้ได้ มีประเภทที่เก็บคีย์ที่แนะนำหรือไม่? อะไรคือข้อดี / ข้อเสียของที่เก็บคีย์ประเภทต่างๆ
115 java  security  ssl  jsse 

4
ฉันจะใช้ฟังก์ชัน computeIfAbsent ใหม่ได้อย่างไร
ฉันต้องการใช้Map.computeIfAbsentเป็นอย่างมากแต่มันนานเกินไปแล้วตั้งแต่ lambdas อยู่ในระดับปริญญาตรี เกือบจะโดยตรงจากเอกสาร: มันเป็นตัวอย่างของวิธีการทำสิ่งต่างๆแบบเก่า: Map<String, Boolean> whoLetDogsOut = new ConcurrentHashMap<>(); String key = "snoop"; if (whoLetDogsOut.get(key) == null) { Boolean isLetOut = tryToLetOut(key); if (isLetOut != null) map.putIfAbsent(key, isLetOut); } และวิธีใหม่: map.computeIfAbsent(key, k -> new Value(f(k))); แต่ในตัวอย่างของพวกเขาฉันคิดว่าฉันไม่ค่อย "เข้าใจ" ฉันจะแปลงรหัสเพื่อใช้วิธีแลมด้าใหม่ในการแสดงสิ่งนี้ได้อย่างไร

7
JPA - ส่งคืน id ที่สร้างขึ้นโดยอัตโนมัติหลังจากยังคงมีอยู่ ()
ฉันใช้ JPA (EclipseLink) และ Spring สมมติว่าฉันมีเอนทิตีธรรมดาที่มี ID ที่สร้างขึ้นอัตโนมัติ: @Entity public class ABC implements Serializable { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private int id; // ... } ในคลาส DAO ของฉันฉันมีวิธีการแทรกที่เรียกpersist()ใช้เอนทิตีนี้ ฉันต้องการให้เมธอดส่งคืน ID ที่สร้างขึ้นสำหรับเอนทิตีใหม่ แต่เมื่อฉันทดสอบมันจะส่งคืน0แทน public class ABCDao { @PersistenceContext EntityManager em; @Transactional(readOnly=false) public int insertABC(ABC abc) { em.persist(abc); // I WANT TO RETURN THE …
115 java  jpa 

10
เร่งเวลาเริ่มต้น Spring Boot
ฉันมีแอปพลิเคชัน Spring Boot ฉันได้เพิ่มการอ้างอิงจำนวนมาก (น่าเสียดายที่ดูเหมือนว่าฉันต้องการสิ่งเหล่านี้ทั้งหมด) และเวลาเริ่มต้นก็เพิ่มขึ้นค่อนข้างมาก เพียงแค่ทำSpringApplication.run(source, args)ใช้เวลา 10 วินาที แม้ว่าอาจจะไม่มากเมื่อเทียบกับสิ่งที่ "เคยชิน" แต่ฉันไม่พอใจที่ต้องใช้เวลามากขนาดนั้นส่วนใหญ่เป็นเพราะมันทำลายขั้นตอนการพัฒนา ในตอนนี้แอปพลิเคชันมีขนาดค่อนข้างเล็กดังนั้นฉันจึงถือว่าเวลาส่วนใหญ่เกี่ยวข้องกับการอ้างอิงที่เพิ่มเข้ามาไม่ใช่คลาสของแอปเอง ฉันถือว่าปัญหาคือการสแกน classpath แต่ฉันไม่แน่ใจว่าจะทำอย่างไร: ยืนยันว่าเป็นปัญหา (เช่นวิธี "ดีบัก" Spring Boot) ถ้าเป็นสาเหตุจริงๆจะ จำกัด ยังไงให้มันเร็วขึ้น ตัวอย่างเช่นถ้าฉันรู้ว่าการอ้างอิงหรือแพ็คเกจบางอย่างไม่มีสิ่งที่ Spring ควรจะสแกนมีวิธี จำกัด หรือไม่ ฉันคิดว่าการปรับปรุง Spring ให้มีการเริ่มต้นถั่วแบบคู่ขนานระหว่างการเริ่มต้นจะทำให้สิ่งต่างๆเร็วขึ้น แต่คำขอการเพิ่มประสิทธิภาพนั้นเปิดให้บริการตั้งแต่ปี 2554 โดยไม่มีความคืบหน้าใด ๆ ฉันเห็นความพยายามอื่น ๆ ใน Spring Boot เองเช่นการปรับปรุงความเร็วในการสแกน Tomcat JarScanningแต่นั่นเป็นความเฉพาะของ Tomcat และถูกยกเลิกไปแล้ว บทความนี้: http://www.nurkiewicz.com/2010/12/speeding-up-spring-integration-tests.html แม้ว่าจะมุ่งเป้าไปที่การทดสอบการรวม …

11
การแก้ไขตัวแปรโลคัลจากภายในแลมด้า
การแก้ไขตัวแปรภายในforEachทำให้เกิดข้อผิดพลาดในการคอมไพล์: ปกติ int ordinal = 0; for (Example s : list) { s.setOrdinal(ordinal); ordinal++; } ด้วยแลมด้า int ordinal = 0; list.forEach(s -> { s.setOrdinal(ordinal); ordinal++; }); มีความคิดอย่างไรในการแก้ไขปัญหานี้
115 java  lambda  java-8 

8
จะใช้วิธีการ `string.startsWith ()` ละเว้นเคสได้อย่างไร
ฉันต้องการใช้string.startsWith()วิธีการ แต่ไม่สนใจกรณี สมมติว่าฉันมีString"เซสชัน" และฉันจะใช้startsWithที่ "sEsSi" trueแล้วมันควรจะกลับมา ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?
115 java  string 

15
ข้อผิดพลาดประเภทสื่อที่ไม่รองรับ Http 415 กับ JSON
ฉันกำลังเรียกใช้บริการ REST ด้วยคำขอ JSON และตอบสนองด้วยHTTP 415 "Unsupported Media Type"ข้อผิดพลาด ("Content-Type", "application/json; charset=utf8")ประเภทคำขอเนื้อหามีการตั้งค่า ใช้ได้ดีถ้าฉันไม่รวมออบเจ็กต์ JSON ในคำขอ ฉันใช้google-gson-2.2.4ไลบรารีสำหรับ JSON ฉันลองใช้สองไลบรารีที่แตกต่างกัน แต่ก็ไม่แตกต่างกัน ใครสามารถช่วยฉันแก้ไขปัญหานี้ได้ไหม นี่คือรหัสของฉัน: public static void main(String[] args) throws Exception { JsonObject requestJson = new JsonObject(); String url = "xxx"; //method call for generating json requestJson = generateJSON(); URL myurl = new …

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