Вы фактически выполняете запрос три раза, каждый раз перезаписывая переменную $users
. Вы получаете последнее, и у него нет свойства name
, потому что вы выбрали только phone
. Вы должны запустить его только один раз и указать все нужные столбцы в select()
.
public function listar(){
$users = DB::table('users')->select('name', 'email', 'phone')
->orderBy('updated_at', 'desc')->get();
}
Я сделал ту же самую вещь. Но это долго вернулось, таким образом, существуют, вероятно, лучшие инструменты сегодня.
То, что я узнал, что мне было нужно, было загрузчиком. Загрузчик основная программа не имел банок приложения в пути к классу. Это сначала загрузило обновление при необходимости и затем создало пользовательский classloader с банками приложения в пути к классу и вызвало основной метод приложения основной класс. Это не очень сложно. IIRC я должен был сделать это, потому что банки не могли быть перезаписаны в окнах, если бы они уже были в пути к классу.
Надеюсь, это поможет.
у нас было приложение 6 колебания несколько лет назад, которое имело самообновление. как Вы предложенный,
1) это загрузило последние банки по http,
2) скопированный их в папку.
3) так как приложение колебания запускается с помощью.BAT файла, после того, как пользователь сказал, что YES, мы будем закрывать приложение колебания и искать любые файлы в папке обновления. если да, запустите другой.BAT файл для копирования НОВЫХ БАНОК в необходимый каталог.
4) затем запуск ре приложение колебания.
Обновления, плагины, разделение беспокойства и т.д. точно, о чем OSGi - Вы могли бы хотеть смотреть на это. Это не прибудет свободное (чтение: с крутой начальной кривой обучения особенно при текущем использовании приемов classloading), по крайней мере, существуют хорошие реализации с открытым исходным кодом (felix - видят felix.apache.org, равноденствие - см. www.eclipse.org и других),
Для этих реализаций autoupdaters доступны - если Вы пишете свои модули правильно, возможно обновить во времени выполнения без перезапуска.
Я полагаю, что необходимо снова посмотреть на Java WebStart или по крайней мере детализировать "броский classloading", который Вы думаете, собирается вызвать проблемы (поскольку он мог бы также вызвать проблемы с любым решением, предложенным здесь).
IIRC, можно установить параметры командной строки с помощью (http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/syntax.html#resources) Java WebStart.
Я определенно сначала испытал бы Webstart. Мы имели большой успех, запускающий даже ранний Eclipse использование приложений RCP Webstart, и Вы не можете, вероятно, получить более броские проблемы classloading, чем с платформой OSGI (Равноденствие Eclipse).
Вы могли, возможно, предоставить еще некоторую подробную информацию в своем вопросе о Вас подход classloading?
Относительно GC и других настроек VM: они легки указать в Вашем JNLP (Сеть Java Запускающийся Протокол) файлы, используемые Webstart для запуска приложений.
Веб-Запуск Java является хорошим выбором. Материал GC не важен. Classloading мог быть проблемой. Но когда Вам доверял пользователь, можно предоставить AllPermisions, и Вы сможете сделать пользовательский classloading. Возможно, будет хорошо пересмотреть броский материал с classloading. Это действительно необходимо? Или взгляд на NetBeans. Там должен быть найден вдохновение для автоматического обновления.