问题列表 - 第48595页

无效的Hibernate警告?"字段上的@Access(AccessType.PROPERTY)无效"

我有以下实体类用户:

public class User implements Serializable {

    @Column(length = 10, name = "user_type")
    @Access(AccessType.PROPERTY)
    private String userTypeS;

    @Transient
    private UserType userType;
    ...
    public void setUserType(UserType userType) {
        this.userType = userType;
        this.userTypeS = this.userType.getType();
    }

    protected void setUserTypeS(String userTypeS) {
        this.userTypeS = userTypeS;
        userType = UserType.toUserType(userTypeS);
    }
Run Code Online (Sandbox Code Playgroud)

UserType是一个枚举.这个问题是我不能简单地使用@Enumerated注释来映射UserType,因为代码中枚举的表示不同于,例如:

public enum UserType {
CUSTOMER_NON_PRO("custnop") ...
Run Code Online (Sandbox Code Playgroud)

与实体协作时,我希望能够将枚举设置为userType而不是它的String表示.为此我创建了一个公共setter,它设置enum(userType)并将其转换为它的String表示(用hibernate映射).类似地,有一个受保护的setUserTypeS必须由hibernate调用,并将String userType映射到枚举UserType.

当然,hibernate必须使用setter来填充实体.在我们的项目中,最好在getters/setter上设置属性本身的注释.因此,hibernate将使用内省直接设置属性值(从而绕过setter).对于userTypeS,我指出访问类型是PROPERTY(io FIELD),因为hibernate将调用setUSerTypeS.

所有这一切顺利进行."问题"是我们的日志中会看到以下警告:

org.hibernate.cfg.AnnotationBinder - 在字段上放置@Access(AccessType.PROPERTY)没有任何效果.

此警告似乎不正确.如果我将从@Access(AccessType.PROPERTY)字段userTypeS中删除,那么hibernate将不会调用setter,因此不会设置enum userType.因此,放置@Access(AccessType.PROPERTY)确实有影响.

此警告信息是无效还是过时,或者我是否误解了某些内容?

谢谢,
Stijn

java hibernate jpa

7
推荐指数
1
解决办法
2205
查看次数

在Matlab中对浮点数进行位修改

我在Matlab中使用非负矩阵分解将矩阵分解为两个因子.使用这个,我得到了两个双精度浮点矩阵,B和C.

样本结果是

B(1,1) = 0.118
C(1,1) = 112.035
Run Code Online (Sandbox Code Playgroud)

我现在正在尝试修改这些值中的特定位,但在任一值上使用bitset函数我得到一个错误,因为bitset需要无符号整数.

我也尝试过使用dec2bin函数,我假设它会将小数转换为二进制,但它为B(1,1)返回'0'.

有没有人知道在不损失精度的情况下处理浮点数的任何方法?

floating-point binary matlab bit-manipulation

5
推荐指数
1
解决办法
1451
查看次数

与Ruby的CGI.parse方法完全相反?

我想对查询参数进行一些清理.

我解析查询CGI.parse,然后我删除一些参数,但我找不到相反的方法来构建查询.

我真的不想做类似的事情

params.map{|n,v| "#{CGI.escape n}=#{CGI.escape v.to_s}"}.join("&")
Run Code Online (Sandbox Code Playgroud)

必须有一个更简单的方法.在那儿?

ruby cgi

10
推荐指数
2
解决办法
1537
查看次数

关键词"瞬态"在Java中意味着什么?

我在某处看到了


transient private TrackDAO trackDAO;

java transient

179
推荐指数
3
解决办法
18万
查看次数

使FB.api()调用同步

我在FB javascript SDK上创建了fQuery API.到目前为止一切正常,但我现在卡在FB.api电话中.

实际上,我正在尝试使用FB.api函数加载facebook用户对象即"/ me".

function somefunc() {
  var r = fQuery.load(selector);  //selector = "me"
  return r;
}


fQuery.load = function( selector )  {
  fQuery.fn.response = "";

  return FB.api( "/" + selector, function (response) {
    // we get response here.
  });
}
Run Code Online (Sandbox Code Playgroud)

是否可以返回响应,或者我们可以进行同步调用.我已经尝试了很多方法来解决但却无法获得成功.

请提供建议.

javascript facebook asynchronous synchronous facebook-graph-api

7
推荐指数
1
解决办法
1万
查看次数

Windows共享主机 - 自定义计划任务

我有一个Windows共享主机,我需要每天运行一些预定的c#可执行文件创建站点地图,发送新闻通讯等...

提供商告诉我,出于安全原因,我无法运行可执行文件.我能做什么?

提供商建议我购买VPS,但不认为花更多的钱来运行一些预定任务是有意义的.

是否存在替代方式?

asp.net shared-hosting asp.net-mvc-2

3
推荐指数
1
解决办法
2283
查看次数

在RTF中设置列宽

我有我希望的简单问题!

我正在生成一个简单的RTF表,随后在MS Word中打开.该表生成正常,但列宽有点小,导致一些自动换行(不是我想要的).

我生成的RTF代码用于两行三列表,其形式如下:

\trowd \trautofit1 
\intbl
\cellx1 
\cellx2 
\cellx3 
{a\cell b\cell c\cell }{\trowd \trautofit1 
\intbl
\cellx1 
\cellx2 
\cellx3 
\row} 
\trowd \trautofit1 
\intbl
\cellx1 
\cellx2 
\cellx3 
{d\cell e\cell f\cell }{\trowd \trautofit1 
\intbl
\cellx1 
\cellx2 
\cellx3 
\row} 
Run Code Online (Sandbox Code Playgroud)

设置列宽需要添加什么?我已经尝试改变单词中的列宽,然后检查输出,但至少可以说它有点模糊!

rtf width

5
推荐指数
2
解决办法
1万
查看次数

我如何知道UIScrollView何时停止减速?

我想在UIScrollView停止时添加动画?我该如何实现呢?通过使用计时器并检查减速值?或者我认为建议使用4.0块.

iphone events objective-c uiscrollview ipad

1
推荐指数
1
解决办法
563
查看次数

5
推荐指数
2
解决办法
9096
查看次数

检查sql中的datetime是否为今天

我有一个从SQL查询返回的日期(日期时间类型字段),并希望将它与今天的PHP日期进行比较.我已经咨询过php手册,有很多方法可以做到这一点.我终于想出了一个比较字符串的解决方案,但我想知道是否有任何"更好"(最佳实践),更清晰或更快的方法.这是我的解决方案:

// $sql_returned_date='2008-10-17 11:20:04'

 $today = new DateTime("now");
 $f_today=$today->format('Y-m-d'); //formated today = '2011-03-09'
 $sql_date=substr($sql_returned_date,0,9); //I get substring '2008-10-17'
 if($f_today==$sql_date)
 {
    echo "yes,it's today";
 }else{
    echo "no, it's not";
 }
Run Code Online (Sandbox Code Playgroud)

谢谢

php mysql datetime date

1
推荐指数
2
解决办法
1万
查看次数