精华内容
下载资源
问答
  • Java中的WITH语句

    2021-02-12 08:52:41
    使用Java 8 lambda可以使您非常接近,但缺点是无法修改局部变量。声明此方法:static void with(T obj, Consumer c) {c.accept(obj);}因此,您可以使用:Window fooBarWindow = new Window(null);String mcHammer = ...

    使用Java 8 lambda可以使您非常接近,但缺点是无法修改局部变量。

    声明此方法:

    static void with(T obj, Consumer c) {

    c.accept(obj);

    }

    因此,您可以使用:

    Window fooBarWindow = new Window(null);

    String mcHammer = "Can't Touch This";

    with(fooBarWindow, w -> {

    w.setAlwaysOnTop(true);

    w.setBackground(Color.yellow);

    w.setLocation(300, 300);

    w.setTitle(mcHammer); // can read local variables

    //mcHammer = "Stop!"; // won't compile - can't modify local variables

    });

    使用匿名类也可以这样做,但不是很干净。

    展开全文
  • Java使用try-with

    2021-02-12 12:34:29
    Java编程过程中,如果打开了外部资源(文件、数据库连接、网络连接等),我们必须在这些外部资源使用完毕后,手动关闭它们。 (推荐学习:java课程)因为外部资源不由JVM管理,无法享用JVM的垃圾回收机制,如果我们不...

    f900e4c69584ed5b7de391bdef16b4e0.png

    在Java编程过程中,如果打开了外部资源(文件、数据库连接、网络连接等),我们必须在这些外部资源使用完毕后,手动关闭它们。 (推荐学习:java课程)

    因为外部资源不由JVM管理,无法享用JVM的垃圾回收机制,如果我们不在编程时确保在正确的时机关闭外部资源,就会导致外部资源泄露,紧接着就会出现文件被异常占用,数据库连接过多导致连接池溢出等诸多很严重的问题。

    为了确保外部资源一定要被关闭,通常关闭代码被写入finally代码块中,当然我们还必须注意到关闭资源时可能抛出的异常,于是变有了下面的经典代码public static void main(String[] args) {

    FileInputStream inputStream = null;

    try {

    inputStream = new FileInputStream(new File("test"));

    System.out.println(inputStream.read());

    } catch (IOException e) {

    throw new RuntimeException(e.getMessage(), e);

    } finally {

    if (inputStream != null) {

    try {

    inputStream.close();

    } catch (IOException e) {

    throw new RuntimeException(e.getMessage(), e);

    }

    }

    }

    }

    换成try-with-resourcepublic static void main(String[] args) {

    try (FileInputStream inputStream = new FileInputStream(new File("test"))) {

    System.out.println(inputStream.read());

    } catch (IOException e) {

    throw new RuntimeException(e.getMessage(), e);

    }

    }

    再以一个java里面读取文件和写入文件为例子/**

    * @ Author zhangsf

    * @CreateTime 2019/11/27 - 13:05

    */

    package Advanced;

    import java.io.File;

    import java.io.InputStreamReader;

    import java.io.BufferedReader;

    import java.io.BufferedWriter;

    import java.io.FileInputStream;

    import java.io.FileWriter;

    public class ReadTxt1 {

    public static void main(String args[]) {

    try { // 防止文件建立或读取失败,用catch捕捉错误并打印,也可以throw

    /* 读入TXT文件 */

    String pathname = "E:python_fileweb_spiderinput.txt"; // 绝对路径或相对路径都可以,这里是绝对路径,写入文件时演示相对路径

    File filename = new File(pathname); // 要读取以上路径的input。txt文件

    InputStreamReader reader = new InputStreamReader(

    new FileInputStream(filename)); // 建立一个输入流对象reader

    BufferedReader br = new BufferedReader(reader); // 建立一个对象,它把文件内容转成计算机能读懂的语言

    String line = "";

    line = br.readLine();

    while (line != null) {

    line = br.readLine(); // 一次读入一行数据

    System.out.println(line);

    }

    /* 写入Txt文件 */

    File writename = new File("E:python_fileweb_spideroutput.txt"); // 相对路径,如果没有则要建立一个新的output。txt文件

    writename.createNewFile(); // 创建新文件

    BufferedWriter out = new BufferedWriter(new FileWriter(writename));

    out.write("开始写入文件啦

    "); //

    即为换行

    out.flush(); // 把缓存区内容压入文件

    out.close(); // 最后记得关闭文件

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    }

    当一个外部资源的句柄对象实现了AutoCloseable接口,JDK7中便可以利用try-with-resource语法更优雅的关闭资源,消除板式代码。

    在JDK7以前,Java没有自动关闭外部资源的语法特性,直到JDK7中新增了try-with-resource语法,那么将上面java的读文件和写文件重新按照try-with-resource语法实现/**

    * @ Author zhangsf

    * @CreateTime 2019/11/27 - 11:44

    */

    package Advanced;

    import java.io.*;

    public class ReadTxt {

    public static void main(String args[]) {

    readFile();

    writeFile();

    }

    /**

    * 读入TXT文件

    */

    public static void readFile() {

    String pathname = "E:python_fileweb_spiderinput.txt";

    // 绝对路径或相对路径都可以,写入文件时演示相对路径,

    // 读取以上路径的input.txt文件

    //防止文件建立或读取失败,用catch捕捉错误并打印,也可以throw;

    //不关闭文件会导致资源的泄露,读写文件都同理

    //Java7的try-with-resources可以优雅关闭文件,异常时自动关闭文件;详细解读https://stackoverflow.com/a/12665271

    try (FileReader reader = new FileReader(pathname);

    BufferedReader br = new BufferedReader(reader)

    // 建立一个对象,它把文件内容转成计算机能读懂的语言

    ) {

    String line;

    //推荐更加简洁的写法

    while ((line = br.readLine()) != null) {

    // 一次读入一行数据

    System.out.println(line);

    }

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    /**

    * 写入TXT文件

    */

    public static void writeFile() {

    try {

    File writeName = new File("E:python_fileweb_spideroutput2.txt"); // 相对路径,如果没有则要建立一个新的output.txt文件

    writeName.createNewFile(); // 创建新文件,有同名的文件的话直接覆盖

    try (FileWriter writer = new FileWriter(writeName);

    BufferedWriter out = new BufferedWriter(writer)

    ) {

    out.write("我开始写入文件啦1

    "); //

    即为换行

    out.write("我开始写入文件啦2

    "); //

    即为换行

    out.flush(); // 把缓存区内容压入文件

    }

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    }

    将外部资源的句柄对象的创建放在try关键字后面的括号中,当这个try-catch代码块执行完毕后,Java会确保外部资源的close方法被调用。简洁很多。

    try-with-resource语法涉及的另外一个知识点,叫做异常抑制。当对外部资源进行处理(例如读或写)时,如果遭遇了异常,且在随后的关闭外部资源过程中,又遭遇了异常,那么你catch到的将会是对外部资源进行处理时遭遇的异常,关闭资源时遭遇的异常将被“抑制”但不是丢弃,通过异常的getSuppressed方法,可以提取出被抑制的异常。

    try-with-resource时,如果对外部资源的处理和对外部资源的关闭均遭遇了异常,“关闭异常”将被抑制,“处理异常”将被抛出,但“关闭异常”并没有丢失,而是存放在“处理异常”的被抑制的异常列表

    展开全文
  • 1、错误描述严重: Servlet.service() for servlet [springmvc] in context with path [/cmp] threw exception [Filtered request failed.] with root causejava.io.OptionalDataExceptionat java.io....

    1、错误描述

    严重: Servlet.service() for servlet [springmvc] in context with path [/cmp] threw exception [Filtered request failed.] with root cause

    java.io.OptionalDataException

    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1588)

    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:428)

    at java.util.HashMap.readObject(HashMap.java:1407)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:498)

    at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)

    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2173)

    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2064)

    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568)

    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:428)

    at org.apache.shiro.session.mgt.SimpleSession.readObject(SimpleSession.java:500)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:498)

    at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)

    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2173)

    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2064)

    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568)

    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:428)

    at core.util.SerializationUtil.deserialize(SerializationUtil.java:112)

    at core.security.RedisSessionDAO.doReadSession(RedisSessionDAO.java:157)

    at org.apache.shiro.session.mgt.eis.AbstractSessionDAO.readSession(AbstractSessionDAO.java:168)

    at org.apache.shiro.session.mgt.eis.CachingSessionDAO.readSession(CachingSessionDAO.java:261)

    at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSessionFromDataSource(DefaultSessionManager.java:236)

    at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSession(DefaultSessionManager.java:222)

    at org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:118)

    at org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:108)

    at org.apache.shiro.session.mgt.AbstractNativeSessionManager.getSession(AbstractNativeSessionManager.java:100)

    at org.apache.shiro.mgt.SessionsSecurityManager.getSession(SessionsSecurityManager.java:125)

    at org.apache.shiro.mgt.DefaultSecurityManager.resolveContextSession(DefaultSecurityManager.java:456)

    at org.apache.shiro.mgt.DefaultSecurityManager.resolveSession(DefaultSecurityManager.java:442)

    at org.apache.shiro.mgt.DefaultSecurityManager.createSubject(DefaultSecurityManager.java:338)

    at org.apache.shiro.subject.Subject$Builder.buildSubject(Subject.java:846)

    at org.apache.shiro.web.subject.WebSubject$Builder.buildWebSubject(WebSubject.java:148)

    at org.apache.shiro.web.servlet.AbstractShiroFilter.createSubject(AbstractShiroFilter.java:292)

    at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:359)

    at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)

    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)

    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

    at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)

    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)

    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)

    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)

    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)

    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

    at java.lang.Thread.run(Thread.java:748)

    十一月 24, 2017 10:07:05 下午 org.apache.catalina.core.StandardWrapperValve invoke

    严重: Servlet.service() for servlet [springmvc] in context with path [/cmp] threw exception [Filtered request failed.] with root cause

    java.io.OptionalDataException

    2、错误原因

    在使用管理员账号登录系统,不会报这个错误;但是只要使用自己创建的账号就报这个错误,经过检查确认账号信息放到Redis服务器中

    是Redis出现了故障导致这个错误

    3、解决办法

    (1)检查Redis服务

    (2)删除之前的会话

    展开全文
  • Java基础之try-with-resource语法糖

    万次阅读 多人点赞 2020-12-22 11:41:20
    java开发中,一些网络链接或者是文件资源都需要程序员去手动调用close方法关闭,比如InputStream、OutputStream和java.sql.Connection。 如果忘关了就可能造成严重的性能后果。而关闭的方法有很多种。比如...

    背景

    这是一篇东拼西凑的文章。

    在java开发中,一些网络链接或者是文件资源都需要程序员去手动调用close方法关闭,比如InputStream、OutputStream和java.sql.Connection。

    如果忘关了就可能造成严重的性能后果。而关闭的方法有很多种。比如finalizer、try-catch-finally、try-with-resources等等。

    try-with-resources

    try-with-resources是jdk1.7引入的语法糖,使得关闭资源操作无需层层嵌套在finally。

    finalizer 会引发内存泄漏

    垃圾回收器发现对象实现了finalize()方法并把它们添加到java.lang.ref.Finalizer.ReferenceQueue队列中。

    然后Finalizer线程 会把ReferenceQueue里面的对象逐个弹出。

    不过由于它的优先级比主线程较低,获取到的CPU时间较少,因此它永远也赶不上主线程创建对象的步伐。

    所以会引发内存泄漏,所以finalize()并不适合用作普通的清理工作,一般只用于当java中调用非java代码时重写finalize()方法,并在里面调用本地方法的free()等函数。

    或者在一下时候有某些用处:

    存在一系列对象,对象中有一个状态为false,如果我们已经处理过这个对象,状态会变为true,为了避免有被遗漏而没有处理的对象,就可以使用finalize()方法:

    
    class MyObject{
     
        boolean state = false;
     
        public void deal(){
            //...一些处理操作
            state = true;
        }
     
        @Override
        protected void finalize(){
            if(!state){
                System.out.println("ERROR:" + "对象未处理!");
            }
        }
        //...
    
    

    finally的执行顺序

    1、finally不是必要条件
    也就是说try-catch-finally中,可以只有try-catch,也可以只有try-finally。

    2、假设基于try-catch-finally:
    第一:代码没有异常
    执行顺序:try执行完整->catch不执行->finally执行

    第二:代码有异常且catch进行捕获**
    执行顺序:try执行部分->跳转catch捕获处理->finally执行

    第三:代码有异常且catch不捕获:这种情况没有catch**
    执行顺序:try执行部分->finally执行
    从上面的执行顺序可以看出,finally语句不管在哪种情况是一定会执行的。基于这个认识,现在我们再来分析。

    题外话: 当finally有return时,会直接返回。不会再去返回try或者catch中的返回值,而finally没有return时,try和catch 的return语句并不会马上执行,而是执行完finally代码块之后再返回try和catch里面的值。

    try-finally的缺点

    同时打开了多个资源,那么将会出现噩梦般的场景:

    public class Demo {
    		public static void main(String[] args) {
    			BufferedInputStream bin = null;
    			BufferedOutputStream bout = null;
    			try {
    				bin = new BufferedInputStream(new FileInputStream(new File("test.txt")));
    				bout = new BufferedOutputStream(new FileOutputStream(new File("out.txt")));
    				int b;
    				while ((b = bin.read()) != -1) {
    					bout.write(b);
    				}
    			}
    			catch (IOException e) {
    				e.printStackTrace();
    			}
    			finally {
    				if (bin != null) {
    					try {
    						bin.close();
    					}
    					catch (IOException e) {
    						throw e;
    					}
    					finally {
    						if (bout != null) {
    							try {
    								bout.close();
    							}
    							catch (IOException e) {
    								throw e;
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    

    我们不仅需要关闭 BufferedInputStream ,还需要保证如果关闭 BufferedInputStream 时出现了异常, BufferedOutputStream 也要能被正确地关闭。所以我们不得不借助finally中嵌套finally大法。可以想到,打开的资源越多,finally中嵌套的将会越深。

    主要是这样子写代码是真的丑。

    用try-with-resource来改写刚才的例子:

    	要使用try-with-resource的资源,必须先实现AutoCloseable接口,其中包含了单个返回void的close方法,Java类库与第三方类库中的许多类和接口,现在都实现或扩展了AutoCloseable接口,因此我们现在不必实现了。
    
    public class TryWithResource {
      public static void main(String[] args) {
        try (BufferedInputStream bin = new BufferedInputStream(new FileInputStream(new File("test.txt")));
           BufferedOutputStream bout = new BufferedOutputStream(new FileOutputStream(new File("out.txt")))) {
          int b;
          while ((b = bin.read()) != -1) {
            bout.write(b);
          }
        }
        catch (IOException e) {
          e.printStackTrace();
        }
      }
    }
    

    原理

    编译器会自动帮我们补全close(),而且可以避免异常屏蔽
    看一下反编译出来的代码:

    package com.codersm.trywithresource;
    
    	public class TryWithResource {
    		public TryWithResource() {
    		}
    
    		public static void main(String[] args) {
    			try {
    				Connection conn = new Connection();
    				Throwable var2 = null;
    
    				try {
    					conn.sendData();
    				} catch (Throwable var12) {
    					var2 = var12;
    					throw var12;
    				} finally {
    					if (conn != null) {
    						if (var2 != null) {
    							try {
    								conn.close();
    							} catch (Throwable var11) {
    								var2.addSuppressed(var11);
    							}
    						} else {
    							conn.close();
    						}
    					}
    
    				}
    			} catch (Exception var14) {
    				var14.printStackTrace();
    			}
    
    		}
    	}
    
    

    在第15~27行,编译器自动帮我们生成了finally块,并且在里面调用了资源的close方法,所以例子中的close方法会在运行的时候被执行。

    异常屏蔽

    我们将刚才的代码改回远古时代手动关闭异常的方式,并且在 sendData 和 close 方法中抛出异常:

    public class Connection implements AutoCloseable {
    		public void sendData() throws Exception {
    			throw new Exception("send data");
    		}
    		@Override
    		public void close() throws Exception {
    			throw new MyException("close");
    		}
    	}
    

    修改main方法:

    public class TryWithResource {
      public static void main(String[] args) {
        try {
          test();
        }
        catch (Exception e) {
          e.printStackTrace();
        }
      }
      private static void test() throws Exception {
        Connection conn = null;
        try {
          conn = new Connection();
          conn.sendData();
        }
        finally {
          if (conn != null) {
            conn.close();
          }
        }
      }
    }
    

    运行之后我们发现:

    basic.exception.MyException: close
     at basic.exception.Connection.close(Connection.java:10)
     at basic.exception.TryWithResource.test(TryWithResource.java:82)
     at basic.exception.TryWithResource.main(TryWithResource.java:7)
     ......
    

    问题来了,由于我们一次只能抛出一个异常,所以在最上层看到的是最后一个抛出的异常——也就是 close 方法抛出的 MyException ,而 sendData 抛出的 Exception 被忽略了。这就是所谓的异常屏蔽。由于异常信息的丢失,异常屏蔽可能会导致某些bug变得极其难以发现,程序员们不得不加班加点地找bug,如此毒瘤,怎能不除!幸好,为了解决这个问题,从Java 1.7开始,大佬们为 Throwable 类新增了 addSuppressed 方法,支持将一个异常附加到另一个异常身上,从而避免异常屏蔽。那么被屏蔽的异常信息会通过怎样的格式输出呢?我们再运行一遍刚才用try-with-resource包裹的main方法:

    java.lang.Exception: send data
    
     at basic.exception.Connection.sendData(Connection.java:5)
     at basic.exception.TryWithResource.main(TryWithResource.java:14)
     ......
     Suppressed: basic.exception.MyException: close
     at basic.exception.Connection.close(Connection.java:10)
     at basic.exception.TryWithResource.main(TryWithResource.java:15)
     ... 5 more
    

    可以看到,异常信息中多了一个 Suppressed 的提示,告诉我们这个异常其实由两个异常组成, MyException 是被Suppressed的异常。可喜可贺!

    仔细对比发现,是因为反编译的代码(第21行)多了一个 addSuppressed :var2.addSuppressed(var11);
    从而避免了异常屏蔽的问题。

    结论

    处理必须关闭的资源时,始终要优先考虑使用try-with-resources,而不是try-finally。这样得到的代码将更简洁,清晰,产生的异常也更有价值,这些也是try-finally无法做到的。

    参考文章:
    JAVA 内存泄露详解(原因、例子及解决)
    为什么推荐使用try-with-resources代替try-finally
    深入理解Java基础之try-with-resource语法糖

    展开全文
  • Java startsWith() 方法

    2020-12-21 19:31:33
    * startsWith() 方法用于检测字符串是否以指定的前缀开始。 */ String Str = "www.baidu.com"; System.out.print("返回值 :" ); System.out.println(Str.startsWith("www") ); System.out.print("返回值 :" ...
  • 今天写程序的时候遇到判断需要使用多个if(){}else{}语句,观察了一下需要判断的条件,发现判断的条件可以变为对条件最后几个汉字的判断,就想用正则表达式来对汉字判断,写完后,想到可以用Java中String类的endwith...
  • 字符串startsWith()方法startsWith()方法是一个String类方法,用于检查给定的字符串是否以特定的字符序列开头。如果字符串以给定的字符序列开头-startsWith()方法将返回true,如果字符串不是以给定的字符序列开头-则...
  • 在LocalDateTime类中,根据传递给它的参数,有两种类型的with()方法。with(TemporalAdjuster adjuster)LocalDateTime类的with(TemporalAdjuster Adjuster)方法用于使用TemporalAdjuster调整此日期时间,并且在调整后...
  • 记录并分享下关于类型转换报错,大家应该都不陌生,昨天一个websphere环境下报了一个错,日志如下:java.lang.ClassCastException: java.lang.String incompatible with java.util.List阅读到这的时候,很容易就想到...
  • compare with还是compared with的用法,Java中的compareTo()compare with还是compared with的用法,Java中的compareTo()函数是怎么用的? 求顶尖高手和热心人士来帮忙回答一下这个问题,有知道的吗,求围观,拜托各位...
  • 这是我的代码:public static void rightSel(Scanner scanner,char t){/*if (!stopping)*/System.out.print(": ");if (scanner.hasNextLine()){String orInput = scanner.nextLine;if (orInput.equalsIgnoreCase(...
  • java.time.LocalDateTime with()方法java.time.LocalDateTime.with(TemporalAdjuster adjuster)方法返回此日期时间的调整副本。1 语法public LocalDateTime with(TemporalAdjuster adjuster)2 参数adjuster:要使用...
  • with root cause解决办法

    千次阅读 2020-12-28 16:22:38
    运行后 后台报500 null 1、先Debug启动查看后台有没有获取到数据 可以看到已将获取到id值,所以和后台没有错 2、查询数据库是否打开? 启动数据库,然后再重新运行
  • The project uses Gradle 4.1 which is incompatible with Java 11 or newer 接触到一个比较老的项目,报了这个错误。 先按照Android Studio的提示更改Gradle wrapper版本到4.8.1 依旧报错,不过报的是另外的错误 ...
  • I'm having trouble actually inheriting the ... I keep ending up with the errorerror: NameableContainer cannot be inherited with different arguments: < Friend> and <>I have the follo...
  • 这篇文章演示了如何使用try-with-resources,顺序关闭JDBC数据库资源- 结果集,语句和连接。 该尝试-与-资源是一种新的异常处理机制,使得它更容易被一个try-catch块内使用正确关闭资源。从Java 7开始提供。 Java ...
  • [root@DB-Server myscript]# [root@DB-Server myscript]# file test.sh test.sh: ASCII text, with CRLF line terminators [root@DB-Server myscript]# cat -v test.sh . /home/oracle/.bash_profile^M echo ' '^M ...
  • java.lang.ClassCastException: java.lang.NullPointerException incompatible with javax.el.ELException如题,在was环境报的这个错,请问如何解决?java.lang.ClassCastException: java.lang.NullPointerException...
  • 项目环境: sharding-jdbc 4.1.1 mybatis-plus 3.4.2 ...Caused by: java.sql.SQLFeatureNotSupportedException: getObject with type at org.apache.shardingsphere.shardingjdbc.jdbc.unsupported.Abstract...
  • AndroidStudio4.2版本兼容问题 今天在开发公司一个老项目时...最后经过排查发现原因为,4.2版本google默认是排在java11上的,所以导致了上面的问题,于是乎就想着把默认编译版本改到java 1.8,就下了一个插件ChooseRunt
  • 报错代码 情况1. interpreter.execfile(“你的文件路径”); 报错原因:没找到你这个文件 情况2.new PyString(“你的字符串”) 报错原因:字符串里有中文 解决:new PyString(“你的字符串”)替换为 ...
  • public static void rightSel(Scanner scanner,char t) { /*if (!stopping)*/System.out.print(": ... 标签:ends-with,java,string,case-insensitive,startswith 来源: https://codeday.me/bug/20191007/1866220.html
  • 这两天HIVE在执行select查询语句的时候,突然遇到了这个报错.Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object 从字面上翻译是配置文件错误,但是也没有说明到底...
  • 上报错 Servlet.service() for servlet [dispatcherServlet] in ... nested exception is java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer] with root cause java.lang.Cla
  • 项目报错java.lang.IllegalArgumentException: argument type mismatch] with root cause 为id字段的错误 数据库表中id为主键且未设置自增 使用mp中的id填充方式设置@tableid标签 @TableId(value = "id",type = Id...
  • java: Workaround: to make project compile with the current annotation processor implementation, start JPS with VM option: -Djps.track.ap.dependencies=false When run from IDE, the option can be set in...
  • 解决java.lang.IllegalStateException: No instances available for service-provider] with root cause java问题 前提是服务已经在Consul注册成功了,但是service-provider服务监控检查未通过 浏览器访问订单页面 ...
  • IDEA出现警告:‘for’ loop replaceable with enhanced ‘for’ 为什么会出现这个警告? 举个例子:我们可以看到第五行的for出现了警告 将这句话翻一下:'for’循环可被增强的’for’替换 原因: 因为这是循环里...
  • I have an abstract class with generic (T1) that extends my Filterable interface:public abstract class AbstractAdapter < T1 extends Filterable, T2 extends AbstractAdapter.Cell > extends ArrayAdap...
  • 一,报错信息如下 E/AndroidRuntime: FATAL EXCEPTION... java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.androidmqttclient/com.example.androidmqttclient.Activity.DeviceControl

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,220,754
精华内容 488,301
关键字:

java的with

java 订阅