小编rez*_*tin的帖子

在spring boot中请求目标中找到无效字符

我的应用程序是从java -jar开始的,版本为1.5.6.RELEASE的spring boot.
我的一个请求的内容具有字符"{".当它被发送到服务器时,引发以下异常:

java.lang.IllegalArgumentException:在请求目标中找到无效字符.有效字符在RFC 7230和RFC 3986中的org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:472)中定义,位于org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:683)at at Org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)org.apache.coyote.AbstractProtocol $ ConnectionHandler.process(AbstractProtocol.java:868)org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor. doRun(NioEndpoint.java:1455)位于java.util的java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)的org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) .concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)atg.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java) :745)

哪里错了?我如何解决它?

编辑1:
我的休息是这样的:

var jsonData = {
                    id: $("#hiddenId").val(),
                    permitNumber: $("#txtPermitNumber").val(),
                    permitToDate: $("#txtPermitToDate").val()
               }
document.location = restUrl + "/print?reportParams= " + JSON.stringify(jsonData);
Run Code Online (Sandbox Code Playgroud)

spring-boot embedded-tomcat-8

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

如何在java 8中为列表分配增量值

您假设有一个对象列表。该列表按该对象的一个​​或多个字段排序。所以根据排序列表,我想用增量值设置该对象的字段。
为了澄清,请注意以下示例:

public class ObjectTest {
   int id;
   int userId;
   int code;
}
Run Code Online (Sandbox Code Playgroud)

和上面的 ObjectTest 一样,任何用户都有自己的代码。
有一个 ObjectTest 列表。

List<ObjectTest> objTests;
Run Code Online (Sandbox Code Playgroud)

它是排序的:

objTests.sort(Comparator.comparing(DataSet::getUserId).thenComparing(DataSet::getCode));
Run Code Online (Sandbox Code Playgroud)

因此,在按 userId 和代码排序后,我想将值从 1 设置为任何用户都有自己的代码的位置。当 userId 更改时,增量值再次重置为 1。

如果有以下ObjectTest的集合。

    id     userId    code
--------------------------------
             100     5
             200     6
             100     7
             200     9
             200     10
             100     2
Run Code Online (Sandbox Code Playgroud)

在解释了上面的场景之后,下面的集合将是:

id      userId     code
1        100        2
2        100        5
3        100        7
1        200        6
2        200        9
3        200        10
Run Code Online (Sandbox Code Playgroud)

java中是否可以使用lambda表达式

java java-8

5
推荐指数
2
解决办法
2151
查看次数

运行Spring Boot应用程序时"正在使用地址:绑定"

我在运行示例Spring Boot Application时遇到问题.当我尝试运行它时,会发生以下错误:

 java.net.BindException: Address already in use: bind
            at sun.nio.ch.Net.bind0(Native Method)
            at sun.nio.ch.Net.bind(Unknown Source)
            at sun.nio.ch.Net.bind(Unknown Source)
            at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
            at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
            at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:473)
o.apache.catalina.core.StandardService   : Failed to initialize connector [Connector[org.apache.coyote.http11.Http11NioProtocol-8080]]

    org.apache.catalina.LifecycleException: Failed to initialize component [Connector[org.apache.coyote.http11.Http11NioProtocol-8080]]
            at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
            at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
            at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
            at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)
            at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
            at org.apache.catalina.startup.Tomcat.start(Tomcat.java:335)
            at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:57)
            at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.<init>(TomcatEmbeddedServletContainer.java:52)
            at 
Run Code Online (Sandbox Code Playgroud)

spring-boot

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

Count(*)和Count(field_name)在oracle中返回差异输出

有两个简单的查询(因为它们很简单,我很困惑):

第一个:

select count(*) 
  from (select e.id as employee_id 
          from offic o
          left join employee e
            on o.employee_id = e.id)
 where employee_id is null
Run Code Online (Sandbox Code Playgroud)

第二个:

select count(employee_id) 
  from (select e.id as employee_id 
          from offic o
          left join employee e
            on o.employee_id = e.id)
 where employee_id is null
Run Code Online (Sandbox Code Playgroud)

这两个查询之间的唯一区别是count(employee_id)count(*),其余的完全相同,但它们的结果是不同的.

当存在一些空值时,第二个查询返回零.
有什么不对或其他我不知道的事情?

sql oracle

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

Spring Rest 控制器在 Spring boot 3.0.3 中收到 404 错误代码

有一个示例 Spring Boot(版本 3.0.3)Web 应用程序如下:

pom.xml部分

 <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.0.3</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <start-class>matin.example.demo.DemoApplication</start-class>
        <java.version>17</java.version>
    </properties>
    <dependencies>
        <!--<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
Run Code Online (Sandbox Code Playgroud)

package matin.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}
Run Code Online (Sandbox Code Playgroud)

package matin.example.demo.api;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class …
Run Code Online (Sandbox Code Playgroud)

spring spring-mvc spring-boot

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

由于java 8中方法的最大结果,如何获取Object

我想通过java8的lambda表达式重写下面的for-loop语句.

public class Test {

    List<ObjectTest> lst;

    public int operation(int a, int b) {
        return a * b;
    }

     int max = 0;
     ObjectTest suitableObj = null;
     for(ObjectTest obj:lst) {
        int result = operation(obj.getA(), obj.getB());
        if(result > max) {
            suitableObj = obj;
            max = result;
        }
     }
}
Run Code Online (Sandbox Code Playgroud)

lambda表达式怎么可能?

java java-8

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