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

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

1
คำแนะนำในการปรับใช้ไฟล์ war เทียบกับ jar ที่ปฏิบัติการได้ด้วยคอนเทนเนอร์แบบฝัง
ดูเหมือนว่าจะมีแนวโน้มในปัจจุบันในพื้นที่จาวาที่จะย้ายออกจากการปรับใช้เว็บแอปพลิเคชัน java ไปยังคอนเทนเนอร์ java servlet (หรือแอปพลิเคชันเซิร์ฟเวอร์) ในรูปแบบไฟล์ war (หรือไฟล์ ear) และแทนที่แอปพลิเคชันเป็น jar ปฏิบัติการด้วย เซิร์ฟเวอร์ servlet / HTTP ที่ฝังตัวเช่นท่าเทียบเรือ และฉันหมายถึงสิ่งนี้มากกว่านั้นในวิธีที่เฟรมเวิร์กรุ่นใหม่มีอิทธิพลต่อวิธีการพัฒนาและปรับใช้แอปพลิเคชันใหม่มากกว่าการส่งมอบแอปพลิเคชันไปยังผู้ใช้ปลายทาง (เพราะตัวอย่างเช่นฉันเข้าใจว่าทำไมเจนกินส์ถึงใช้คอนเทนเนอร์แบบฝังตัวง่ายมากในการหยิบจับ ). ตัวอย่างของเฟรมเวิร์กที่ใช้อ็อพชัน jar ที่เรียกใช้งานได้: Dropwizard , Spring BootและPlay (มันไม่ได้ทำงานบนคอนเทนเนอร์ servlet แต่เซิร์ฟเวอร์ HTTP ถูกฝังอยู่) คำถามของฉันคือมาจากสภาพแวดล้อมที่เราได้ปรับใช้แอปพลิเคชัน (จนถึงจุดนี้ส่วนใหญ่เป็น Struts2) กับแอปพลิเคชันเซิร์ฟเวอร์ Tomcat เดียวต้องมีการเปลี่ยนแปลงแนวทางปฏิบัติที่ดีที่สุดหรือข้อควรพิจารณาอะไรบ้างหากเราวางแผนที่จะใช้แนวทางคอนเทนเนอร์แบบฝัง เหรอ? ขณะนี้เรามีแอปพลิเคชันพื้นบ้านประมาณ 10 รายการที่ทำงานบนเซิร์ฟเวอร์ Tomcat ตัวเดียวและสำหรับแอปพลิเคชันขนาดเล็กเหล่านี้ความสามารถในการแบ่งปันทรัพยากรและจัดการบนเซิร์ฟเวอร์เดียวนั้นดี แอปพลิเคชันของเราไม่ได้มีวัตถุประสงค์เพื่อแจกจ่ายให้กับผู้ใช้ปลายทางเพื่อให้ทำงานภายในสภาพแวดล้อมของพวกเขา อย่างไรก็ตามหากเราตัดสินใจที่จะใช้ประโยชน์จาก java framework ที่ใหม่กว่าแนวทางนี้ควรเปลี่ยนไปหรือไม่? …


14
ค่าเริ่มต้นของถ่านคืออะไร?
char c = '\u0000'; เมื่อฉันพิมพ์ c มันจะแสดง 'a' ในหน้าต่างบรรทัดคำสั่ง แล้วค่าเริ่มต้นของฟิลด์ประเภทถ่านคืออะไร? มีคนกล่าวว่า '\ u0000' หมายถึงโมฆะในยูนิโคด นั่นถูกต้องใช่ไหม?
89 java  char 

5
JSR คืออะไรและมีประโยชน์อย่างไร
ความเกี่ยวข้องของ JSR คืออะไรและจะปรับให้เหมาะสมกับการใช้งานได้อย่างไร ฉันอ่านบางอย่างเช่น jsr82 สำหรับบลูทู ธ และอื่น ๆ สำหรับแอปทางเทคนิคอื่น ๆ ความเกี่ยวข้องคืออะไร?
89 java  jsr 

6
เป็นไปได้ไหมที่จะใช้ Java 8 Stream API บน Android API <24
เคยอ่านกระทู้นี้ที่นี่ แต่ฉันยังไม่สามารถรันโค้ดที่มีคุณสมบัติ Java 8 Stream API ดังต่อไปนี้บน minSdkVersion &lt;24 List&lt;Car&gt; newCars = cars.stream() .filter(s -&gt; s.getColor().equals("red")) .collect(Collectors.toList()); สิ่งนี้ไม่ทำงานเนื่องจากข้อความแสดงข้อผิดพลาด การโทรต้องใช้ API ระดับ 24 (ขั้นต่ำปัจจุบันคือ 15): java.util.Collection # stream มีใครรู้วิธีแก้ปัญหาบ้างไหม?

4
วิธีการ @Transactional เรียกวิธีอื่นโดยไม่ต้องมี @Transactional anotation?
ผมเคยเห็นวิธีการในระดับบริการที่ถูกระบุว่าเป็น@Transactionalแต่มันก็ยังเรียกร้องวิธีการอื่น ๆ @Transactionalบางอย่างในระดับเดียวกันกับที่ซึ่งไม่ได้ทำเครื่องหมายว่าเป็น หมายความว่าการเรียกใช้เมธอดแยกกันทำให้แอปพลิเคชันเปิดการเชื่อมต่อแยกกับ DB หรือระงับการทำธุรกรรมหลักเป็นต้น? ลักษณะการทำงานเริ่มต้นสำหรับวิธีการที่ไม่มีคำอธิบายประกอบใด ๆ ซึ่งเรียกโดยวิธีอื่นที่มี@Transactionalคำอธิบายประกอบ?

1
REST - HTTP Post Multipart พร้อม JSON
ฉันต้องการรับ HTTP Post Multipart ซึ่งมีเพียง 2 พารามิเตอร์: สตริง JSON ไฟล์ไบนารี วิธีตั้งศพที่ถูกต้องคือข้อใด? ฉันกำลังจะทดสอบการเรียก HTTP โดยใช้คอนโซล Chrome REST ดังนั้นฉันจึงสงสัยว่าวิธีแก้ปัญหาที่ถูกต้องคือการตั้งค่าคีย์ "label" สำหรับพารามิเตอร์ JSON และไฟล์ไบนารีหรือไม่ ในฝั่งเซิร์ฟเวอร์ฉันใช้ Resteasy 2.x และฉันจะอ่านเนื้อหา Multipart ดังนี้: @POST @Consumes("multipart/form-data") public String postWithPhoto(MultipartFormDataInput multiPart) { Map &lt;String, List&lt;InputPart&gt;&gt; params = multiPart.getFormDataMap(); String myJson = params.get("myJsonName").get(0).getBodyAsString(); InputPart imagePart = params.get("photo").get(0); //do whatever …
89 java  json  rest  http  resteasy 

7
ความแตกต่างระหว่าง servlet และบริการเว็บ
2 ตัวนี้ต่างกันอย่างไร? ฉันพบผลลัพธ์บางอย่างใน Google โดยไม่มีข้อสรุป คำถามติดตามผลมีดังนี้ สมมติว่าฉันสร้างแอปเว็บสปริง mvc ใส่คำอธิบายประกอบสองชั้นด้วยคำอธิบายประกอบ @Controller และสร้างสิ่งที่จะถ่ายโอนข้อมูลบางส่วนจากส่วนหน้า -&gt; ส่วนหลังและในทางกลับกันได้สำเร็จและบางทีฐานข้อมูลบางส่วนอาจเกี่ยวข้องกับด้านหลัง คุณจะเรียกมันว่าอะไร? พักบริการเว็บหรือ servlet หรืออย่างอื่น?


8
จะใช้ JUnit และ Hamcrest ร่วมกันได้อย่างไร?
ฉันไม่เข้าใจว่า JUnit 4.8 ควรทำงานกับ Hamcrest matchers ได้อย่างไร มี matchers บางที่กำหนดไว้ด้านในเป็นในjunit-4.8.jar org.hamcrest.CoreMatchersในขณะเดียวกันก็มีผู้จับคู่อื่น ๆhamcrest-all-1.1.jarเข้าorg.hamcrest.Matchersมา แล้วจะไปไหนดี? ฉันจะรวม hamcrest JAR ไว้ในโปรเจ็กต์อย่างชัดเจนและไม่สนใจตัวจับคู่ที่ JUnit จัดหาให้หรือไม่ โดยเฉพาะอย่างยิ่งฉันสนใจเรื่องการempty()จับคู่และหาไม่พบในขวดเหล่านี้ ฉันต้องการอย่างอื่น? :) และคำถามเชิงปรัชญา: ทำไม JUnit รวมorg.hamcrestแพ็คเกจไว้ในการแจกจ่ายของตัวเองแทนที่จะสนับสนุนให้เราใช้ห้องสมุดแฮมเครสต์ดั้งเดิม
89 java  junit  hamcrest 

6
Java AES และใช้คีย์ของฉันเอง
ฉันต้องการเข้ารหัสสตริงโดยใช้ AES ด้วยคีย์ของฉันเอง แต่ฉันมีปัญหากับความยาวบิตของคีย์ คุณสามารถตรวจสอบรหัสของฉันและดูสิ่งที่ฉันต้องแก้ไข / เปลี่ยนแปลง public static void main(String[] args) throws Exception { String username = "bob@google.org"; String password = "Password1"; String secretID = "BlahBlahBlah"; String SALT2 = "deliciously salty"; // Get the Key byte[] key = (SALT2 + username + password).getBytes(); System.out.println((SALT2 + username + password).getBytes().length); // …
89 java  key  aes 

9
Java: วิธีตรวจสอบว่าวัตถุเป็นโมฆะหรือไม่?
ฉันกำลังสร้างแอปพลิเคชันที่ดึงรูปภาพจากเว็บ ในกรณีที่ไม่สามารถดึงภาพได้ควรใช้ภาพในเครื่องอื่น ขณะพยายามดำเนินการบรรทัดต่อไปนี้: Drawable drawable = Common.getDrawableFromUrl(this, product.getMapPath()); if (drawable.equals(null)) { drawable = getRandomDrawable(); } บรรทัดถ้า (drawable.equals (null)) จะแสดงข้อยกเว้นหาก drawable เป็นโมฆะ ไม่มีใครรู้ว่าควรตรวจสอบค่า drawable อย่างไรเพื่อไม่ให้เกิดข้อยกเว้นในกรณีที่เป็นโมฆะและดึงข้อมูลภาพในเครื่อง (เรียกใช้ drawable = getRandomDrawable ())?
89 java  android 

4
ฉันจะแปลงอ็อบเจ็กต์ org.w3c.dom.Document เป็น String ได้อย่างไร
ฉันต้องการแปลงอ็อบเจ็กต์ org.w3c.dom.Document เป็น String ฉันใช้ Java 6 และฉันพร้อมที่จะใช้เทคโนโลยี (ฟรีทั้งหมด) ที่ขึ้นอยู่กับงาน ฉันลองวิธีแก้ปัญหาจากเธรดนี้ - มีวิธีที่หรูหรากว่าในการแปลงเอกสาร XML เป็น String ใน Java กว่ารหัสนี้หรือไม่? ที่พวกเขามี DOMImplementationLS domImplementation = (DOMImplementationLS) doc.getImplementation(); LSSerializer lsSerializer = domImplementation.createLSSerializer(); String html = lsSerializer.writeToString(doc); แต่ได้รับการต้อนรับด้วยข้อยกเว้นที่น่ากลัวดังต่อไปนี้ ... org.w3c.dom.DOMException: DOM method not supported at org.w3c.tidy.DOMDocumentImpl.getImplementation(DOMDocumentImpl.java:129) at com.myco.myproj.cleaners.JTidyCleaner.outputDocAsString(JTidyCleaner.java:74) at com.myco.myproj.cleaners.JTidyCleaner.parse(JTidyCleaner.java:63) at com.myco.myproj.util.NetUtilities.getUrlAsDocument(NetUtilities.java:51) at com.myco.myproj.parsers.AbstractHTMLParser.getEventFromElement(AbstractHTMLParser.java:131) …
89 java  xml  document 

8
Android LocationServices FusedLocationApi เลิกใช้แล้ว
ฉันคิดไม่ออกว่าทำไมLocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient,mLocationRequest, this);"FusedLocationApi" ถึงขีดฆ่าและชี้ไปที่มันบอกว่าเลิกใช้งานแล้ว คลิกที่นี่เพื่อดูภาพ import android.location.Location; import android.location.LocationListener; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v4.app.FragmentActivity; import android.os.Bundle; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.location.LocationRequest; import com.google.android.gms.location.LocationServices; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.OnMapReadyCallback; import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.MarkerOptions; public class MaintainerMapActivity extends FragmentActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener{ private GoogleMap mMap; GoogleApiClient …

14
อะไรคือความแตกต่างระหว่างวิธีการ next () และ nextLine () จากคลาส Scanner?
อะไรคือความแตกต่างหลักระหว่างnext()และnextLine()? เป้าหมายหลักของฉันคือการอ่านข้อความทั้งหมดโดยใช้Scannerซึ่งอาจ "เชื่อมต่อ" กับแหล่งที่มาใดก็ได้ (เช่นไฟล์) ฉันควรเลือกแบบใดและเพราะเหตุใด

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