小编Edy*_*rne的帖子

JPA查询仅选择特定列而不使用Criteria Query?

是否可以使用JPA查询从对象中仅选择属性A和B而不使用条件查询?

要选择所有属性,我只需执行以下操作:

SELECT i FROM ObjectName i WHERE i.id = 10
Run Code Online (Sandbox Code Playgroud)

但是我在遗留系统上有一个具有许多属性的对象,并且想要选择几个,即使我知道选择几个属性通常很快.

这可能不使用标准查询吗?

谢谢!

java jpa criteriaquery jpa-2.0 jpa-2.1

43
推荐指数
4
解决办法
10万
查看次数

如何将本地目录包含到Sphinx doc中?

如何将本地目录包含到Sphinx doc中?

我试过了

.. toc:: 
Run Code Online (Sandbox Code Playgroud)

但这似乎没有任何影响:文档中没有插入任何内容.

基本上我需要链接到当前页面中的部分放置在每个页面的特定位置.

这可能吗?

python documentation python-sphinx

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

如何定期更新Ember的模型(例如在setInterval中)?

我有一个Ember应用程序,其模型来自Ajax调用.第一个调用工作得很好,我有一个模型钩子Ember.Route返回一个Ajax调用的promise,它检索要显示的数据.

但是这个数据在后端经常发生变化,我想让webapp定期轮询服务器,比如每5秒轮询一次,然后更新或甚至更好地将模型数据与新检索的数据完全交换.

用Ember.js做这件事的合适方法是什么?我是Ember的新手,所以我有点迷失了.

javascript ajax jquery web-applications ember.js

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

为什么 React Router v6 似乎无法从 URL 中删除查询字符串参数?

我有一个应用程序,有时会加载查询字符串 param t

一开始,我希望应用程序读取此参数(如果可用)并将其从 URL 中删除。

在根组件上,我正在这样做:

    const [searchParams, setSearchParams] = useSearchParams();

    if (searchParams.has('t')) {
        const token = searchParams.get('t');
        if (token) {
            searchParams.delete('t');
            const newParams: {[key: string]: string} = {};
            searchParams.forEach((value: string, key: string) => {
                newParams[key] = value;
            });
            console.log('setting params: ');
            console.dir(newParams);
            setSearchParams(newParams);
            AuthController.setAccessToken(token);
        }
    }
Run Code Online (Sandbox Code Playgroud)

我看到它正确读取 paramt并且 newParams 对象为空或仅包含其他参数,但由于某种原因setSearchParams(newParams)似乎没有执行任何操作。参数t仍然在 URL 中。

我怎样才能让它从 URL 中删除这个参数?

reactjs react-router react-router-dom

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

如何正确判断"存在"JPA Criteria Query子句是返回true还是false?

我不知道如何执行返回布尔输出的JPA条件查询.

目标是在Oracle上呈现时具有看起来像这样的条件查询:

select 1 from dual where exists ( ... );
Run Code Online (Sandbox Code Playgroud)

where exists (...)我用子查询执行的部分.我正在努力解决外部问题.

这样做的实际用途是确定exists子句中的子查询是返回true还是false.

这就是我写的:

CriteriaBuilder criteriaBuilder = em.getCriteriaBuilder();

CriteriaQuery<Object> query = criteriaBuilder.createQuery();
query.from(Boolean.class);
query.select(criteriaBuilder.literal(true));

Subquery<Location> subquery = query.subquery(Location.class);
Root<Location> subRootEntity = subquery.from(Location.class);
subquery.select(subRootEntity);

Path<?> attributePath = subRootEntity.get("State");
Predicate predicate = criteriaBuilder.equal(attributePath, criteriaBuilder.literal("TX"));
subquery.where(predicate);
query.where(criteriaBuilder.exists(subquery));

TypedQuery<Object> typedQuery = em.createQuery(query);
Run Code Online (Sandbox Code Playgroud)


最后一行输出错误,指出" 布尔值不是实体 ".我认为我的问题是不知道如何表达查询的" from "部分,以便结果输出1或0/true或false - 而不是实体.

我知道我可以检索任何实体,然后检查结果列表的大小是否为1.

我问如何得到一个布尔结果,既避免了检索这些列的不必要的任务,也学习了如何做到这一点.

这有可能吗?

谢谢!爱德华多

java hibernate jpa criteria-api

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

如果我将mack-war-plugin配置为在缺少web.xml时失败,为什么缺少web.xml失败?

这是一个挑战:为什么这个构建失败了?

我已经配置了Maven的maven-war-plugin,在一个绝对的web.xml文件中不会失败,看来:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <executions>
            <execution>
                <id>prepare-war</id>
                <phase>prepare-package</phase>
                <configuration>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                    <archiveClasses>false</archiveClasses>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix />
                        </manifest>
                        <manifestEntries>
                            <Implementation-Build>${build.number}</Implementation-Build>
                            <Implementation-Title>${project.name}</Implementation-Title>
                            <Built-By>${user.name}</Built-By>
                            <Built-OS>${os.name}</Built-OS>
                            <Build-Date>${build.date}</Build-Date>
                        </manifestEntries>
                    </archive>
                    <webResources>
                        <resource>
                            <!-- this is relative to the pom.xml directory -->
                            <directory>./target/dist</directory>
                        </resource>
                    </webResources>
                </configuration>
            </execution>
        </executions>
    </plugin>
Run Code Online (Sandbox Code Playgroud)

但是,尽管有这种配置,它仍然像这样失败:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.4:war (default-war) on project com.specktro.orchid.operations.portal.frontend: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]
Run Code Online (Sandbox Code Playgroud)

我实际上没有web.xml,所以我需要它来组装没有它的战争.

我尝试<webXml>none</webXml>在配置中添加一个伪造,但这没有改变任何东西......

我错过了什么?

java war maven-3 maven maven-war-plugin

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

Ember-data根据id和其他参数查找记录?

在Ember文档中,我发现find()支持通过id查找:

this.store.find('post', 1); // => GET /posts/1
Run Code Online (Sandbox Code Playgroud)

并且还通过传递任意参数:

this.store.find('post', { name: "Peter" }); // => GET to /posts?name='Peter'
Run Code Online (Sandbox Code Playgroud)

但在我的情况下,我必须通过id找到,并传递一个额外的参数来请求所有字段包含在响应中(默认情况下会省略一些),如下所示:

this.store.find('post', 1); // => GET /posts/1?include=all
Run Code Online (Sandbox Code Playgroud)

我试着这样做:

this.get('store').find('post', params.post_id, { include : 'all' });
Run Code Online (Sandbox Code Playgroud)

但我的参数被忽略了.

这似乎是一个相当基本的用例,所以我必须遗漏一些东西......

我怎么能做到这一点?

javascript ember.js ember-data

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

支持Eclipse maven的Web应用程序引用工作区项目,但在运行Tomcat服务器时未部署这些项目

我有一个Web应用程序(Eclipse的动态Web应用程序),它使用Maven(m2e-wtp)进行构建和依赖项管理.这个Web应用程序的POM引用了我工作区中的一些其他项目,这些项目恰好是使用maven构建的eclipse插件(使用Tycho构建),以及来自Maven存储库的其他第三方库.

当我从CLI运行maven时,一切正常.所有依赖项都按预期包含在WEB-INF/lib目录中.

问题是当我尝试使用Eclipse运行项目时.我在Eclipse中配置的Tomcat服务器中运行应用程序,但我工作区中引用的项目未添加到已部署的war中.

我尝试将它们添加到部署程序集(在项目首选项下),并且完美地工作,但每次更新maven配置时,m2e都会清除这些设置.我在几个地方读到我们不应该手动添加条目,因为所有依赖项都应该由m2e管理...

问题是:当我从Eclipse运行时,如何让Eclipse将工作区项目依赖项添加到我的Web应用程序的WEB-INF/lib中?

我正在使用Eclipse J2EE 4.3.1(Kepler SR1).

我还尝试右键单击项目并选择Export - > WAR file,但导出的WAR文件也不包括引用的工作区项目.我假设这个问题影响了两个案例.

这非常令人讨厌,而且让我慢慢减速......此时我必须每天多次将项目重新添加到Deployment Assembly页面以保持它...

更新:我在POM中作为依赖项添加的工作空间项目出现在项目属性下的Referenced Projects列表中.但是,当我在Project Explorer中展开Maven依赖项时,列表中缺少工作区项目依赖项!只显示Maven存储库中的那些.他们当地人似乎默默地被忽视了......

java eclipse maven m2e m2e-wtp

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

IE 11为什么不渲染:after元素,显示在开发工具中划掉的CSS?

我在给定的屏幕上有一个带有两个字体图标的角度应用程序。这些在chrome,firefox和edge上都可以很好地呈现,但是在IE 11上却不显示。该图标将被呈现为content的的:after伪类,而根据我的研究,应该工作在IE 9和罚款。但是,在IE上,这些根本不呈现。

如屏幕截图所示,:after元素不在开发工具中显示的DOM中,并且css是正确的,但在开发工具中显示为划掉了:

IE 11显示了:s元素被划掉后的CSS,什么也没有渲染

在显示该问题的屏幕中已编译并实际使用的相关CSS如下所示:

.profile-picture[_ngcontent-vem-9]:after {
    font-family: Material Icons;
    content: "\E3B0";
    font-size: 48px;
    top: 32px;
    left: 25px
}
.profile-picture[_ngcontent-vem-9] .title[_ngcontent-vem-9],
.profile-picture[_ngcontent-vem-9]:after {
    display: block;
    position: absolute;
    color: #9e9e9e;
    transition-duration: .3s
}
Run Code Online (Sandbox Code Playgroud)

划掉的规则之上的规则无关。但是由于有人要见他们,所以他们是:

在此处输入图片说明

问题是:为什么会这样,如何解决?

html css internet-explorer internet-explorer-11 ie11-developer-tools

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

如何在 MySQL JDBC 驱动程序上设置连接超时?

我看到 JDBC MySQL 驱动程序在 10 秒后始​​终无法连接到已停止的 MySQL,但我想更改该超时。

我尝试将 ?connectTimeout=2000&socketTimeout=2000 添加到连接 URI,但这并没有什么区别。

有没有办法自定义驱动程序在连接到 MySQL 时返回超时所需的时间?

java mysql timeout jdbc connection-timeout

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