我见过有人使用 HTTP 代码 500 作为所有类型错误情况的通用错误代码(服务器错误、http 错误、代码异常、在 DB 中找不到预期记录、超时异常等)。但是,我也读过并听说此代码 500 仅应在源自应用程序服务器(在我的情况下为 JBoss)的错误的情况下使用,而不是应用程序本身,即不适用于代码异常或无效密码或 DB-record-not - 发现的情况。那么,我们什么时候应该从 REST 服务方法返回 HTTP 状态代码 500?
rest http-status-codes http-response-codes http-status-code-500 internal-server-error
我想要一个JPQL查询,可能看起来像:
entityManager.createQuery("Select a.* from A a WHERE CAST(a.num AS TEXT) LIKE '%345%' ", A.class);
Run Code Online (Sandbox Code Playgroud)
其中a.num是整数。我想将此转换为String以使用LIKE标准。但是,上面的转换在JPQL中不起作用。关于如何实现这一点的任何想法?
BigInteger.toString(16)可以完成工作,但有时十六进制的字节数会有所不同.我每次都需要512字节十六进制.我也尝试过apache的Hex和DataTypeConverter等等.但没有人保证这种一致性.是否有任何其他Java库可用于从给定的BigInteger生成固定长度的十六进制?
PS:我在发布之前搜索了stackoverflow,但没有发现有关固定长度十六进制问题的讨论.
我有一个非常简单的代码,由 Service -> RequestProcessor -> DAO 组成,每层有 2-3 个类(接口、抽象、具体)。
服务层:-
public interface Service {
public void saveOrUpdate(Object entity, String operationName);
}
}
public abstract class AbstractService implements Service{
public abstract ReqProcessor getRP();
@Override
public void saveOrUpdate(Object entity, String operationName) {
ReqProcessor hiberTestRP = getRP();
hiberTestRP.saveOrUpdate(entity, operationName);
}
}
@Component
public class ServiceImpl extends AbstractService {
@Autowired
public ReqProcessor hibertestRPImpl;
@Override
public HiberTestRP getRP() {
return hibertestRPImpl;
}
}
Run Code Online (Sandbox Code Playgroud)
ReqProcessor 层:-
public interface ReqProcessor {
public void saveOrUpdate(Object entity, String operationName); …
Run Code Online (Sandbox Code Playgroud) spring hibernate transactions transactional spring-transactions
biginteger ×1
hex ×1
hibernate ×1
java ×1
jpa ×1
jpa-2.0 ×1
jpql ×1
rest ×1
spring ×1
transactions ×1