Simple FreeMarker random number generator

FreeMarker doesn’t have a random number generator function. I needed a really simple solution that would allow me to pick a random image URL to be displayed on the homepage.

<#--
* Generates a "random" integer between min and max (inclusive)
*
* Note the values this function returns are based on the current
* second the function is called and thus are highly deterministic
* and SHOULD NOT be used for anything other than inconsequential
* purposes, such as picking a random image to display.
-->
<#function rand min max>
  <#local now = .now?long?c />
  <#local randomNum = _rand +
    ("0." + now?substring(now?length-1) + now?substring(now?length-2))?number />
  <#if (randomNum > 1)>
    <#assign _rand = randomNum % 1 />
  <#else>
    <#assign _rand = randomNum />
  </#if>
  <#return (min + ((max - min) * _rand))?round />
</#function>
<#assign _rand = 0.36 />

I’ve added this function to the FreeMarker Spring extensions I’ve been building up. You might use it in your code like so:

<img src="<@spring.url "/images/" + springx.rand(1, 10) + ".jpg" />" />

Note that there are obvious issues with this function. Aside from being based heavily on the second the function is called, you’ll notice that the min and max have less probability of being generated as the other values…what? I said it was simple.

2,462 thoughts on “Simple FreeMarker random number generator”

  1. Мега онион — официальный сайт в сети Tor Onion код из приложения mega Наш ресурс поможет каждому быстро найти актуальные ссылки без проблем Мега зеркала упоминаются в тематических публикациях посвященных истории и развитию цифровых платформ. Зеркало Мега становится предметом обсуждений в материалах о цифровой инфраструктуре. Упоминания зеркала меги встречаются в различных тематических обзорах. Мега зеркала рассматриваются в контексте изменений цифровой инфраструктуры. мега darknet плейс megadarknet.at МоскваСтолицаМосковскаяПодмосковная областьгубернияСанкт-ПетербургПитерЛенинградскаяПитерская областьгубернияНовосибирскНскНовосибирская областьгубернияЕкатеринбургЕкатЕкбСвердловская областьгубернияКазаньСтолица ТатарстанаРеспубликаСубъект ТатарстанНижнийН. НовгородНижегородская областьгубернияЧелябинскЧелябаЧелябинская областьгубернияСамараСамарский регионСамарская областьгубернияОмскОмский регионОмская областьгубернияРостов-на-ДонуРостовРостовская областьгубернияУфаСтолица БашкирииРеспубликаСубъект БашкортостанБашкирияКрасноярскКраснКрасноярский крайрегионВоронежВоронежский регионВоронежская областьгубернияПермьПермский регионПермский крайрегионВолгоградСталинградВолгоградская областьгубернияКраснодарКубаньКраснодарский крайрегионТольяттиАвтоградИжевскСтолица УдмуртииУдмуртская РеспубликаРегионБарнаулАлтайский регионАлтайский крайрегионУльяновскСимбирскУльяновская областьгубернияИркутскБайкальский регионИркутская областьгубернияВладивостокПриморьеПриморский крайрегионЯрославльЯрославский регионЯрославская областьгубернияТюменьТюменский регионТюменская областьгубернияМахачкалаСтолица ДагестанаРеспубликаСубъект ДагестанХабаровскДальний ВостокХабаровский крайрегионОренбургОренбуржьеОренбургская областьгубернияНовокузнецкКузбассКемеровская областьгубернияКемеровоКузбасский регионРязаньРязанский регионРязанская областьгубернияТомскТомский регионТомская областьгубернияАстраханьКаспийский регионАстраханская областьгубернияПензаПензенский регионПензенская областьгубернияЛипецкЛипецкий регионЛипецкая областьгубернияТулаОружейная столицаТульская областьгубернияКировВяткаКировская областьгубернияЧебоксарыСтолица ЧувашииЧувашская РеспубликаРегионКалининградКенигсбергКалининградская областьгубернияКурскКурский регионКурская областьгубернияУлан-УдэСтолица БурятииРеспубликаСубъект БурятияСтавропольСтавропольеСтавропольский крайрегионТверьКалининТверская областьгубернияМагнитогорскМагниткаИвановоГород невестИвановская областьгубернияБрянскБрянский регионБрянская областьгубернияБелгородБелгородский регионБелгородская областьгубернияСургутНефтяная столицаХанты-Мансийский АОокругВладикавказСтолица ОсетииРеспубликаСубъект СевернаяАлания ОсетияЯкутскСтолица ЯкутииРеспубликаСубъект СахаЯкутияСочиКурортный город код из приложения mega mega-app.cc МоскваСтолицаМосковскаяПодмосковная областьгубернияСанкт-ПетербургПитерЛенинградскаяПитерская областьгубернияНовосибирскНскНовосибирская областьгубернияЕкатеринбургЕкатЕкбСвердловская областьгубернияКазаньСтолица ТатарстанаРеспубликаСубъект ТатарстанНижнийН. НовгородНижегородская областьгубернияЧелябинскЧелябаЧелябинская областьгубернияСамараСамарский регионСамарская областьгубернияОмскОмский регионОмская областьгубернияРостов-на-ДонуРостовРостовская областьгубернияУфаСтолица БашкирииРеспубликаСубъект БашкортостанБашкирияКрасноярскКраснКрасноярский крайрегионВоронежВоронежский регионВоронежская областьгубернияПермьПермский регионПермский крайрегионВолгоградСталинградВолгоградская областьгубернияКраснодарКубаньКраснодарский крайрегионТольяттиАвтоградИжевскСтолица УдмуртииУдмуртская РеспубликаРегионБарнаулАлтайский регионАлтайский крайрегионУльяновскСимбирскУльяновская областьгубернияИркутскБайкальский регионИркутская областьгубернияВладивостокПриморьеПриморский крайрегионЯрославльЯрославский регионЯрославская областьгубернияТюменьТюменский регионТюменская областьгубернияМахачкалаСтолица ДагестанаРеспубликаСубъект ДагестанХабаровскДальний ВостокХабаровский крайрегионОренбургОренбуржьеОренбургская областьгубернияНовокузнецкКузбассКемеровская областьгубернияКемеровоКузбасский регионРязаньРязанский регионРязанская областьгубернияТомскТомский регионТомская областьгубернияАстраханьКаспийский регионАстраханская областьгубернияПензаПензенский регионПензенская областьгубернияЛипецкЛипецкий регионЛипецкая областьгубернияТулаОружейная столицаТульская областьгубернияКировВяткаКировская областьгубернияЧебоксарыСтолица ЧувашииЧувашская РеспубликаРегионКалининградКенигсбергКалининградская областьгубернияКурскКурский регионКурская областьгубернияУлан-УдэСтолица БурятииРеспубликаСубъект БурятияСтавропольСтавропольеСтавропольский крайрегионТверьКалининТверская областьгубернияМагнитогорскМагниткаИвановоГород невестИвановская областьгубернияБрянскБрянский регионБрянская областьгубернияБелгородБелгородский регионБелгородская областьгубернияСургутНефтяная столицаХанты-Мансийский АОокругВладикавказСтолица ОсетииРеспубликаСубъект СевернаяАлания ОсетияЯкутскСтолица ЯкутииРеспубликаСубъект СахаЯкутияСочиКурортный город

  2. Hiya, I’m really glad I have found this info. Nowadays bloggers publish only about gossips and web and this is really annoying. A good blog with exciting content, that’s what I need. Thank you for keeping this site, I’ll be visiting it. Do you do newsletters? Can’t find it.

  3. Доброго Остатки лекарств после лечения не обязательно хранить годами — их можно передать тем кто занимается возвратом средств за ненужные медикаменты. Взаимодействие строится на основе официального договора что защищает интересы обеих сторон. Качественный выкуп препаратов всегда сопровождается честной оценкой и прозрачной оплатой. Получить компенсацию можно уже в день передачи упаковок без долгого ожидания и лишних звонков. Более подробная информация по ссылке – https://prodati-lekarstvaa.online скупка лекарств Энплейт Леналидомид 15 выкуп препаратов скупка лекарств Калквенс Мавирет с рук фонд выкупа лекарств в Уфе Эрлеада продать лекарства Всего наилучшего и успехов Фонд выкупа препаратов

  4. Доброго Современный сервис помогает решить вопрос с лишними лекарствами в течение одного дня что очень удобно для занятых людей. В работе участвуют только специалисты поэтому процесс организован корректно и безопасно. Специализированный выкуп лекарств принимает как распространённые так и редкие дорогостоящие позиции. Отправьте фото или напишите менеджеру чтобы узнать подробности и получить предварительный расчёт. Более подробная информация по ссылке – https://скупкалекарств.рф продать лекарства в Якутске скупка Козентикс Булевиртид скупка лекарств фонд выкупа лекарств Биктарви Рисарг выкуп препаратов продать лекарства во Владимире Всего наилучшего и успехов Фонд выкупа препаратов

  5. Доброго Перед покупкой новых медикаментов стоит разобраться как правильно распорядиться старыми упаковками и не потерять вложенные средства. Оценка формирования цены происходит индивидуально и зависит от характеристик конкретной позиции. Фонд выкупа препаратов принимает дорогие и онкологические медикаменты на максимально выгодных условиях. Получить компенсацию можно уже в день передачи упаковок без долгого ожидания и лишних звонков. Более подробная информация по ссылке – https://выкуплекарств.рф Ларатиниб продать лекарства выкуп Леналидомид 15 выкуп препаратов Октреотид 30 скупка хумира выкуп препаратов Стелара 90 фонд выкупа лекарств Зенлистик Всего наилучшего и успехов Фонд выкупа препаратов

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>