自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Spring中的注解

@Component:可以使用此注解描述Spring中的Bean,但它是一个泛化的概念,仅仅表示一个组件(Bean),并且可以作用在任何层次。使用时只需要将该注解标注在相应类上即可。@Repository:用于将数据访问层(DAO层)的类标识为Spring中的Bean,其功能与@Component相同。@Service:通常作用于业务层(Service层),用于将业务层的类标识为Spring...

2019-07-01 20:17:30 444

原创 类的加载机制

    类加载器ClassLoader就是加载其他类的类,它负责将字节码文件加载到内存,创建Class对象。    ClassLoader一般是系统提供的,不需要自己实现,不过,通过创建自定义的ClassLoader,可以实现一些强大灵活的功能,比如:1.类加载的基本机制和过程    运行Java程序,就是执行java这个命令,指定包含main方法的完整类名,以及一个classpath,即...

2019-07-01 16:01:42 64

原创 注解

    在Java中,注解就是给程序添加一些信息,用字符@开头,这些信息用于修饰它后面紧挨着的其他代码元素,比如类、接口、字段、方法中的参数、构造方法等。注解可以被编译器、程序运行时和其他工具使用,用于增强或修改程序的行为。创建注解:    首先看看什么是元注解,元注解是指注解的注解(用于定义注解本身),包括@Retention、@Target、@Document、@Inherited四种...

2019-07-01 10:34:25 89

原创 Servlet

    1.什么是servlet?        (1)API:有一个接口Servlet,它是Servlet规范中定义的用来处理客户端请求的程序需要实现的顶级接口;        (2)组件:服务器端用来处理客户端请求的组件,需要在web.xml请求中配置;    2.Servlet的生命周期?        Serlvet生命周期分为三个阶段:            (1)初始化阶段...

2019-06-29 15:04:07 71

原创 hashCode和equals

    hashCode和equals用来标识对象,两个方法协同工作可以用来判断两个对象是否相等。众所周知,根据生成的哈希将数据离散开来,可以使存取元素更快。对象通过调用Object.hashCode()生成哈希值;由于不可避免地会存在哈希值冲突的情况,因此当hashCode相同时,还需要再调用equals进行一次值的比较;但是,若hashCode不同,将直接判断Objects不同,跳过equal...

2019-06-24 15:50:01 120

原创 Comparator接口

 通过实现Comparator接口可以定制比较器,该接口定义为:public interface Comparator<T>{ int compare(T o1,T o2); boolean equals(Object obj); ...} 最主要的是compare方法,它比较两个对象,返回一个表示结果的值,负整数表示o1小于o2,0表示o1等于o2,正整数表示o1大于o...

2019-06-21 15:55:51 138

原创 ThreadLocal简介

 线程本地变量,就是每个线程都有同一个变量的独有拷贝,下面看看其基本实现原理。 其中常用的就是set/get方法了。set方法的代码为:public void set(T value){ Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); if(map!=null) map.set(this.value...

2019-06-21 15:03:34 47

原创 CGLIB代理

 使用JDK动态代理存在一定的局限性,使用动态代理的对象必须实现一个或多个接口。如果要对没有实现接口的类进行代理,可以使用CGLIB代理。 CGLIB(Code Generation Library)是一个高性能开源的代码生成包,它采用非常底层的字节码技术,对指定的目标类生成一个子类,并对子类进行增强。 接下来,通过一个案例来演示CGLIB代理的实现过程,具体步骤如下。创建一个目标类Use...

2019-06-21 11:02:09 212

原创 JDK动态代理

 JDK动态代理是通过java.lang.reflect.Proxy类来实现的,我们通过调用Proxy类的newProxyInstance()方法来创建代理对象。 下面通过一个案例来演示Spring中的JDK动态代理的实现过程,具体步骤如下:创建UserDao接口。public interface UserDao{ public void addUser(); public void...

2019-06-21 08:24:14 139

原创 Comparable接口

Comparable接口Comparable接口定义如下:public interface Comparable<T>{ publci int compareTo(T o);} 接口里就一个compareTo方法,当对象大于指定对象时返回正整数,等于时返回零,小于时返回负整数。 java包装类都实现了Comparable接口,当前对象与参数对象进行比较,在小于、等于、大于...

2019-06-20 22:28:17 79

原创 匿名内部类

匿名内部类匿名内部类没有单独的类定义,它在创建对象的同时定义类先看不使用匿名内部类的情况创建一个接口Smokingpublic interface Smoking{ public abstract void smoking();}然后实现类,实现接口,重写接口抽象方法,创建实现类对象class A implements Smoking{ public void smoking...

2019-06-01 22:39:08 63

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除