我有List<Person>哪里Person如下是.
class Person {
String personId;
LocalDate date;
String type;
// getters & setters
}
Run Code Online (Sandbox Code Playgroud)
我试图将其转换为List<Person>以Map<String, Map<LocalDate,List<Person>>>地方外映射的关键是personId和内部地图的关键是date,我无法弄清楚如何实现这一目标.到目前为止,尝试过如下所示的内容 也可以使用Java 8解决方案.
Map<String,Map<LocalDate,List<Person>>> outerMap = new HashMap<>();
Map<LocalDate,List<Person>> innerMap = new HashMap<>();
for(Person p : list) {
List<Person> innerList = new ArrayList<>();
innerList.add(p);
innerMap.put(p.getDate(), innerList);
outerMap.put(p.getPersonId(), innerMap);
}
Run Code Online (Sandbox Code Playgroud) 我有几个下拉菜单,它们的值很容易获得,如下所示。
下拉列表 1:
<select id="a">
<option value="1">Bike</option>
<option value="2">Car</option>
<option value="3">Bus</option>
<option value="4">Cycle</option>
<option value="5">Wagon</option>
</select>
Run Code Online (Sandbox Code Playgroud)
下拉列表 2:
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我需要根据从第一个下拉列表中选择的值更改第二个下拉值。例如:
对我来说唯一可用的选择是使用 JavaScript。我试过如下,但它不起作用。请帮助指出我遗漏了什么/做错了什么。
HTML:
<select id="a" onchange="change();">
<option value="1">Bike</option>
<option value="2">Car</option>
<option value="3">Bus</option>
<option value="4">Cycle</option>
<option value="5">Wagon</option>
</select>
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>
Run Code Online (Sandbox Code Playgroud)
JS:
function change() {
if (document.getElementById('a').value == '1')
document.getElementById("b").value …Run Code Online (Sandbox Code Playgroud) 我正在尝试将以GMT/UTC格式发送的XMLGregorianCalendar转换为America/Los_Angeles时区中的Java 8 LocalDateTime而没有运气.
这是我尝试过的,无法将时间转换为太平洋时间.
//xmlDate is 2017-11-13T00:00:00Z
ZonedDateTime zDateTime = xmlDate.toGregorianCalendar().toZonedDateTime().toLocalDateTime().atZone(ZoneId.of("America/Los_Angeles"));
LocalDateTime localDateTime = zDateTime.toLocalDateTime();
//Expected localDateTime is 2017-11-12T16:00. But I only get 2017-11-13T00:00
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我通过JPA执行本机查询。我的数据库是oracle,我有一个Clob列。当我得到结果时,如何从resultList中获得clob值?我将其转换为String并得到ClassCastException。实际对象是com.sun.proxy。$ Proxy86。
Query query = entityManager.createNativeQuery("Select Value from Condition");
List<Object[]> objectArray = query.getResultList();
for (Object[] object : objectArray) {
???
}
Run Code Online (Sandbox Code Playgroud) 嗨,我最近一直在 Spring Batch 工作,需要一些帮助。
1)我想使用多个线程运行我的作业,因此我使用了 TaskExecutor,如下所示,
@Bean
public TaskExecutor taskExecutor() {
SimpleAsyncTaskExecutor taskExecutor = new SimpleAsyncTaskExecutor();
taskExecutor.setConcurrencyLimit(4);
return taskExecutor;
}
@Bean
public Step myStep() {
return stepBuilderFactory.get("myStep")
.<MyEntity,AnotherEntity> chunk(1)
.reader(reader())
.processor(processor())
.writer(writer())
.taskExecutor(taskExecutor())
.throttleLimit(4)
.build();
}
Run Code Online (Sandbox Code Playgroud)
但是,在执行时可以在控制台中看到下面的行。
osbclsupport.SimpleJobLauncher : 没有设置 TaskExecutor,默认为同步执行器。
这是什么意思?但是,在调试时,我可以看到四个 SimpleAsyncExecutor 线程正在运行。有人可以对此有所了解吗?
2)我不想使用 spring 批处理创建的元数据表运行我的批处理应用程序。我试过添加spring.batch.initialize-schema=never. 但它没有用。我还看到了一些通过使用ResourcelessTransactionManager,来做到这一点的方法MapJobRepositoryFactoryBean。但是我必须为我的工作进行一些数据库事务。那我用这个可以吗?我也能够通过扩展DefaultBatchConfigurer和覆盖来做到这一点:
@Override
public void setDataSource(DataSource dataSource) {
// override to do not set datasource even if a datasource exist.
// initialize will use a Map …Run Code Online (Sandbox Code Playgroud) 我遇到了一个问题,我从 git 导入了一个 spring boot 项目,代码在我的队友计算机中运行得很好,但是我收到一个错误,我不知道如何解决,在运行我的 java 应用程序时出现此错误:
Packet for query is too large (1072729 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.
Run Code Online (Sandbox Code Playgroud)
我阅读了有关该主题的一些答案,我的理解是我必须在 my.ini 文件中进行更改并更改此值:
max_allowed_packet=500M
Run Code Online (Sandbox Code Playgroud)
但似乎我无法找到我的文件位置,我正在使用 MySQLWorkebench,并且我不知道在哪里可以找到此文件来进行更改或任何更改。
任何帮助将非常感激。
java ×3
java-8 ×2
spring-boot ×2
clob ×1
collections ×1
hashmap ×1
hibernate ×1
html ×1
java-time ×1
javascript ×1
jpa ×1
list ×1
mysql ×1
spring ×1
spring-batch ×1