【java – 使用可选参数在HQL中动态搜索查询?】教程文章相关的互联网学习教程文章

java – 类型参数在泛型对象实例化的构造函数中有用吗?【代码】

我知道自Java 7以来,在实例化过程中在构造函数中重复泛型类的类型是一种冗余.但是钻石操作符<>如何重复呢?换句话说,我想知道这有什么区别:List<String> Fruits = new ArrayList<>();还有这个List<String> Fruits = new ArrayList(); 或这个Map<Integer, String> students = new HashMap<>();还有这个Map<Integer, String> students = new HashMap();先感谢您解决方法:是,有一点不同.菱形运算符只是指定整个泛型类型的快捷方式,因...

Java AOP JoinPoint不获取参数名称【代码】

我正在使用Java Spring Mvc和Spring AOP从用户那里查找参数名称.我有一个控制器,它从用户获取参数并调用服务.我有一个方面,在服务之前运行.方面应检查username和apiKey参数是否存在.这是我的代码: 控制器:@RequestMapping(method = RequestMethod.POST, produces=MediaType.APPLICATION_JSON_VALUE) public @ResponseBody String getDomainWithFoundIn(@RequestParam (value="domain") String domain, @RequestParam (value="use...

java – Spring 4 – HTTP Status 400,不存在必需参数【代码】

我在index.jsp中有Spring表单:<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <html> <body> <form:form action="save" name="employeeDTO" method="POST"><label for="name">Name</label><input id="name" type="text" required><br><label for="surname">Surname</label><input id="surname" type="text" required><br><label for="email">E-mail</label><input id="email" type="email" require...

Java – 参数和增强的For循环复制问题【代码】

假设我有这样的代码;public void insert(Student[] stus) {int count = 0;for(Student s: stus){s.setId( bla bla);stus[count].setId(bla bla) // is this line needed?count++;} }因此,如果我从增强的for循环更改s上的任何内容,我是否也可以看到stus数组中的更改?循环复制的增强如何在参数或其他东西中起作用?解决方法:增强的for循环不会创建正在迭代的Collection或数组元素的副本,因此s.setId()和stus [count] .setId()将更新...

java – 使用构造函数参数在启动时初始化bean的Spring启动【代码】

我需要在启动时使用带有构造函数参数的Spring Boot初始化以下PointQuadTree类,并使该对象在整个应用程序中可用.构造函数参数’minX,maxX,…’需要来自application.properties文件. PointQuadTreepublic class PointQuadTree<T extends PointQuadTree.Item> {private final Bounds mBounds;public PointQuadTree(double minX, double maxX, double minY, double maxY) {this(new Bounds(minX, maxX, minY, maxY));}...}边界public c...

java – 如何从optional中提取字段参数,如果为null则抛出异常?【代码】

String result = service.getResult();if (result == null) {DaoObject obj = crudRepository.findOne(..);if (obj != null) {result = obj.getContent();} else {throw NotFoundException();} }service.process(result);如果DaoObject是一个Optional< DaoObject>,我可以用java 8实现与上面相同的操作吗? 与.orElseThrow(() – > new NotFoundException());的东西,但上面的代码如何看起来与流完全一致? Sidequestion:我应该使用...

用于超时参数的java.util.concurrent.TimeUnit vs java.time.Duration【代码】

在编写API时,我倾向于定义将超时参数作为具有参数long timeout,TimeUnit单元的方法.这遵循许多具有相同要求的java.util.concurrent方法. 在Java 8中,我注意到了java.time包中的新的Duration类,并想知道我是否可以将新方法定义为具有持续时间超时参数. 我可以从中看到的优势是: >用户编写常量更容易:private static final Duration ACQUIRE_TIMEOUT = Duration.ofMinutes(10);someResource.acquire(ACQUIRE_TIMEOUT);VSprivate st...

java – 使用参数化流跟踪迭代【代码】

这段代码:Kid[] kids = Kid.getSimpleArray(); String names = Stream.of(kids).filter(Kid::hasToy).map(Kid::getSurname).collect(Collectors.joining(", ")); out.println(names);给我这个结果: St?pień,Inglot,Czubwna,Lepiej,?agowska 而我正在考虑一个解决方案,使它像这样: 1.St?pień,2.Inglot,3.Czubwna,4.Lepiej,5.?agowska P.S我想不出一个更好的问题来得到我正在寻找的答案.解决方法:请注意,这真的很难看,而不是我应...

java – 使用varargs传递参数对而不会遇到错误的模式【代码】

最初我们有一个对象,其构造如下:FieldSet set = new FieldsSet(new Field("stringField", "aaa"),new Field("booleanField", Boolean.FALSE),new Field("intValue", new Integer(123));但每次构造Field对象似乎很乏味(在这个例子中我给了3个字段,但通常它更像是20个).所以我们添加了以下方法:public static FieldSet getNewInstance(Object... fieldPairs) {ArrayList<Field> fields = new ArrayList<Field>();for (int i = 0; i...

java – 如何将Class列表作为参数传递?【代码】

我试图有一个handleException方法,它可以采用异常对象和可接受的异常类列表来检查异常是否可以接受并且可以重试.void handleException(Exception e, String... acceptableExceptionNames)throws MyException {boolean isRetryable = false;for(String acceptableExceptionName: acceptableExceptionNames) {try {if (Class.forName(acceptableExceptionName).isInstance(e)) {isRetryable = true;break;}} catch (ClassNotFoundExc...

java – @Binds方法必须只有一个参数,其类型可赋值给返回类型【代码】

我正在迁移到新的匕首android 2.11 所有设置都基于Google蓝图:MVP-Dagger.但我遇到此错误:Error:(22, 57) error: @Binds methods must have only one parameterwhose type is assignable to the return type在这一行:@ActivityScoped@Binds abstract PresenterFactory<MainContract.Presenter> providePresenterFactory(MainPresenter presenter);主持人:@ActivityScoped public class MainPresenter extends BasePresenterImp...

java – 验证方法体中是否使用了方法参数【代码】

我有一个界面,如下所示interface Evaluator {boolean requiresP2();EvalResult evaluate(Param1 p1, Param2 p2, Param3 p3);// some more methods }该接口由几个类实现. CAL方法的参数p2由某些人使用,而其他人则不使用.方法requiresP2基本上返回一个布尔值,告诉evaluate方法是否使用p2. 现在,这些问题在上下文中可能看起来有点奇怪,但请相信我,这在我们的用例中是有意义的.另外,需要花费大量时间来重构所有代码以消除对requiresP2方...

Java:参数化Map对象【代码】

我有以下全局变量:private Map<String,List<String>> network;我在我的构造函数中实例化它,如下所示:network = new Hashtable<String,ArrayList<String>>();上面的实例化不会编译.显然,当我对Map进行参数化时,我必须声明它是一个专门从String到ArrayList的映射,而不是使用更通用的List?有关为何必须这样做的任何见解?解决方法:对不起,您不能将内部类子类化:network = new Hashtable<String,List<String>>();但是当您添加成员时...

java – 强制参数化类型作为构造函数参数是正确的【代码】

我一直在寻找相当长的一段时间,并没有真正接近我需要的东西. 示例代码:public class MyQueue<E extends Delayed & Serializable> extends DelayQueue<E> {private Class<E> mClass;public MyQueue(Class<E> type) {super();mClass = type;} }MyQueue的创建方式如下:MyQueue q< MyObj> = new MyQueue< MyObj>(MyObj.class);. 我的问题:如何以这种方式编写构造函数,参数“type”是正确的参数化类型“E extends Delayed& Serializa...

Effective Java -- 创建和销毁对象 -- 遇到多个构造器参数时考虑使用构造器(建造者模式)【代码】

第二章 创建和销毁对象 第二条 遇到多个构造器参数时考虑使用构造器 (也就是建造者Builder模式) 静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数。 比如一个类表示包装食品外面显示的营养成分标签,包含超过20个可选域:总脂肪量、饱和脂肪量、胆固醇、钠等等。此时应该用哪种构造器或者静态工厂来编写呢? 1.重叠构造器模式 即重载出所有参数组合的构造器,当创建实例的时候就利用对应的构造器: Nutr...