我正在尝试让Hibernate Validator设置为使用来自Spring MessageSource的消息.我在我的设置中有以下设置messages-context.xml:
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>WEB-INF/messages/messages</value>
<value>WEB-INF/messages/exceptions</value>
<value>WEB-INF/messages/fields</value>
<value>WEB-INF/messages/buttons</value>
<value>WEB-INF/messages/validation_errors</value>
</list>
</property>
</bean>
<bean id="validator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<property name="validationMessageSource" ref="messageSource" />
</bean>
<bean id="localeChangeInterceptor"
class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="lang" />
</bean>
<bean id="localeResolver"
class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
<property name="defaultLocale" value="en_GB" />
</bean>
Run Code Online (Sandbox Code Playgroud)
我已经尝试了各种方法来解决如何将消息密钥传递给hibernate验证器(包括和不包含{},也没有指定自定义密钥 - 只使用默认密钥:
@NotEmpty(message="validation.required.field")
@Length(max=255, message="{validation.too.long}")
private String firstName;
@NotEmpty(message="{validation.required.field}")
@Length(max=255, message="{validation.too.long}")
private String lastName;
@NotNull
@Past(message="{validation.must.be.past}")
private Date dateOfBirth;
@NotEmpty(message="{validation.required.field}")
@Length(max=255, message="{validation.too.long}")
private String email;
Run Code Online (Sandbox Code Playgroud)
我validation_errors_en_GB.properties看起来像这样:
validation.required.field=this is a required field
validation.too.long=this field can …Run Code Online (Sandbox Code Playgroud) 在Ruby中,有一种简单的方法可以将n维数组中的每个元素乘以一个数字吗?
这样:
[1,2,3,4,5].multiplied_by 2 == [2,4,6,8,10]
和[[1,2,3],[1,2,3]].multiplied_by 2 == [[2,4,6],[2,4,6]]?
(显然我编写了multiplied_by区分它的功能*,它似乎连接了数组的多个副本,遗憾的是这不是我需要的).
谢谢!
首先,如果可以,我会切换到Linux,但由于第三方依赖,我不能.
我正在完成并将rails应用程序部署到Windows 2008服务器上.在服务器上进行测试时,该应用程序被证明非常缓慢,请求每次需要2-5秒.在我的开发机器上,这远不是那么慢,而且据我所知,Rails本身的缓慢,即.我看到Completed 200 OK in 1859ms (Views: 1687.5ms)服务器上的日志记录与Completed 200 OK in 347ms (Views: 298.0ms)我的开发机器上的日志记录相比.
我知道Rails在Windows上应该比在Linux上慢,但是为什么它在Windows服务器上比在我的Windows 7开发机器上慢?
在开发中我运行WEBrick,在服务器上我在apache下运行瘦.我也试过在我的开发机器上运行瘦,如果不是WEBrick,它会更快.有没有人对可能造成如此大幅减速的事情有什么建议?任何事情都会非常感激.
更新:似乎Ruby本身在服务器上显着变慢.在irb中运行以下命令需要0.6秒,但在服务器上平均需要3秒以上:
n = Time.now ; x = 0 ; 10000000.times { x += 1 } ; puts Time.now - n
Run Code Online (Sandbox Code Playgroud)
什么可能导致Ruby在服务器上运行得如此之慢(超过3倍)?可能是Windows版本?或者是其他东西?Ruby版本完全相同:ruby 1.9.2p290 (2011-07-09) [i386-mingw32].
再次更新:
因为之前没有提到这个而感到愚蠢,但这是一个VPS.然而,虽然我愿意接受这会让它减慢一点 - 实际上慢了3倍?
这是一个空闲的白日梦,但是有可能通过一些巧妙的元编程技巧在Ruby中定义一个新的逻辑运算符吗?我想定义一个but运算符.
例如,如果我想做某事,x但如果不是y,我必须写一些类似的东西:
if x and not y
Run Code Online (Sandbox Code Playgroud)
但我想写
if x but not y
Run Code Online (Sandbox Code Playgroud)
它应该完全相同,and但可以由程序员明智地使用以增加代码的易读性.
我试图让delayed_job作为Windows服务工作.
我完全厌倦了Windows,我甚至无法用语言表达,但由于第三方依赖,我现在仍然坚持使用它.
运行rake jobs:work在控制台中启动工作程序没有问题.
我创建了一个空的Windows服务来启动和关闭工作者使用sc create DelayedJobWorker....
但是,我无法获得启动和停止工作的服务.我不确定最好的方法是什么 - 我应该将服务参数化/要求它调用.
任何建议感激不尽.
我正在尝试Map使用默认值创建一个mutable ,ListBuffer当请求的元素尚未在地图中时,该默认值会创建一个新的.但是,虽然新地图作为默认值返回,但它不会保留在地图中.也许这就是它的工作方式,我想,但是当我用一个Int而不是ListBuffer它测试它时它完全按照我想要的方式进行测试.这里有一些代码来解释我的意思 - 我做错了什么?
首先,它在这里使用Map[Int]:
scala> val a = collection.mutable.Map(1 -> 1).withDefault(i => 0)
a: scala.collection.mutable.Map[Int,Int] = Map(1 -> 1)
scala> a(1) += 1 // adding to an existing element works as expected
scala> a
res48: scala.collection.mutable.Map[Int,Int] = Map(1 -> 2)
scala> a(2) += 1 // what about adding to a non-existing element?
scala> a // the new element has been added to the map
res50: scala.collection.mutable.Map[Int,Int] = Map(1 -> …Run Code Online (Sandbox Code Playgroud) 对 Erlang 来说是全新的。我试图定义函数组合一些功能,比如compose,juxt和pipe而运行到一个事实,即二郎神没有(据我所知)可变参数所以这是很难写只是一个版本的这种功能,将所有输入工作.
到目前为止,我最好的想法是将不同数量的函数硬编码到一个合理的数字,并提供一个版本,该版本采用更大的列表,如下所示:
pipe (X, Fs) when is_list(Fs) -> lists:foldl(fun (F, Acc) -> F(Acc) end, X, Fs);
pipe (X, F) -> F(X).
pipe (X, F, G) -> G(F(X)).
pipe (X, F, G, H) -> H(G(F(X))).
pipe (X, F, G, H, I) -> I(H(G(F(X)))).
pipe (X, F, G, H, I, J) -> J(I(H(G(F(X))))).
pipe (X, F, G, H, I, J, K) -> K(J(I(H(G(F(X)))))).
pipe (X, F, G, H, I, J, K, L) -> L(K(J(I(H(G(F(X))))))). …Run Code Online (Sandbox Code Playgroud) 我是Scala的新手,所以请好好的.如果我遗漏了一些明显的东西,你不得不原谅我.
我正在尝试创建一个类似枚举的结构来表示Scala中一周的日子.我想要一个方法,接受一个字符串,可以是数字1到7,当天的全名,或三个字母的缩写,任何大小写,并返回正确的一天.理想情况下,我希望能够通过写作来检索正确的日子DayOfWeek(_),据我所知,事情意味着这种方法需要apply.单个值也必须是一个被调用的特征的子类(或混合),目前这个特征CalendarField不定义任何方法或成员.
这是我目前的尝试:
object DayOfWeek extends Enumeration with CalendarField {
val Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday = Value
def apply(v:String) = {
v.toUpperCase match {
case Int(x) => x match {
case 1 => Sunday
case 2 => Monday
case 3 => Tuesday
case 4 => Wednesday
case 5 => Thursday
case 6 => Friday
case 7 => Saturday
case _ => throw new IllegalArgumentException("Invalid value for day of week: " + …Run Code Online (Sandbox Code Playgroud) 刚开始学习新项目的scala.已经达到了我想为应用程序将要运行的不同环境定义不同属性文件的程度,理想情况下与Rails类似 - 非常轻量级,每个基于其加载的环境只有一个不同的属性文件名称.我真的不在乎它是java属性文件,YML还是scala代码.
本着不重新发明轮子的精神,我一直在寻找是否有一些可接受的标准Scala方式,但我找不到一个,我在这里发现了一些相似但不完全相同的问题,人们建议使用启动脚本中的系统属性,但这感觉它最终会成为一场噩梦.
如果需要,我显然可以实现它,但感觉就像应该存在的那种东西.那么 - 是吗?
如果这有所作为,我正在使用sbt.
我有一组模型对象和一组包装器对象,以提供额外的功能.
我希望能够简洁地将模型对象的集合转换为包装器对象,使用允许您编写的相同简写List("x", "y", "z").foreach(println),如下所示:
class Model
class ModelWrapper(val m: Model)
object ModelWrapper { def apply(model: Model) = new ModelWrapper(model) }
val m1 = new Model; val m2 = new Model; val m3 = new Model
List(m1, m2, m3).map(ModelWrapper)
Run Code Online (Sandbox Code Playgroud)
因此ModelWrapper,作为参数传递,转换为ModelWrapper(_)对伴随对象的调用.
但是,当我尝试这个时,我得到一个类型不匹配错误,如下所示:
<console>:14: error: type mismatch;
found : ModelWrapper.type (with underlying type object ModelWrapper)
required: Model => ?
List(m1, m2, m3).map(ModelWrapper)
Run Code Online (Sandbox Code Playgroud)
但是,如果我创建ModelWrapper一个case class,并删除伴随对象,它的工作原理.我不想把它作为一个案例类,因为它添加的行为不适合案例类工作的整体方式.例如,具有相同模型类作为参数的两个包装类不一定相等.
我想知道的是,在这种情况下,案例类和伴随对象之间有什么区别?我可以在不使用案例类的情况下得到我想要的东西吗?
scala ×4
ruby ×3
arrays ×1
case-class ×1
delayed-job ×1
enums ×1
environment ×1
erlang ×1
hibernate ×1
localization ×1
map ×1
mutable ×1
performance ×1
spring-mvc ×1
thin ×1
validation ×1