2 A hut

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 15w+

动态代理

动态代理代理一词在上一篇文章中已经介绍过了,这里主要体现的是动态在之前的静态代理中,我们可以看出有许多的缺点,在我们写好一个静态代理之后,如果后续想要做出更改,是比较麻烦的,并且需要修改代理的代码,或者新增代理类,而动态代理就解决了这个问题,让我们的代理不再麻烦,在JDK中就做了动态代理,这个就是在java.lang.reflect包下,我们说代理类需要有三要素,即一接口(抽象类),两个类...

2020-02-12 20:07:59

静态代理

代理在我们写代码的时候,经常会遇到有关能不能访问,并且有时候会出现该方法功能不够的情况,这个时候使用代理无疑是最好的选择,所谓的代理就是原本实现具体功能的类,现在不许访问了,那么我们就需要借助中介类进行访问,而这个中介类就是一个代理类,为这个实际功能的类进行了代理,(比如:一个明星,在刚出道的时候没有什么人气,这个时候就像我们的代码没有代理一样,但是随着人气的积累,慢慢的业务多了之后,就需要...

2020-02-12 00:15:47

mybatis之动态SQL

存在原因我们在数据库中查询的时候,写的是固定SQL,也就是每次查询都得写一条SQL,但是在程序中,很明显如果一个表中的字段过多,那么可以根据任意字段的组合进行查询更新等操作,这个代码量是特别巨大的,这个时候就出现了动态SQL解决这一问题,就是对于条件我们进行拼接,有条件则进行条件查询,如果没有该条件则不进行条件查询。 <select id="queryAuthor" resultTy...

2020-02-11 19:06:27

mybatis之联合查询

联合查询联合查询的关键在于查出来的结果怎么获取到在之前的文章中都是对于单表进行的操作,那么查询的结果直接封装在一个单表对应的实体类中就可以了,我们就可以获取得到这些查询结果,但是如果两张表有关系,父子表的关系,那么这样简单的查询很明显不满足,比如,一个作者对应于他的博客文章,那么就是一对多的关系,而我们所说的这种对应关系有三种:一对一(特殊的一对多或者多对一)一对多/多对一(都可以看做是...

2020-02-08 18:41:07

mybatis之CRUD

CRUD要进行crud操作,首先得有一张表,与之对应的应该有一个实体类,简单的做单表的CRUD,因此建立一个实体类package mybatis2020001.model;import java.io.Serializable;public class account implements Serializable{ /** * */ private static fi...

2020-02-05 18:39:42

mybatis之环境搭建

mybatis介绍官方介绍(官方中文网站)MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录...

2020-02-05 18:26:33

mybatis之环境配置

安达市多

2020-02-05 18:24:35

log4j配置文件

日志进行控制台输出的配置文件log4j.rootLogger=debug,stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.SimpleLayoutlog4j.logger.com.ibatis=DEBUGlog4j.logge...

2020-02-05 17:51:07

进程与多线程实现

进程:进程就是起运一段程序,将这段程序加载进入内存,并为其分配相关资源,是资源分配的最小 单位。线程:线程是比进程更小一级的单位,一个进程中可以有多个线程同时存在,并执行相关任务,是计算机最小的调度单元。线程和进程有何不同?线程是进程划分成的更小的运行单位。线程和进程最大的不同在于基本上各进程是独立的,而各线程则不一定,线程可以共享资源,因为同一进程中的线程极有可能会...

2019-10-25 23:13:16

Java面试常问32

什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?答:Java虚拟机是一个可以执行Java字节码的虚拟机进程,Java源文件被编译成能被Java虚拟机执行的字节码文件,因为Java被编译为字节码文件,由虚拟机解释执行,关于底层硬件平台的东西都由Java虚拟机掌握,真正的Java代码不需要知道,所以与其无关。Java接口中声明的变量默认是final的,抽象类可以包含非...

2019-10-25 23:10:42

HTTPS

HTTP的特点:1、支持客户/服务器模式;2、简单快速;3、灵活;4、无连接;5、无状态。关于HTTP有它的优点自然就有它的缺点:通信使用明文,不加密,可能会被窃听,不验证通信方身份,可能会出现伪装。无法证明报文的完整性,可能已遭篡改。在前文我关于HTTP进行了介绍,现在开始说HTTPS:...

2019-09-08 08:57:45

get和post之区别

在面试中,经常会被问到get和post的区别:get和post在本质上是无区别的,因为他们都是TCP实现的,所以在传输上是一致的,那么为什么现在有这个问题的提出呢,虽然本质是一样的,但是一个东西是不会要重复的,get和post就像标签,对于这个标签标定的动作有什么区别:我扒拉了很多关于这个问题的文章,有关这方面直接放原文章get和post的区别在文章中我们可以看到很多的区别,但是殊途同归,...

2019-09-08 08:16:53

HTTP协议

使用Http协议访问web我们在浏览器浏览网页的时候,我们会往浏览器输入一个URL,然后浏览器就会将这个URL请求解析发往web服务器,从服务器获取资源,然后返回到浏览器给我们展现出来,这样的通信方式叫做客户端服务器方式,在这个通信过程中,web会用到一个协议:HTTP超文本传输协议,作为一个规范,也就是客户端和服务器约定的有关数据的一些规则。为了理解HTTP可能需要先了解一下TCP/IP协议...

2019-09-05 08:08:42

Java类与对象

类之间的关系类之间常见的三种关系:依赖、聚合、继承依赖:如果在一个类方法中,存在操作另一个类对象的行为,那么这种情况就是依赖。我们应该降低依赖,也就是降低耦合度,进而提高程序的安全性,因为如果需要修改一个类,但是此类的依赖过多,那么所有的类都需要检查修改,当这些类修改之后,那么与这些类相关的类也需要修改,可以想象是多么的麻烦。聚合:在一个类的对象中,有另一个类对象充当其实例数据,也就是...

2019-09-02 19:38:34

输入输出

继上篇String之后,补充一下关于StringBuilder和StringBuffer类;这两个类是可以直接进行字面变量修改的,两个类的用法一直,为什么要出两个呢?这是由于StringBuffer类是StringBuilder类的前身,它支持多线程方式执行,但是运行速度较低,为了改变这一不足,所以就出现了StringBuilder类,此类不支持同步访问,所以一般没有多线程的情况下优先使用,并...

2019-09-01 22:14:55

Java字符串

字符串从概念上讲,Java字符串就是Unicode字符序列,Java没有内置的字符串类型,而是在标准库中提供了一个预定义类String。String类对象是不可改变的,这是因为字符串指向一个存储池,而这个存储池中的数据时共享的,也就像是数值3一样,3是不可改变的,但是指向它的变量可以改变,这样那个变量就会指向另一个内存空间,而不再是原来的内存空间。由于如果改变一个字符串会使这个变量指向别的地...

2019-09-01 10:58:27

Java数学函数与常量

计算浮点数在Java中运算浮点数的时候需要注意,如果一个需要存储的值与计算机的寄存器位数不符时,比如需要计算long型,但是寄存器有80位,而且一个计算需要进行多步运算,需要将中间结果保存在寄存器中,那么会出现两种情况,一种是直接将计算结果截取64位进行保存,一种是直接进行80位的保存,在计算完毕之后进行64位的截取,当然,在第一种情况下会出现精度不够准确的问题,计算机在默认情况下会进行扩展精度...

2019-08-31 23:48:07

Java基础数据类型

Java数据类型:Java一共有8中基础数据类型,4中整型,2种浮点型,一种用于表示Unicode编码的字符型,一种表示真值的布尔型。整型int:在Java中被认定为4字节的大小,short:在Java中占两2节,long:在Java中占4字节,byte:在Java中占1字节,在定义时,长整型数值有一个后缀L或者l,十六进制数有一个前缀0x或者0X,八进制有一个前缀0,从Java7开...

2019-08-30 23:33:23

JAVA关键术语

Java白皮书中的一些关键术语:简单性面向对象分布式健壮性安全性体系结构中立可移植性解释性高性能多线程动态性这些关键都是摘自Java设计者所编写的白皮书,将对这些一一解释说明简单性Java的简单性表现在两个方面:对于Java出现以前,所使用的编程语言都相对复杂,如果不进行专门的训练很难进行编程,在Java之后,更加的面向人的思维,并且将很多复杂且使用频率不高的特...

2019-08-30 21:59:06

Redis续

。。。一天又结束了今天的货物展示开始今天听了一整天的Redis命令,没有什么卵用,就是记住了一个key *然后用来查看Redis数据库中存储的所有数据,好了,有这一个应该还算满意,下边再到处逛逛:Redis的优劣由于之前的理解中只是提到了和MySQL进行了比较,可能会理解起来不是那么的透彻,今天在这里再详细的描述一下:redis是一个key-value存储系统,数据存储在内存中,它的优点主...

2019-08-16 17:18:38

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。