草庐IT

分数查询

全部标签

java - 如何在 SQL 查询中安全地使用 * 作为通配符

我需要实现一个搜索,用户可以在其中输入*作为通配符。他们正在搜索的数据库是一个SQL服务器。我正在考虑将*替换为%:userInput=userInput.replace('*','%');我担心因为我是“手动”执行此操作,所以我可能会引入一些错误或安全漏洞。你看到这样做有什么问题吗?有图书馆可以帮我做这件事吗?我使用Hibernate作为ORM映射器和CriteriaAPI来创建查询,如果它有助于回答的话。 最佳答案 这正是我们公司所做的。我们有两种产品,一种像您的示例一样在代码中使用简单的替换。另一个存储过程非常繁重的过程是在“

java - 如何使用 setMaxResults 更新 hibernate 查询?

我希望这是合适的部分,我对这段代码有疑问Transactiontransaction=session.beginTransaction();Queryquery=session.createQuery("updatedatabasesetfloop=:ctrl1"+"wherectrl=:ctrl2").setMaxResults(2);query.setMaxResults(2);query.setParameter("ctrl1",3);query.setParameter("ctrl2",5);我通过setMaxResults(2)请求只对前两个进行更新,他在我做的时候更新了所有

java - java中sql查询的正确格式

对于对数据库的jpa查询,我似乎可以得到正确的语法。使用squirrelSQL可以完美地工作。数据库是Derby,代码使用JPA。更新了新的查询和错误。这让我相信它是实体映射中不正确的东西。可能是joinColumn子句中的内容?修复了命名。这导致了第一个问题,即没有使用正确的实体名称。Queryq=em.createQuery("selectt,sum(t.result)fromSeriet,Playerp"+"wherep.id=t.player"+"groupbyt.player");Exception[EclipseLink-6076](EclipsePersistenceSe

java - 如何使用 Spring HATEOAS 添加查询字符串参数?

我正在尝试生成一个指向搜索资源的链接。因此,我想创建一个资源来提供我的搜索链接:POST/resourcesearch{param1:"value1",param2:"value2"}响应应该是:{"links":[{"rel":"self","href":"http://localhost:8080/resourcesearch"},{"rel":"resources","href":"http://localhost:8080/resources?param1=value1¶m2=value2"}}这是我的代码:@Controller@RequestMapping("/re

java - 如何在 URL 中传递两个查询参数

在此示例中,服务的URL的格式为/projection/projectionId:@Stateless@Path("projection")publicclassProjectionManager{@InjectprivateProjectionDAOprojectionDAO;@InjectprivateUserContextuserContext;@GET@Path("{projectionId}")@Produces("application/json")publicStringplaces(@PathParam("projectionId")StringprojectionId

java - 这个 HQL 查询有什么问题?

我是遇到了hibernate错误还是遇到了我没有看到的错误:selectenty.numberfromEntityAliasNameentywhereenty.myIdin(selectcons.myIdfromConsensconswherecons.numberin(selectord.numberfromOrdersordwhereord.customer=:customerandord.creationDate我得到的是以下内容:org.hibernate.util.StringHelper.root(StringHelper.java:257)Causedby:java.la

java - 如何从 hibernate 查询中获取 java.util.Map?

我想知道从hibernate查询中获取map数组的最佳方法是什么。Google表示要迭代query.list(),并将对象创建/放入空映射数组。我想会有一些优雅而有效的方法来做到这一点。有人能给我点主意吗? 最佳答案 参见HibernateDocumentation-15.6.Theselectclause:您可以使用as为选定的表达式分配别名:selectmax(bodyWeight)asmax,min(bodyWeight)asmin,count(*)asnfromCatcat这在与选择新map一起使用时最有用:selectne

java - Hibernate - 对具有枚举属性的 Bean 使用 native 查询和别名?

我在hibernate中使用native查询来为包含枚举属性的bean起别名时遇到问题。调用query.list()时出现InvocationTargetException。我的例子如下:@Entity(name="table1")publicclassClass1{@Column(name="col1")@NotNullprivateIntegerprop1;@Column(name="col2")@NotNullprivateStringprop2;@Column(name="col3",length=6)@Enumerated(value=EnumType.STRING)priv

java - JPQL:SELECT NEW 查询中的枚举文字

我有一个用于几个域类的描述符类。描述符类有一个字段“type”,它是一个枚举,表示域类的类型。在某些查询中,我想返回一个或多个描述符并将类型作为构造函数参数传递。所以我的想法是将它作为查询参数传递:Stringjpql="SELECTNEWmodel.ModelDescriptor"+"(t.id,t.name,t.description,:modelType)...";TypedQueryquery=em.createQuery(jpql,ModelDescriptor.class);query.setParameter("modelType",ModelType.forClass(

java - HQL 查询连接表

我正在使用hibernate连接到我的项目数据库。我想要一个查询,从我的数据库中获取带有特定语言描述和名称的产品。我拥有的参数是语言的简称,因此首先我必须获取语言的ID,然后获取所需语言的文本。我尝试了以下hql查询,但没有成功。fromProductsaspwherep.productlanguages.languages.shortnamelike'eng'这是数据应来自的数据库部分的图像:我已经通过sql查询得到了想要的结果,但我似乎无法让它在hibernate状态下工作。但我更愿意在hql中执行此操作。SELECT*FROMproductspINNERJOINproductla