Java
RunAtWorld
常常想想自己能解决什么问题以及解决过哪些问题
展开
-
Spring常用注解总结
0.前言这篇文章介绍的 Spring/SpringBoot 常用注解基本已经涵盖Spring开发工作中遇到的大部分常用的场景。1. @SpringBootApplication这里先单独拎出@SpringBootApplication 注解说一下,虽然我们一般不会主动去使用它。这个注解是 Spring Boot 项目的基石,创建 SpringBoot 项目之后会默认在主类加上。@SpringBootApplicationpublic class SpringSecurityJwtGuideApp转载 2020-08-30 20:56:37 · 509 阅读 · 0 评论 -
使用BeanUtils完成Bean拷贝
项目中经常要用到Bean之间的属性复制,本文主要介绍了几种常见的Bean拷贝工具以及几种在Bean拷贝过程中根据需要实现Bean字段类型转换的方法。项目中经常要用到Bean之间的属性复制,如果自己使用 set 方法逐个设值,不仅运行效率低,如果用到的地方很多,代码维护也很困难。实际上,已经有很多可以完成 Bean 属性复制的工具。本文就来重点讨论一下。本文主要包括以下内容:选择哪个框架的Bean工具效率最高封装springBean工具自定义copyBeanProperties实现Bean拷贝.原创 2020-08-06 00:20:51 · 1370 阅读 · 0 评论 -
Collection中List,Set的排序
排序分为两种1. 自然排序:自定义类需实现Comparable接口,依据CompareTo方法,确定按照哪一个或哪几个属性排序,如果返回值为0,则表示两个自定义对象相同,(如果需要降序,就在CompareTo的返回值前面加一个“-”号)。【如果可以操作一个类,就用自然排序】2. 定制排序:实现Comparator接口,在重写compare方法时指明按照自定义原创 2017-09-21 22:16:49 · 691 阅读 · 0 评论 -
网络编程(socket)
IP 地址:InetAddressü 唯一的标识Internet 上的计算机ü 本地回环地址(hostAddress):127.0.0.1 主机名(hostName):localhostü 不易记忆 192.168.20.165端口号标识正在计算机上运行的进程(程序)ü 不同的进程有不同的端口号ü 被规定为一个 16 位的整数 0~65535。其中,原创 2017-08-24 00:57:14 · 439 阅读 · 0 评论 -
静态代理与动态代理模式
动态代理是指客户通过代理类来调用其它对象的方法,并且是在程序运行时根据需要动态创建目标类的代理对象。动态代理使用场合: 调试、 远程方法调用代理设计模式的原理:使用一个代理将对象包装起来, 然后用该代理对象取代原始对象. 任何对原始对象的调用都要通过代理. 代理对象决定是否以及何时将方法调用转到原始对象上1静态代理package reflections;//静态代理模式原创 2017-08-24 00:54:37 · 443 阅读 · 0 评论 -
反射
Java反射机制提供的功能² 在运行时判断任意一个对象所属的类² 在运行时构造任意一个类的对象² 在运行时判断任意一个类所具有的成员变量和方法² 在运行时调用任意一个对象的成员变量和方法生成动态代理一个反射的例子package reflections;import java.io.Serializable;public class Person原创 2017-08-13 18:06:45 · 360 阅读 · 0 评论 -
线程安全与同步锁
1. 线程安全问题存在的原因?由于一个线程在操作共享数据的过程中,未执行完毕,另外的线程参与进来,导致共享数据出现安全问题。2. 如何解决线程安全问题?必须让一个线程操作共享数据完毕以后,其他线程才有机会参与共享数据的操作。3. Java如何实现线程的安全使用线程的同步机制。方式一:同步代码块Synchronized(同步监视器原创 2017-08-13 17:53:02 · 607 阅读 · 0 评论 -
线程间通信
wait():令当前线程挂起并放弃CPU、同步资源,使别的线程可访问并修改共享资源,而当前线程排队等候再次对资源的访问notify():唤醒正在排队等待同步资源的线程中优先级最高者结束等待notifyAll ():唤醒正在排队等待资源的所有线程结束等待. Java.lang.Object提供的这三个方法只有在synchronized方法或synchronized代码块中才能使用,否原创 2017-08-13 17:53:33 · 331 阅读 · 0 评论 -
Java创建多线程
继承Thread方式创建子线程1.创建一个继承Thread的子类2.重写Thread类的run()方法,实现子线程要完成的功能3.在主线程类中创建一个子线程类的对象4.调用子线程类的start()方法,启动此子线程(实际上start()方法是调用了该类的run()方法)package TestThread; public classGeneticThreadWindow e原创 2017-08-13 17:37:41 · 384 阅读 · 0 评论 -
字节流和字符流转换、标准输入流和标准输出流、打印流、对象序列化、随机流
使用InputStreamReader、OutputStreamWriter,将输入的字节流解码成字符流,读入程序;将程序中的字符流编码成字节流,输出//使用InputStreamReader、OutputStreamWriter,将输入的字节流解码成字符流,读入程序;将程序中的字符流编码成字节流,输出 @Test public void testInputOutStreamReader(原创 2017-08-03 00:13:32 · 514 阅读 · 0 评论 -
Java文件字节输入流(FileInputSream)文件字节输出流(OutputStream),字符输入输出流(FileReader/FileWriter)
FileInputSream:读文件的过程文件写入的过程1.创建一个File类对象2.创建一个FileInputStream对象3.调用FileInputStream的方法,实现file文件的读取4.关闭相应的流 public void testFileInputStream3(){ //将流读出到byte数组中 FileInputStream fis=null;原创 2017-07-22 00:42:25 · 740 阅读 · 0 评论 -
资深Java程序员的学习路线建议
Java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍。这一部分的内容,同样适用于一些希望转行到Java的同学。 在大家看之前,我要先声明两点。1、由于我本人是Java后端开发出身,因此所推荐的学习内容是Java W转载 2017-07-30 21:00:12 · 428 阅读 · 0 评论 -
Java入门
首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA)。J2SE,Java 2 Platform Standard Edition,我们经常说到的JDK,就主要指的这个,它是三者的基础,属于桌面级应用开发,这部分如果学得好很容易拓展J2EE和J2ME。J2ME,The Micro Edition of the Java 2 Platform。主要用于嵌入式Java,如手转载 2016-07-28 17:17:09 · 298 阅读 · 0 评论