Ваши понятия здесь неправильные.
Каждый раз, когда вы запрашиваете sc.next()
, он будет ждать ввода. Если этот вход равен тому, что вы хотите, тогда код будет выполнен.
Вы можете исправить это, сохранив sc.next()
в переменной String, а затем сравните его.
Здесь: if (sc.next().equals("1"))
запрашивает вход.
Если этот вход 1
, тогда код выполняется и --1--
распечатывается. Иначе, он перескакивает на это: if (sc.next().equals("2"))
. Теперь, если вход 2
, выполняется код для печати --2--
. Else, он переходит на if (sc.next().equals("3"))
и т. Д.
Вы можете исправить это:
sc.next()
в переменной String, а затем сравнивая его. Меня задают этот вопрос много, и действительно он сводится, насколько Вы хотите играть. Я не могу сказать Вам, как масштабирование RE SubSonic комментариев разрушительного Chris Cyvas было - и я отвечал на них с тех пор: (.
соглашение - мудро перфектом, SubSonic масштабируется очень приятно. С точки зрения роста проекта - ЛЮБОЙ инструмент, который Вы используете, потребует Вашего внимания. Даже NHibernate.
я записал сообщение о том, как использовать шаблон Репозитория с DI (поскольку Вы будете с NHIb или любым инструментом в этом отношении) с SubSonic 2.1:
http://blog.wekeroad.com/blog/subsonic-writing-decoupled-testable-code-with-subsonic-2-1/
я также записал сообщение на работе SubSOnic:
http://blog.wekeroad.com/blog/subsonic-scaling/
Hope это помогает.
Совет я вошел в тему, состоит в том, что Дозвуковой не увеличивается для обработки более сложных сценариев и поэтому если Вы будете идти по той дороге, то Вы закончите с заданием, пытающимся подкачивать к более усовершенствованному ORM.
я таким образом больше интересуюсь использованием NHibernate для сложных случаев, замка Active Record для более простых случаев и слежу за Быстрым NHibernate, который должен сделать NHibernate отображением намного легче (особенно, как только основанная на соглашении поддержка отображения улучшена).
Охватите Несоответствие Импеданса!
:)
Или не делают. Если Вы хотите производительность, сделайте это сами. Если Вы хотите это быстрый и легкий, пойдите с NHibernate и ActiveRecord. Если Вам нравится притворяться, что Вы на самом деле знаете то, что продолжается на уровне доступа к данным, используйте NHibernate и сидите с XML целый день для получения многих многим движение... Или просто... допустите ошибку.. сделайте это сами - ADO.NET FTW!
Рассмотрите свою команду и размер проекта при рассмотрении ActiveRecord.
, По моему опыту, ActiveRecord является абстракцией сверху NHibernate, который начинает протекать как решето при попытке более сложных сценариев.
, Если Вы имеете умеренно к в большой степени сложной или непростой схеме, палке с NHibernate. Можно нарезать и поставить на карту его к близкому совершенству.
другое место, Вы могли бы попасть в беду, - при необходимости в умеренно сложном запросе. ActiveRecord скрывает большую реализацию NHIBERNATE..., но Вам будет нужен он для сложного запроса, который станет очень трудным, если Вы будете абсолютно незнакомы с HQL. Будьте осторожными членами команды, только взламывают далеко в краях вместо того, чтобы изучить NHibernate и HQL.
Мы загрузились с дозвуковым и теперь пытаемся оценить, если мы собираемся переключиться на nhibernate теперь, когда мы в болевых точках дозвуковых.
Наша другая опция состоит в том, чтобы создать некоторый второй план, где мы используем дозвуковой, чтобы запросить и загрузиться, произвольные объекты с их "выполняются как введенный список" функциональность, которая делает основанное на имени отображение прочь sql оператора стиля произвольного linq. Или попытаться воссоздать часть его в nhibernate и осуществить рефакторинг остальных.
, Таким образом, я говорю дозвуковой, имеет смысл в небольших приложениях, но обслуживание на дозвуковых приложениях становится довольно волосатым, у нас есть особенно трудные времена с наложением кода доступа, и пред/сообщение в коде инициировал события. Для активного рекордного шаблона, дозвукового, определенно 80% там, но делает somethings облупленным способом и мешают Вам иметь любой реальный контроль над Вашей иерархией наследования, так как каждый класс должен наследовать таблицу для возвращения к той таблице.
Снова немного вне темы, но я буду второй замок ActiveRecord - вместо того, чтобы использовать базу данных в качестве Вашей модели (Дозвуковой подход), или провести часы в спагетти XML (подход NHibernate) Вы просто помещаете атрибуты в свои образцовые классы.
можно даже добраться, ActiveRecord к генерируют схему базы данных для Вас.
Мы использовали этот подход к довольно многим проектам теперь, и преимущества следующие:
Я думаю, что Вы в значительной степени закрепили его. Дозвуковой генерирует код, таким образом, Ваши бизнес-объекты будут отражающими из Вашей структуры базы данных. использование nHibernate, отображающее файлы, которые отображают Ваши бизнес-объекты на базу данных так Ваши объекты, может быть структурировано однако, Вам нравится.
, Насколько большой из проекта это? Будет необходимая долговременная поддержка? Эффективность затрат Дозвукового движения для возмещения каких-либо потенциальных проблем масштабирования?
Я записал сообщение в блоге недавно о.NET ORMs, который имеет Дозвуковой в ней, и ActiveRecord. На основе моего опыта это зависит от того, что проект делает, Дозвуковые работы намного лучше, если Вы происходите из среды SQL, но NHibernate имеет больше ontop его. ActiveRecord хорош для меньших проектов, я не убежден, что это быстрее для больших проектов, чем придерживание NHibernate.
Я не могу дать хорошее сравнение, поскольку я на самом деле еще не использовал NHibernate на проекте, но я использовал SubSonic и был очень доволен им. До сих пор я не поразил главных препятствий при использовании его.
Выезд это сообщение от Rob Conery, одного из создателей SubSonic. Он говорит о том, как разъединить Ваш код SubSonic от остальной части приложения. Он даже упоминает то, что эта архитектура позволила бы Вам позже выгрузить SubSonic для некоторого другого уровня доступа к данным, такого как NHibernate или LINQ к SQL.
я знаю, что на самом деле не отвечал на Ваш вопрос, но я надеюсь, что это все еще помогает.
Можно рассмотреть рассмотрение Быстрого NHibernate; это делает управление NHibernate бриз. Не уверенный, как трудный это должно было бы перейти существующая схема, но если Вы создаете новое приложение, хорошо определить модель предметной области и генерировать базу данных в в значительной степени любом сервере БД, о котором можно думать. От чтения других комментариев здесь, я думаю, что Быстрый NHibernate приносит NHibernate наравне с SubSonic для простоты конфигурации.
Немного вне темы, но в том же духе. Вы посмотрели замок ActiveRecord , он записан сверху NHibernate и устраняет необходимость провести время, создавая отображения XML от кода до базы данных. Как NHibernate можно структурировать объекты области, как Вы хотите и позже генерируете схему базы данных от этой структуры.
Используя ActiveWriter, внесенный инструмент, можно легко отобразиться от базы данных до объектов области.
Поскольку, что его ценность... У меня была возможность использовать обе технологии вполне немного больше начиная с задавания этого вопроса. И я должен остаться который, если эти технологии Вы выбираете вопросы очень мало. Верный NHibernate позволяет Вашим предприятиям быть немного менее связанными с Вашей структурой базы данных, но я все еще нахожу, что существует много случаев, где все еще необходимо изогнуться к желанию базы данных.
, По-моему, единственный истинный путь это к полностью отдельному Ваша Модель предметной области от Вашей Модели базы данных должна записать Ваше собственное DTOS (по существу POCOs для того, чтобы раздать данные) и затем отобразить их назад на Ваше предпочтительное ORM в Вашем слое данных. Но в большинстве случаев, этот подход будет меня больше стычки, чем ее ценность.
Я рекомендовал бы SubSonic, если Ваш проект работает с представлением ActiveRecord, что база данных является Вашей моделью. Вы получите один класс на таблицу, и все просто волшебно работает. Можно, конечно, настроить и переопределить вещи, но если бы Вы (или Ваш проект) существенно не соглашаетесь с подходом класса на таблицу, я посмотрел бы на NHibernate, так как это запускает с более сложного (но более гибкий) подход отображения Вашей модели предметной области к Вашей базе данных.
, Если Вы используете относительно простую базу данных, это находится под Вашим контролем (как в, можно измениться, столбцы, не отправляя восемь форм подразделению базы данных контролируют наблюдательный совет), я рекомендовал бы запуститься с SubSonic и переместиться в NHibernate, если SubSonic не удовлетворяет потребности.
Я оценил обоих, и я полагаю, что не было бы справедливо рекомендовать один по другому, не понимая, каковы Ваши цели. В Вашем вопросе Вы заявили различия хорошо, и я полагаю что потребности быть Вашим решающим фактором. Лично я использовал обоих и продолжу использовать обоих в зависимости от проекта.
Я считаю, что вам следует придерживаться того, что вы можете использовать лучше всего. Конечная цель - производительность и качество кода. Если вы знакомы с SubSonic, придерживайтесь его, а если вы знаете NHibernate в глубине, придерживайтесь NHibernate. Это очень субъективный вопрос. Вы также должны учитывать тот факт, что у вашего члена команды есть опыт. Если вы хороши в этом, вы сможете легко поддерживать его.
Я видел большие проекты, использующие SubSonic, тогда как NHibernate уже известен и широко используется.
Решение о выборе ORM не зависит исключительно от в самой ORM.