Lấy các giá trị được lưu trong thẻ “env-entry” của file web.xml
Đôi lúc các giá trị được lưu trữ trong các thẻ env-entry của tập tin web.xml cho các mục đích thay đồi dữ liệu mà không cần phải mở code. Ta có thể thao tác với nó bằng cách sau:
Giả sử file web.xml của bạn có các thẻ env-entry như sau:
<?xml version=”1.0″ encoding=”UTF-8″?>
<web-app version=”2.5″ xmlns=”http://java.sun.com/xml/ns/javaee” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”>
<!–…….–>
<env-entry>
<env-entry-name>factory</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>org.jnp.interfaces.NamingContextFactory</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>url</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>localhost:1099</env-entry-value>
</env-entry>
</web-app>
Bạn có thể lấy các trường này bằng đoạn code sau:
javax.naming.Context ctx = new javax.naming.InitialContext();
String val = (String) ctx.lookup("java:comp/env/url");
Như vậy, đối với những dữ liệu có sự thay đổi thường xuyên. Thay vì bạn phải mở code lên để sửa, bạn chỉ cần thay đổi nó trong web.xml. Thậm chí bạn thay đổi trong file war.
đinh thành đạt said
thưa thầy cho em hỏi làm thế nào để thực hiện 1 hàm đã biết trước tên nằm trong 1 class chưa biết trước tên phụ thuộc vào tham số truyền vào kiểu string.