2011-01-19 24 views
9

Tôi đã thừa kế hai codebase khá tầm thường sử dụng mùa xuân để định cấu hình các ứng dụng. Bây giờ tôi cần phải cấu hình lại các ứng dụng. Nhưng rất nhiều cấu hình được cung cấp thông qua autowiring vì vậy nó gần như không thể tìm ra cấu hình thực tế là gì.Làm thế nào để cấu trúc lại một codebase sử dụng tính năng tự động chạy mùa xuân

Các dự án có kích thước vừa phải, một số mô-đun maven 20-ish cho mỗi dự án bao gồm các mô-đun thử nghiệm tích hợp và như vậy. Hầu hết các mô đun xác định một vài ngữ cảnh ứng dụng cho các mục đích khác nhau, có chứa một hoặc hai tệp cấu hình lò xo cục bộ cùng với một hoặc hai từ các mô-đun cốt lõi mà nó phụ thuộc vào. Kết quả là vô số cấu hình và tôi không thể thay đổi tên lớp hoặc tên biến (hoặc phương thức setter) mà không có rủi ro phá vỡ các phụ thuộc trong một số mô-đun thượng nguồn hoặc hạ lưu, ngay cả khi không có sự phụ thuộc như vậy ở bất kỳ đâu trong dự án.

Làm cách nào để hoạt động hiệu quả với các phụ thuộc tự động trong mùa xuân?

Bất kỳ ai, có lẽ ai đó thực sự thích tự động, cung cấp một số thông tin chi tiết về cách bạn làm việc với họ một cách hiệu quả?

(Tôi cũng thừa hưởng một dự án nhỏ kết hợp xml-file, autowiring và cấu hình chú thích hướng, làm cho mối quan hệ phụ thuộc hoàn toàn khó, nhưng tôi sẽ lưu những chú thích cho một câu hỏi riêng biệt sau)

+0

bạn có thể bật logging mùa xuân và có được manh mối như những gì đậu nó instantiating khi nó xử lý các tập tin xml bối cảnh ứng dụng? –

+0

Tôi đoán tổng số ngữ cảnh ứng dụng khác nhau trong một dự án là 50 hoặc hơn. Một số thậm chí còn được sử dụng chỉ bên trong đồ đạc fitnesse (trong một quá trình sinh ra bởi một quá trình sinh sản ...) và một số chỉ bên trong các ứng dụng web. Nó chắc chắn có thể, nhưng nó sẽ mất cả ngày cho một phụ thuộc duy nhất. Xây dựng tất cả các mô-đun và chạy tất cả các yêu cầu kiểm tra mất ít nhất một giờ. Với tất cả các phụ thuộc được khai báo trong xml (không phải là tôi thích xml, nó chỉ kém hơn các lựa chọn thay thế ...) mất tối đa 2 phút để theo dõi tất cả các cách sử dụng cho một phương thức hoặc lớp. – eirikma

+0

cho rằng bạn có thể viết mã để phân tích cú pháp tệp nhật ký mùa xuân và tạo tệp application-context.xml từ đó. Nghe có vẻ như nó gần như có ích. –

Trả lời

0

IDE là gì bạn sử dụng? Spring STS (một IDE dựa trên Eclipse) có rất nhiều công cụ để làm việc với các chú thích Spring và autowiring cũng như các bộ công cụ tái cấu trúc tốt.

+0

Tôi sử dụng IntelliJ cuối cùng 10. Nó có hỗ trợ mùa xuân tốt nhất mà tôi biết, nhưng nó vẫn không phát hiện ra nếu đổi tên một phương thức setter sẽ phá vỡ một mối quan hệ autowired-by-tên. – eirikma

+0

Tôi càng sử dụng nó càng nhiều thì tôi ghét cơ chế trùng hợp cấu hình này – eirikma

Các vấn đề liên quan