随笔分类 - java学习
每日笔记
摘要:想了解java中的动态代理,我们首先需要了解的是一种常用的设计模式,代理模式。 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象
阅读全文
摘要:在说明cookie和session之前,先说明一下什么是状态管理 状态管理:将浏览器与web服务器之间多次交互当做一个整体来看待(即为了完成某个业务,需要多次交互,比如购物),并且将多次交互所涉及的数据(即状态)保存下来。 进行状态管理的方法 客户端:利用cookie技术进行管理 服务端:利用ses
阅读全文
摘要:Filter 简介 Filter也称之为过滤器,是Servlet2.3新增的一个特性,主要用于过滤url请求,通过FIlter我们可以实现URL请求资源权限验证,用户登录检测等功能。 Filter是一个接口,实现一个Filter只需要重写init、doFilter、destroy方法即可,其中过滤逻
阅读全文
摘要:概念 在b/s架构中,请求和响应都是必须的,在我们跟网页进行交互的时候,我们需要使用request发送请求,当服务器接收到请求后,根据设定代码,返回响应包的内容。 当我们需要在页面上显示一些东西的时候,就需要使用response来打印。 request和response request和respon
阅读全文
摘要:URLConnection 这是一个对网页发起请求的类,类似于之前跟数据库发起请求差不多。 首先建立连接对象,然后设置请求属性,然后将结果返回,并且利用InputStream保存,随后展示在页面上。 代码演示 package urlConnection; import java.io.Buffere
阅读全文
摘要:Servlet Servlet是在java web容器中运行的小程序,通常我们用Servlet来处理一些较为复杂的服务器端的业务逻辑。Servlet是Java EE的核心,也是所有的MVC框架的实现的根本! Servlet的定义 Servlet的定义很简单,我们在项目的src目录下创建一个class
阅读全文
摘要:SPI机制 SPI,全称为Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。 这一机制为很多框架扩展提供了可能,比如在Dubbo、JDBC中使用SPI机制。 Java
阅读全文
摘要:JDBC浅析 connection connection是数据库连接对象,我们针对于数据库的一系列操作都以来connection这个对象完成。 简单来说,我们利用java代码连接数据库的时候,初始需要两个步骤。 注册驱动 获取连接 注册驱动 首先,我们要先了解,java通过java.sql.Driv
阅读全文
摘要:数据库连接池 概念:其实就是一个容器(集合),存放数据库连接的容器。 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。 好处: 节约资源 用户访问高效 实现: 标准接口:DataSource java.sql包
阅读全文
摘要:JDBC工具类 目的:简化书写 分析: 注册驱动 抽取一个方法获取连接对象 需求:不想传递参数(麻烦),还要保证工具类的通用性。 解决:配置文件 package JDBC工具类; import javax.xml.transform.Result; import java.io.FileReader
阅读全文
摘要:JDBC基本概念 Java数据库连接,也就是使用Java语言操作数据库。 本质: 其实是官方(SUN公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包,我们可以使用这套接口(JDBC)变成,整整执行的代码是驱动jar包中的实现类。 JDBC快速入
阅读全文
摘要:XML的解析: 操作xml文档,将文档中的数据读取到内存中。 操作xml文档 解析(读取):将文档中的数据读取到内存中 写入:将内存中的数据保存到xml文档中,持久化的存储。 解析xml的方式: DOM:将标记语言文档一次性加载进内存,在内存中形成一颗dom树 优点:操作方便,可以对文档进行CRUD
阅读全文
摘要:概念 注释:用文字描述程序的。给程序员看的。 注解:说明程序的,是给计算机看的。 定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、美剧是在同一个层次的。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素
阅读全文
摘要:反射:框架设计的灵魂 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码。 反射:将类的各个组成部分封装为其他对象,这就是反射机制。 好处: 可以在程序运行过程中,操作这些对象。 可以解耦,提高程序的可扩展性。 获取Class对象的方式: class.forName("全类名"):将字节码文
阅读全文
摘要:Junit单元测试 测试分类 黑盒测试:不需要写代码,给输出值,看程序是否能够输出期望的值。 白盒测试:需要写代码的。关注程序具体的执行流程。 junit使用:白盒测试 步骤: 定义一个测试类(测试用例) 建议: 测试类名:被测试的类名Test CalculatorTest 包名:xxx.xxx.x
阅读全文
摘要:通过对象名引用成员方法 使用前提是对象名是已经存在的,成员方法也是已经存在的,就可以使用对象名来引用成员方法。 代码演示 //创建一个成员方法 package day17; public class MethodRerObject { //定义一个成员方法,吧字符串大写输出 public void
阅读全文
摘要:概述 在使用lambda表达式的时候,我们实际上传递进去的代码就是一种解决办法:拿什么参数做什么操作,那么考虑一种情况:如果我们在lambda中所指定的操作方案,已经有地方存在相同的方案,那么是否还有必要再重写重复逻辑。 代码演示 package day17; public class Demo01
阅读全文
摘要:Stream流属于管道流,只能被消费(使用)一次 第一个Stream流调用完毕方法,数据就会流转到下一个Stream上 而这时第一个Stream流已经使用完毕,就会关闭了。 所以第一个Stream流就不能再调用方法了。 IllegalStateException:Stream has already
阅读全文
摘要:使用Stream流的方式,对集合中的数据进行过滤 Stream流是JDK1.8之后出现的 关注的是做什么,而不是怎么做。 package day15; import java.util.ArrayList; import java.util.List; public class Demo01 { p
阅读全文
摘要:package day14; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.ServerSoc
阅读全文