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

Spring Framework เป็นเฟรมเวิร์กโอเพนซอร์ซสำหรับการพัฒนาแอพพลิเคชั่นบนแพลตฟอร์ม Java ที่แกนกลางของมันคือการสนับสนุนที่หลากหลายสำหรับสถาปัตยกรรมที่ใช้ส่วนประกอบและในปัจจุบันมีโมดูลรวมมากกว่ายี่สิบโมดูล

1
ไม่แน่ใจถ้าฉันเข้าใจ TransactionAwarePersistenceManagerFactoryProxy
ฉันกำลังพยายามใช้org.springframework.orm.jdo.TransactionAwarePersistenceManagerFactoryProxyในโครงการ Spring ของฉัน แต่ฉันไม่แน่ใจว่าจะใช้งานอย่างไรหรือว่าเป็นสิ่งที่ฉันกำลังมองหาหรือไม่ ฉันรู้ว่ามันสามารถช่วยให้ DAO ของฉันทำงานกับ JDO ธรรมดาPersistenceManagerFactoryได้ คำถามอื่นคือ: จะเกิดอะไรขึ้นถ้าพร็อกซีไม่ได้รับการทำอย่างถูกต้อง? ฉันยังคงสามารถใช้มันเพื่อเข้าถึงโรงงานของฉันเพื่อสร้างผู้จัดการการคงอยู่ที่รับรู้ธุรกรรม หากวัตถุที่จัดการโดยโรงงานเป็นซิงเกิลตันสิ่งนี้จะเปลี่ยนแปลงหรือไม่? ทำไมไม่เพียงแค่เข้าสู่ PersistenceManagerFactory โดยตรง? บางทีอาจPersistenceManagerFactoryUtils.getPersistenceManagerจะเหมาะกับความต้องการของฉันมากกว่านี้? สามารถgetObjectคืนค่าว่างได้หรือไม่
192 java  spring  persistence  dao  jdo 

3
ความแตกต่างระหว่าง GA, RC และ M2 ของ Spring แตกต่างกันอย่างไร
ฤดูใบไม้ผลิของรุ่น 3.0 เป็นรุ่นGAก่อนหน้านี้พวกเขาได้เปิดตัว 3.0 RC1 , รุ่นRC2นอกจากนี้ยังมีรุ่นSpring 3.0 M2 รุ่น GA, RC, M ต่างกันอย่างไร

5
Mockito: ฉีดของจริงลงในช่อง @Autowired ส่วนตัว
ฉันใช้ Mockito @Mockและ@InjectMocksคำอธิบายประกอบในการฉีดการพึ่งพาในเขตข้อมูลส่วนตัวที่มีบันทึกย่อของสปริง@Autowired: @RunWith(MockitoJUnitRunner.class) public class DemoTest { @Mock private SomeService service; @InjectMocks private Demo demo; /* ... */ } และ public class Demo { @Autowired private SomeService service; /* ... */ } ตอนนี้ฉันต้องการฉีดของจริงลงใน@Autowiredฟิลด์ส่วนตัว(โดยไม่มีตัวตั้งค่า) เป็นไปได้หรือเป็นกลไกที่ จำกัด เฉพาะการฉีด Mocks เท่านั้น?
191 java  spring  mockito 

9
ด้วย Spring ฉันสามารถสร้างตัวแปรพา ธ เสริมหรือไม่?
ด้วย Spring 3.0 ฉันสามารถมีตัวแปรพา ธ เสริมได้ไหม? ตัวอย่างเช่น @RequestMapping(value = "/json/{type}", method = RequestMethod.GET) public @ResponseBody TestBean testAjax( HttpServletRequest req, @PathVariable String type, @RequestParam("track") String track) { return new TestBean(); } ที่นี่ฉันต้องการ/json/abcหรือ/jsonจะเรียกวิธีการเดียวกัน วิธีแก้ปัญหาที่ชัดเจนหนึ่งประกาศtypeเป็นพารามิเตอร์คำขอ: @RequestMapping(value = "/json", method = RequestMethod.GET) public @ResponseBody TestBean testAjax( HttpServletRequest req, @RequestParam(value = "type", required = false) …
187 spring  rest 

18
เป็นวิธีที่เหมาะสมในการแนบวัตถุเดี่ยวออกใน Hibernate คืออะไร
ฉันมีสถานการณ์ที่ฉันต้องแนบวัตถุเดี่ยวออกไปอีกครั้งเพื่อเข้าสู่โหมดไฮเบอร์เนตแม้ว่าวัตถุที่มีตัวตนเดียวกันอาจมีอยู่แล้วในเซสชันซึ่งจะทำให้เกิดข้อผิดพลาด ตอนนี้ฉันสามารถทำหนึ่งในสองสิ่งนี้ getHibernateTemplate().update( obj ) มันจะทำงานถ้าหากวัตถุนั้นไม่มีอยู่ในเซสชั่นไฮเบอร์เนต มีการโยนข้อยกเว้นที่ระบุวัตถุที่มีตัวระบุที่กำหนดอยู่แล้วในเซสชันเมื่อฉันต้องการในภายหลัง getHibernateTemplate().merge( obj ) มันจะทำงานถ้าวัตถุนั้นมีอยู่ในเซสชั่นไฮเบอร์เนต มีการโยนข้อยกเว้นเมื่อฉันต้องการให้วัตถุอยู่ในเซสชันในภายหลังหากฉันใช้สิ่งนี้ จากสถานการณ์ทั้งสองนี้ฉันจะแนบเซสชันกับวัตถุโดยทั่วไปได้อย่างไร ฉันไม่ต้องการใช้ข้อยกเว้นเพื่อควบคุมการไหลของโซลูชันนี้เนื่องจากต้องมีวิธีแก้ปัญหาที่สวยงามกว่า ...

3
@RequestParam ใน Spring MVC จัดการพารามิเตอร์ทางเลือก
เป็นไปได้ไหมที่สปริงคอนโทรลเลอร์จะจัดการกับคำขอทั้งสองประเภท? 1) http://localhost:8080/submit/id/ID123432?logout=true 2) http://localhost:8080/submit/id/ID123432?name=sam&password=543432 ถ้าฉันกำหนดคอนโทรลเลอร์เดี่ยวของชนิด: @RequestMapping (value = "/submit/id/{id}", method = RequestMethod.GET, produces="text/xml") public String showLoginWindow(@PathVariable("id") String id, @RequestParam(value = "logout", required = false) String logout, @RequestParam("name") String username, @RequestParam("password") String password, @ModelAttribute("submitModel") SubmitModel model, BindingResult errors) throws LoginException {...} คำขอ HTTP ที่มี "logout" ไม่เป็นที่ยอมรับ ถ้าฉันกำหนดตัวควบคุมสองตัวเพื่อจัดการแต่ละคำขอแยกกันสปริงจะบ่นด้วยข้อยกเว้น "มีวิธีบีน 'ตัวควบคุม' อยู่แล้ว …
186 java  spring  spring-mvc 

8
หลายแพ็คเกจในบริบท: การสแกนคอมโพเนนต์, การกำหนดค่าสปริง
ฉันจะเพิ่มหลายแพ็คเกจในไฟล์ spring-servlet.xml ในcontext:component-scanองค์ประกอบได้อย่างไร ฉันเหนื่อย <context:component-scan base-package="z.y.z.service" base-package="x.y.z.controller" /> และ <context:component-scan base-package="x.y.z.service, x.y.z.controller" /> และ <context:component-scan base-package="x.y.z.service" /> <context:component-scan base-package="x.y.z.controller" /> แต่มีข้อผิดพลาด: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [x.y.z.dao.daoservice.LoginDAO] found for dependency:

12
ไม่สามารถหา @SpringBootConfiguration เมื่อทำ JpaTest
ฉันใหม่กับเฟรมเวิร์ก (เพิ่งผ่านชั้นเรียน) และนี่เป็นครั้งแรกของฉันที่ใช้ Spring Boot ฉันพยายามทำการทดสอบ Junit แบบง่าย ๆ เพื่อดูว่า CrudRepositories ของฉันใช้งานได้จริงหรือไม่ ข้อผิดพลาดที่ฉันได้รับคือ: ไม่สามารถหา @SpringBootConfiguration ได้คุณต้องใช้ @ContextConfiguration หรือ @SpringBootTest (คลาส = ... ) ด้วยการทดสอบ java.lang.IllegalStateException ของคุณ Spring Boot ไม่ได้กำหนดค่าตัวเองใช่ไหม ชั้นทดสอบของฉัน: @RunWith(SpringRunner.class) @DataJpaTest @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) public class JpaTest { @Autowired private AccountRepository repository; @After public void clearDb(){ repository.deleteAll(); } @Test …

10
Spring MVC - การขอ params ทั้งหมดในแผนที่ใน Spring controller ได้อย่างไร
URL ตัวอย่าง: ../search/?attr1=value1&attr2=value2&attr4=value4 ฉันไม่รู้จักชื่อของ attr1, att2 และ attr4 ฉันต้องการที่จะสามารถทำอะไรเช่นนั้น (หรือคล้ายกันไม่สนใจตราบใดที่ฉันสามารถเข้าถึงแผนที่ชื่อพารามิเตอร์ขอ - มูลค่า>: @RequestMapping(value = "/search/{parameters}", method = RequestMethod.GET) public void search(HttpServletRequest request, @PathVariable Map<String,String> allRequestParams, ModelMap model) throws Exception {//TODO: implement} ฉันจะบรรลุสิ่งนี้ด้วย Spring MVC ได้อย่างไร
183 java  spring  spring-mvc 

9
ฉันจะบอก Spring Boot ได้อย่างไรว่าคลาสหลักใดที่จะใช้สำหรับ jar ที่ปฏิบัติการได้?
Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.0.1.RELEASE:repackage failed: Unable to find a single main class from the following candidates โครงการของฉันมีมากกว่าหนึ่งคลาสด้วยmainวิธีการ ฉันจะบอกปลั๊กอิน Spring Boot Maven ว่าควรใช้คลาสใดเป็นคลาสหลัก

17
Spring Boot - กำลังโหลดข้อมูลเริ่มต้น
ฉันสงสัยว่าวิธีที่ดีที่สุดในการโหลดข้อมูลฐานข้อมูลเริ่มต้นก่อนที่แอปพลิเคชันจะเริ่มต้นอย่างไร สิ่งที่ฉันกำลังมองหาคือสิ่งที่จะเติมฐานข้อมูล H2 ของฉันด้วยข้อมูล ตัวอย่างเช่นฉันมีรูปแบบโดเมน "ผู้ใช้" ฉันสามารถเข้าถึงผู้ใช้โดยไปที่ / ผู้ใช้ แต่เริ่มแรกจะไม่มีผู้ใช้ในฐานข้อมูลดังนั้นฉันต้องสร้างพวกเขา อย่างไรก็ตามมีการเติมข้อมูลด้วยฐานข้อมูลโดยอัตโนมัติหรือไม่? ในขณะนี้ฉันมี Bean ที่ได้รับอินสแตนซ์โดยคอนเทนเนอร์และสร้างผู้ใช้สำหรับฉัน ตัวอย่าง: @Component public class DataLoader { private UserRepository userRepository; @Autowired public DataLoader(UserRepository userRepository) { this.userRepository = userRepository; LoadUsers(); } private void LoadUsers() { userRepository.save(new User("lala", "lala", "lala")); } } แต่ฉันสงสัยมากว่าเป็นวิธีที่ดีที่สุดในการทำมัน หรือมันคืออะไร?

15
Spring 3.0 - ไม่สามารถค้นหา Spring NamespaceHandler สำหรับเนมสเปซ XML schema [http://www.springframework.org/schema/security]
ความคิดใดที่เป็นสาเหตุของสิ่งนี้ ไม่สามารถค้นหา Spring NamespaceHandler สำหรับ XML schema namespace [ http://www.springframework.org/schema/security] org.springframework.web.context.ContextLoader initWebApplicationContext: Context initialization failed org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/security] Offending resource: ServletContext resource [/WEB-INF/applicationContext.xml] นี่คือ applicationContext.xml ของฉัน: <?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd"> …

8
Spring AOP กับ AspectJ
ฉันอยู่ภายใต้การแสดงผลที่ Spring AOP ใช้ดีที่สุดสำหรับงานเฉพาะแอปพลิเคชันเช่นความปลอดภัยการบันทึกธุรกรรม ฯลฯ เนื่องจากใช้หมายเหตุประกอบ Java5 ที่กำหนดเองเป็นเฟรมเวิร์ก อย่างไรก็ตาม AspectJ ดูเหมือนจะเป็นมิตรกับรูปแบบการออกแบบที่ฉลาดกว่า ทุกคนสามารถเน้นข้อดีและข้อเสียต่าง ๆ ของการใช้ Spring AOP กับ AspectJ ในแอปพลิเคชัน Spring ได้หรือไม่?

5
วิธีการดำเนินการแบบสอบถาม IN () SQL ที่มี JDBCTemplate ของ Spring มีผลบังคับใช้อย่างไร
ฉันสงสัยว่ามีวิธีที่สง่างามกว่าในการทำคำสั่ง IN () กับ JDBCTemplate ของ Spring หรือไม่ ขณะนี้ฉันทำอะไรแบบนั้น: StringBuilder jobTypeInClauseBuilder = new StringBuilder(); for(int i = 0; i < jobTypes.length; i++) { Type jobType = jobTypes[i]; if(i != 0) { jobTypeInClauseBuilder.append(','); } jobTypeInClauseBuilder.append(jobType.convert()); } ซึ่งค่อนข้างเจ็บปวดเพราะถ้าฉันมีเก้าบรรทัดเพียงเพื่อสร้างประโยคสำหรับแบบสอบถาม IN () ฉันต้องการได้อะไรเช่นการแทนที่พารามิเตอร์ของข้อความที่เตรียมไว้
177 java  sql  spring  jdbc  jdbctemplate 

13
ดำเนินการวิธีการเริ่มต้นในฤดูใบไม้ผลิ
มีฟีเจอร์ Spring 3 ใดบ้างที่จะดำเนินการวิธีการบางอย่างเมื่อแอปพลิเคชันเริ่มต้นเป็นครั้งแรก? ฉันรู้ว่าฉันสามารถทำเคล็ดลับในการตั้งค่าวิธีการด้วย@Scheduledคำอธิบายประกอบและจะดำเนินการหลังจากเริ่มต้น แต่ก็จะดำเนินการเป็นระยะ
176 java  spring 

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