问题列表 - 第35823页

如何为多对多关联编写HQL查询?

我有3张桌子Role[roleId, roleName],Token[tokenID, tokenName]&ROLETOKENASSOCIATION[roleId, tokenID].第三个是由hibernate自动创建的.现在,如果我只是编写一个Query来从Role类中获取所有对象,则它会提供所有角色对象以及关联的tokenID和tokenName.

我只是希望协会是单向的.ie:Roles ---> Tokens所以Role类中的注释看起来像,

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int roleId;
private String roleName;

@ManyToMany
@JoinTable(name="ROLE_TOKEN_ASSOCIATION",
 joinColumns={@JoinColumn(name="roleId")},
 inverseJoinColumns={@JoinColumn(name="tokenID")})
private List<Token> tkns;
    //Getters & Setters
Run Code Online (Sandbox Code Playgroud)

现在我想要特定roleId的tokenNames.首先我做了这样的查询SELECT tkns.tokenName FROM Role WHERE Role.roleId=:roleId 但是,我最终得到了一些解引用错误.

然后我把查询改为SELECT tkns FROM Role r WHERE r.roleId=:roleId 现在我已经得到了我想要的东西.但它也伴随着角色.

我该如何获得tokenName?其实我的问题已经解决了,但我想知道怎么做.

如果有人解释查询构造,它会对我有所帮助.

有什么建议!!

java hibernate hql

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

使用"执行sp_Executesql"时的权限

我有一个数据库,所有访问都由存储过程控制.DBA希望避免为用户提供对基础表的直接读/写访问权限,这是我能理解的.因此,所有数据的更新和选择都是通过存储过程完成的.基本上,他创建了一个角色,该角色对数据库中的所有存储过程具有EXECUTE权限,并为用户提供该角色.

问题是其中一个存储过程动态构建一个SQl查询并通过"Execute sp_Executesql"执行它.在不详细说明的情况下,查询是动态构建的,因为它会根据许多用户输入参数而显着变化.有问题的存储过程只是一个SELECT sql语句,但我发现只是给存储过程EXECUTE权限是不够的.存储过程中引用的使用"执行sp_Executesql"的基础表需要被赋予"datareader"访问权限,否则存储过程将失败.

有关如何纠正此问题的任何想法?我真的想将对表的访问限制为仅存储过程,但我需要找到一种方法来解决使用"Execute sp_Executesq"l的存储过程.谢谢.

sql sql-server permissions dynamic-sql sp-executesql

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

来自CALayer的CGImage(或UIImage)

我创建了一个CALayer (我在图层中添加了几个形状,但最终,我有一个CALayer),而且我在将它添加到CGImage时遇到了很多麻烦.我找到了一些参考[CALayer renderInContext:ctx],但我不知道如何实现它.

有没有人这样做过?

iphone objective-c quartz-graphics

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

android意图导航到多个目的地?

有没有办法导航到多个目的地?就像你可以在谷歌地图上做的?

navigation android android-intent

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

如何构建通用存储库

我正在使用NHibernate在ASP.NET MVC中开发一个Web应用程序.

根据我在Google上发现的文章和教程,我正在为我的课程使用Repository.

我有10个类和10个存储库.今天我发现除了班级以外,90%的矿藏都是完全相同的.这是一个例子:

public class PromocaoRepository:IPromocaoRepository {
    private ISession Session;

    public PromocaoRepository() {
        this.Session = NHibernateSessionFactory.OpenSession();
    }

    public void Add(Promocao promocao) {
        using(ITransaction transaction = this.Session.BeginTransaction()) {
            this.Session.Save(promocao);
            transaction.Commit();
        }
    }

    public void Edit(Promocao promocao) {
        using(ITransaction transaction = this.Session.BeginTransaction()) {
            this.Session.Update(promocao);
            transaction.Commit();
        }
    }

    public void Remove(Promocao promocao) {
        using(ITransaction transaction = this.Session.BeginTransaction()) {
            this.Session.Delete(promocao);
            transaction.Commit();
        }
    }

    public Promocao GetById(int id) {
        return this.Session.Get<Promocao>(id);
    }

}
Run Code Online (Sandbox Code Playgroud)

有一种方法可以做我可以在我所有课程中使用的通用存储库吗?

如果可能的话,如果我需要为特定类创建特定方法,我该怎么办?

oop nhibernate asp.net-mvc design-patterns repository

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

JBoss 5关闭了什么?

在较高的层面上,JBoss 5的关闭是做什么的?如果我只是杀死java进程而不是优雅地关闭JBoss,可能会出现什么问题?

对我的应用程序来说,优雅的JBoss 5关闭大约需要6分钟,这非常大并且有305个EJB.在从jndi解除EJB LocalHomes绑定之前,JBoss似乎暂停了很长时间.

鉴于此,我正在考虑简单地杀死java进程.我想知道如果我这样做会出现什么问题.

我主要在*nix中运行JBoss,有时在Windows中运行.

performance jboss shutdown jboss5.x

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

在字符串中搜索字符串片段数组

我需要搜索一个字符串,看它是否包含字符串数组中的任何文本.例如

excludeList ="警告","一个常见的不重要的事情","别的东西"

searchString =这是一个字符串告诉我们一个常见的不重要的事情.

otherString =常见但不相关的东西

在这个例子中,我们会在searchList中的数组中找到"常见的不重要的东西"字符串,并返回true.但是otherString不包含数组中的任何完整字符串,因此返回false.

我确定这不复杂,但我已经看了太久了......

更新:到目前为止我能做的最好的是:

#list of excluded terms
$arrColors = "blue", "red", "green", "yellow", "white", "pink", "orange", "turquoise"

#the message of the event we've pulled
$testString = "there is a blue cow over there"
$test2="blue"
$count=0
#check if the message contains anything from the secondary list
$arrColors | ForEach-Object{
    echo $count
    echo $testString.Contains($arrColors[$count])
    $count++

}
Run Code Online (Sandbox Code Playgroud)

它虽然太优雅了......

powershell

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

子目录(web)上下文无法访问<context:property-placeholder>属性

一个典型的用例:我有applicationContext.xmldispatcher-servlet.xml.在父上下文(applicationContext.xml)中,我有:

 <context:property-placeholder location="classpath:application.properties" />
Run Code Online (Sandbox Code Playgroud)

但是,Web上下文无法访问由它加载的属性 - 无论是在xml中还是在使用中@Value.(它们只是没有解析而且表达式(${varName})被设置为值而不是)

我通过添加<context:property-placeholder>to来处理它dispatcher-servlet.xml,但我想知道是否:

  1. 这是预期的行为
  2. 没有更好的方法将属性公开给子上下文.

spring spring-mvc

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

JavaScript:如何在onclick属性中执行if/else语句?

尝试在onclick属性中添加if/else语句时,我遇到了语法错误.这是什么语法?

<div onclick="var element = $('#selector'); if (element.val() == 'something') { alert('hello'); } else { alert('goodbye'); } ">
    Click here 
    <input type="hidden" id="selector" value="something" />
</div>
Run Code Online (Sandbox Code Playgroud)

...是的,我必须在onclick属性中有这个javascript(不能将它移动到一个函数).

javascript

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

删除SVN分支

我创建了一个名为"features"的SVN项目的分支,现在每当我尝试更新所述项目时,它都会带来一个features文件夹,其中包含该分支的另一个项目副本.有没有办法从存储库中完全删除分支,以便不再发生这种情况?

svn version-control branching-and-merging

84
推荐指数
4
解决办法
12万
查看次数