![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java学习
D-youny.
这个作者很懒,什么都没留下…
展开
-
spring项目打包跳过单元测试
今儿打包的时候,发现老实报错,一看结果是测试类报错,心想测试类报错有什么关系,我部署项目又不要测试的东西。只要源代码没问题就行了啊,无奈他就是要运行测试类。于是乎找了个打包能跳过测试类的插件,也是其他博客写过的,相当于记录一下了。 在pom.xml 中插件的地方 加上<plugin> <groupId>org.apache.maven.plugins</gro...原创 2019-11-26 13:49:48 · 531 阅读 · 0 评论 -
IO流学习:字符流
之前提到了字节流,字节流中没有编码的概念,不能按行处理,使用不太方便。字符流有一个PrintWriter 在我们做标准输出的很好用,非常方便,可以指定指定文件名字作为参数,可以指定编码类型,自动缓冲,在我们输出文件时,可以优先选择该类。public PrintWriter(File file) throws FileNotFoundExceptionpublic PrintWriter(Fi...转载 2019-08-20 16:02:25 · 73 阅读 · 0 评论 -
线程学习:Callable实现原理
使用线程中,有时候 我们需要获取子线程执行后的返回值,这时候我们可以用到Callable接口,实现该接口重写call方法,返回一个封装后的Future对象。Callable<Integer> subTask = new Callable<Integer>() { @Override public Integer call() throws...原创 2019-08-15 22:54:14 · 381 阅读 · 0 评论 -
Logstash 在window系统中读取文件的坑
可能是我太小白,在这个地方卡了好久,之前在linux上使用file插件一直都能读到内容,在window上就不行了,特地记录一下,其实很简单,在window上直接复制文件路径的话是右斜杠隔开的 ,只要改成左斜杠就行了,像这样: 错误: C:\Users\Administrator.PC-20181211PKRR\Desktop 正确: C:/Users/Administrator.PC...原创 2019-08-15 23:00:49 · 2083 阅读 · 4 评论 -
类的加载
在java中,类加载就是将类的信息加载到内存中。类是动态加载的,第一次使用的这个类的时候,才会加载,加载的时候会查看其父类是否加载,如果没有,则会加载其父类。一个类的信息主要包括以下部分:类变量(静态变量)类初始化代码类方法(静态方法)实例变量实例初始化代码实例方法父类信息引用类初始化代码包括:定义静态变量时的赋值语句静态初始化代码块实例初始化代码包括:定义实例变量时的...转载 2019-08-21 10:07:04 · 73 阅读 · 0 评论 -
继承的双面性
继承作为java的三大特性之一,功能很强大,继承了父类的子类,就拥有了父类的全部特性(除final修饰的方法,变量以外),子类可以通过重写父类的方法,达到更具体的实现,更灵活的扩展。但是继承也有双面性。有两个缺点:1.破坏封装子类在继承父类的方法并且实现时,需要不得不关注父类中对该方法的实现,看一下有没有破坏原有的结构。而父类在更改自身方法时也需要考虑子类,如果不考虑,也可能会影响到子类的实...转载 2019-08-21 11:05:09 · 113 阅读 · 0 评论 -
内部类
类都对应一个独立的java源文件 ,一个类放在另外一个类里面,成为内部类。内部类和外部类关系密切,和其它类关系不大,定义在类内部,可以实现对外部的完全隐藏,有更好的封装性,代码更简洁。内部类只是java编译器的概念,对于虚拟机而言,他是不知道的,每个内部类最后都会编译成一个独立的字节码文件。在Java中,根据定义的位置和方式不同,主要有四种内部类:静态内部类成员内部类方法内部类匿名内部...转载 2019-08-21 16:18:29 · 82 阅读 · 0 评论 -
LinkedList源码学习记录
源于jdk 1.8LinkedList实现接口 list, Deque (双端队列),cloneable,Serializable。简单说下Deque,双端队列。双端队列可以看作是队列和栈的一种结合。队列:像是生活中排队一样的数据结构,先进先出。只能头部的删除,查看,尾部的添加。栈:像是往书箱里面放入书,先进后出。只能操作尾部的查看,删除,添加。双端队列: 双端都可以操作。voi...原创 2019-09-02 22:44:58 · 79 阅读 · 0 评论 -
ArrayList总结
Add();public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! elementData[size++] = e; return true;}先调用ensureCapacityInternal确保在本身大小下是否足够添加一个元素privat...原创 2019-09-08 21:43:46 · 123 阅读 · 0 评论 -
IO流学习:字节流
java的流中:以二进制读取的流主要有:1.InputStream/OutputStream: 这是基类,它们是抽象类。2.FileInputStream/FileOutputStream: 输入源和输出目标是文件的流。3.ByteArrayInputStream/ByteArrayOutputStream: 输入源和输出目标是字节数组的流。4.DataInputStream/DataOu...转载 2019-08-20 15:49:23 · 160 阅读 · 0 评论 -
线程学习:线程的优点及成本
优点充分利用多CPU的计算能力,单线程只能利用一个CPU,使用多线程可以利用多CPU的计算能力。充分利用硬件资源,CPU和硬盘、网络是可以同时工作的,一个线程在等待网络IO的同时,另一个线程完全可以利用CPU,对于多个独立的网络请求,完全可以使用多个线程同时请求。在用户界面(GUI)应用程序中,保持程序的响应性,界面和后台任务通常是不同的线程,否则,如果所有事情都是一个线程来执行,当执行一个...原创 2019-08-11 15:20:43 · 144 阅读 · 0 评论 -
线程学习:内存可见性
多个线程可以共享访问和操作相同的变量,但一个线程对一个共享变量的修改,另一个线程不一定马上就能看到,甚至永远也看不到,举个列子。public class TestThread extends Thread{ private static boolean shutdown = false; static class HelloThread extends Thr...原创 2019-08-11 15:12:07 · 79 阅读 · 0 评论 -
spark查询遇到的错误
这里写自定义目录标题java.sql.SQLException: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 27.0 failed 4 times, most recent failure: Lost task 0.3 in stage 27.0 (TID 494, 192...原创 2019-06-10 18:19:39 · 982 阅读 · 0 评论 -
关于while(rs.next)只能循环一次。
今天在循环查询结果时,发现while(rs.next)只能循环一次,无法第二次循环,最后发现是因为每一次next(),游标都会移动,移动到最后,便不能再次循环。如果需要再次循环,可以在循环结束后,加上 rs.beforeFirst();代码,重置游标,方可再次循环。如果rs.beforeFirst();报错;是因为rs的游标默认不能向前,所以还需要改一个地方将st = conn.cr...原创 2019-08-15 23:01:38 · 1093 阅读 · 0 评论 -
关于Shiro自定义过滤器
今天遇到一个小问题,自定义的shiro过滤器没有执行。。最后发现是没有调用,需要在shiro的配置文件上调用才能被执行。代码如下:<bean id="chainDefinitionSectionMetaSource" class="com.zslbase.shiro.core.ChainDefinitionSectionMetaSource"> <property name...原创 2019-08-06 22:31:50 · 269 阅读 · 0 评论 -
后端通过传文件到前端以供下载
@RequestMapping(value = “downland”)@ResponseBodypublic Object export(HttpServletRequest request, HttpServletResponse response) throws IOException { //获取文件需要保存的新名字 String newFileName = reques...原创 2019-08-19 09:36:43 · 2957 阅读 · 0 评论 -
关于BufferReader 的readeLine 阻塞
昨天写项目遇到个问题。用readline读取dos窗口运行指令后,返回的内容,因为这个返回的内容可能是有,可能是没有的。最开始用的是 while((a=stdout.readline())!=null); 想的是他没有内容的话应该会等于空 直接不进入循环,后来才得知,readline是一个阻塞方法,不管有没有内容都会进入方法,读取到“\n”回车符,或者换行符才会算读取一行。可能是dos窗口这里返回...原创 2019-08-20 09:11:27 · 626 阅读 · 0 评论 -
线程学习:线程之间的协作
synchronized 避免了线程之间安全问题,能一定的实现线程安全,但有时线程还需要相互协作,此时就需要wait/notify方法。线程之间的协作应用场景:生产者/消费者协作模式:这是一种常见的协作模式,生产者线程和消费者线程通过共享队列进行协作,生产者将数据或任务放到队列上,而消费者从队列上取数据或任务,如果队列长度有限,在队列满的时候,生产者需要等待,而在队列为空的时候,消费者需要等待...原创 2019-08-15 00:03:58 · 176 阅读 · 0 评论 -
线程学习:优先级
线程的优先级,顾名思义,表示线程执行的先后顺序,在程序中可以通过setPriority()来设置,有1-10个等级,10为最高级,默认为5。public class TestThread implements Runnable{ private static boolean go=true; 设置一个静态量用于停止线程 private int k=0; 设置一个in...原创 2019-08-11 12:20:26 · 208 阅读 · 0 评论 -
spring配置线程池及运行
1。配置线程池2.自定义一个线程类 当然也可以不用定义 看自己选择public class MyThread implements Callable {private TestService testService;private String name;public MyThread(TestService testService, String name) {this.tes...原创 2019-06-19 17:48:45 · 184 阅读 · 0 评论