На вершине моей головы:
, основная трудность состоит в том, чтобы установить рабочий процесс между другим repos, не повреждая историю того, что было уже опубликовано (продвинутый общественности repo).
переоснову в особенности может быть трудно использовать правильно сначала, так как она действительно переписывает историю ответвления, и это изменяет SHA1, который связан с нею: к общедоступному ответвлению, которое означает много слияний от других разработчиков, вытягивающих от него.
Вы можете передать InputStream в свойство, так что ваш файл может в значительной степени быть где угодно и вызывать что угодно.
Properties properties = new Properties();
try {
properties.load(new FileInputStream("path/filename"));
} catch (IOException e) {
...
}
Итерировать как:
for(String key : properties.stringPropertyNames()) {
String value = properties.getProperty(key);
System.out.println(key + " => " + value);
}
По порядку:
Это загружает файл свойств:
Properties prop = new Properties();
InputStream stream = ...; //the stream to the file
try {
prop.load(stream);
} finally {
stream.close();
}
Я использую, чтобы поместить файл .properties в каталог, где у меня есть все файлы конфигурации, я не помещаю его вместе с классом, который к нему обращается , но здесь нет никаких ограничений.
Для имени ... Я использую .properties для подробности, не думаю, что вам следует называть его .properties, если вы не хотите.
Есть много способов создать и прочитать файлы свойств
:
.
По умолчанию Java открывает его в рабочем каталоге вашего приложения (это поведение фактически зависит от используемой ОС). Чтобы загрузить файл, выполните:
Properties props = new java.util.Properties();
FileInputStream fis new FileInputStream("myfile.txt");
props.load(fis)
Таким образом, любое расширение файла может использоваться для файла свойств. Кроме того, файл также можно хранить где угодно, если вы можете использовать FileInputStream
.
Кстати, если вы используете современную структуру, она может предоставлять дополнительные способы открытия файла свойств. . Например, Spring предоставляет ClassPathResource
для загрузки файла свойств с использованием имени пакета из файла JAR.
Что касается перебора свойств, то после загрузки свойств они сохраняются в объекте java.util.Properties
, который предлагает метод propertyNames ()
.
Вы можете сохранить файл где угодно. Если вы хотите сохранить его в своем jar-файле, вы захотите использовать Class.getResourceAsStream ()
или ClassLoader.getResourceAsStream ()
для доступа к нему. Если он находится в файловой системе, это немного проще.
Подойдет любое расширение, хотя .properties, по моему опыту, более распространено
Загрузите файл, используя Properties.load
, передав InputStream
или StreamReader
, если вы используете Java 6. (Если вы используете Java 6, я бы, вероятно, использовал UTF-8 и Reader
вместо кодировки по умолчанию ISO-8859-1 для потока.)
Итерировать по нему, как вы ' d перебирать обычную хеш-таблицу
(от которой наследуются Properties
), например, используя keySet ()
. В качестве альтернативы вы можете использовать перечисление, возвращаемое функцией propertyNames ()
.
JSLint - это один из способов очистки кода в нашем приложении. Это помогает во время проверки кода и принятия решения о том, хорошо написана сторонняя библиотека или нет. Мы также используем IntelliJ IDEA ' s инспекции, которые по большей части предупреждают о тех же проблемах. Мы также используем jQuery, который помог очистить большой объем кода.
Я обнаружу, что Model View Controller (MVC) часто реализуется с некоторой связью между представлением и какой-либо моделью - таким образом, данное представление специально предназначено для обеспечения визуализации данного объекта (модели).Шаблон презентационного представления модели вы обычно обнаруживаете, что презентатор заботится о работе с моделью и решает, какая информация из нее будет необходима для формирования какой-либо визуализации.
На этой диаграмме стрелки представляют зависимости:
Обычно вы слышите, что обсуждение этого шаблона возникает при обсуждении инфраструктуры ASP.NET MVC, и сталкиваетесь с информацией о шаблоне MVP и его реализации в ASP.NET WebForms. По моему опыту, часто считается, что WebForms сам по себе является структурой с шаблоном MVP - это неправда. используйте итератор или перечислитель или прямые методы класса Properties
или java.lang.System
class.
ResourceBundle
class:
ResourceBundle rb = ResourceBundle.getBundle("prop"); // prop.properties
System.out.println(rb.getString("key"));
Properties
class:
Properties ps = new Properties();
ps.Load(new java.io.FileInputStream("my.properties"));
Вот еще один способ перебора свойств:
Enumeration eProps = properties.propertyNames();
while (eProps.hasMoreElements()) {
String key = (String) eProps.nextElement();
String value = properties.getProperty(key);
System.out.println(key + " => " + value);
}