Показаны сообщения с ярлыком keyvalue. Показать все сообщения
Показаны сообщения с ярлыком keyvalue. Показать все сообщения

вторник, 8 марта 2016 г.

Чтение файла параметров (properties-файл) через JSP с помощью <fmt:setBundle>

Файл параметров (key-value pair) можно расположить здесь (будет доступно только в рамках WEB-приложения):
<tomcat>/webapps/<webapp>/WEB-INF/classes/myparams.properties
или здесь (будет доступно для всех WEB-приложений в рамках сервера:
<tomcat>/lib/myparams.properties

Тогда в JSP-файле (например, index.jsp) обращение к файлу параметров можно обратится так:
(scope - используется для того, чтобы контекст о подключении к БД был доступен всем JSP-файлам в рамках данного WEB-приложения)

<fmt:setBundle var="prop" basename="myparams"/>
<fmt:message bundle="${prop}" key="db.driver" var="dbDrv"/>
<fmt:message bundle="${prop}" key="db.url" var="dbUrl"/>
<fmt:message bundle="${prop}" key="db.user" var="dbUser"/>
<fmt:message bundle="${prop}" key="db.password" var="dbPswd"/>
<sql:setDataSource var="dbConnection" driver="${dbDrv}" url="${dbUrl}" user="${dbUser}" password="${dbPswd}" scope="application"/>
<sql:query var="result" dataSource="${dbConnection}" sql="select id, schemaname, azkversion, description from schemainfo" />

Листинг <tomcat>/webapps/<webapp>/WEB-INF/classes/myparams.properties:

db.driver=oracle.jdbc.driver.OracleDriver
db.url=jdbc:oracle:thin:@dbserver:1521:ORACLESID
db.user=MYSCHEMA
db.password=password

пятница, 4 марта 2016 г.

Чтение файла параметров (properties-файл) через JSP

Листинг index.jsp
<%@ page import="java.io.FileInputStream" %>
<%@ page import="java.util.Properties" %>
<%
FileInputStream file = new FileInputStream(request.getRealPath("test.file"));
Properties prop = new Properties();
prop.load(file);
String db_url = prop.getProperty("db.url");
%>
<html>
<head></head>
<body>
<%out.print("Test N 11");%>
<br>
<%out.print(request.getRealPath("/"));%>
<br>
<%out.print("From parfile: " + db_url);%>
</body>
</html>

Листинг test.file
db.driver=oracle.jdbc.driver.OracleDriver
db.url=jdbc:oracle:thin:@dbserver:1521:ORACLESID
db.user=MY_ORA_SCHEMA
db.password=pass

В браузере будет следующее:
Test N 11
/opt/apache-tomcat/webapps/my_app/
From parfile: jdbc:oracle:thin:@jdbc:oracle:thin:@dbserver:1521:ORACLESID

Архив