Java
文章平均质量分 63
Java语言学习
陈皮话没
这个作者很懒,什么都没留下…
展开
-
SpringBoot2核心技术-核心功能【05、Web开发】
Favicon访问图标。favicon.ico 放在静态资源目录下即可。可以自动类型转换与格式化,可以级联封装。/*** 姓名: * 年龄: * 生日: * 宠物姓名:* 宠物年龄:*/@Data@Data。原创 2023-02-21 18:54:55 · 600 阅读 · 1 评论 -
SpringBoot2核心技术-核心功能【04、配置文件】
YAML 是 "YAML Ain't Markup Language"(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)。非常适合用来做以数据为中心的配置文件。Favicon访问图标。favicon.ico 放在静态资源目录下即可。原创 2022-11-02 20:48:26 · 197 阅读 · 0 评论 -
SpringBoot2核心技术-基础入门
我们通过debug可以看到需要导入的组件位置,是通过获取被注解标记的类(即主程序类)所在的包路径。5、spring.factories文件里面写死了spring-boot一启动就要给容器中加载的所有配置类。小结:将指定的一个包下的所有组件导入进来----->MainApplication 所在包下。若原本存在spring的xml配置文件,可以使用此注解加在任意配置类上,表示导入配置文件。SpringBoot默认会在底层配好所有的组件。@Import:给容器中自动创建指定的组件,默认组件的名字就是全类名。原创 2022-10-23 16:56:11 · 621 阅读 · 0 评论 -
Spring5
控制反转,把对象创建和对象之间的调用过程,交给Spring进行管理使用IOC目的:为了耦合度降低。原创 2022-10-16 22:46:26 · 704 阅读 · 0 评论 -
SSM框架整合
SSM整合:Spirng、SpringMVC、Mybatis原创 2022-09-26 10:39:47 · 82 阅读 · 0 评论 -
SpringMVC
MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。是将业务、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向耦合。MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao) 和 服务层(行为Service)。原创 2022-09-19 10:55:33 · 296 阅读 · 0 评论 -
Spring
Spring:春天——>给软件行业带来了春天!2002,首次推出了Spring框架的雏形: interface21框架!Spring框架即以interface21框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日,发布了1.0正式版。,Spring Framework创始人,著名作者。很难想象Rod Johnson的学历,真的让好多人大吃一惊,他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。原创 2022-09-12 19:48:35 · 448 阅读 · 0 评论 -
JavaWeb入门到实战-SMBMS(超市管理项目)
项目完成,见github源码。原创 2022-08-20 14:00:51 · 92 阅读 · 0 评论 -
JavaWeb入门到实战
web开发:可以提供浏览器访问的程序;Web应用程序编写完毕后,若想提供给外界访问;需要一个服务器来统一管理;*.htm, *.html这些都是网页的后缀、如果服务器上一直存在这些东四,我们就可以直接通过网络进行读取;静态web存在的缺点页面会动态展示,即“web页面的展示效果因人而异” 缺点:优点:ASP:php:JSP/Servlet:B/S:浏览和服务器C/S:客户端和服务器服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息;IIS:微软的;ASP.,Windows中自带的Tomca原创 2022-07-11 21:57:22 · 6662 阅读 · 0 评论 -
Java进阶(四十九)Java的反射机制
一、Java的反射机制概述1.1 Java ReflectionReflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期间借助于Reflection API取的任何类的内部信息,并能直接操作人已对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以称之为:反射。正常方式:...原创 2022-03-23 17:35:30 · 193 阅读 · 0 评论 -
Java进阶(四十八)网络编程4:URL类
一、URL类的理解与实例化二、URL网络编程实现Tomcat服务端数据下载原创 2022-03-15 18:45:49 · 3821 阅读 · 0 评论 -
Java进阶(四十七)网络编程3:UDP网络编程
一、概述类DatagramSocket 和 DatagramPacket 实现了基于UDP协议网络协议程序。 UDP数据报通过数据报套接字DatagramSocket发送和接受,系统不保证UDP数据一定能够安全送到目的地,也不能确定什么时候可以抵达。 DatagramPacket对象封装了UDP数据报,在数据报中包含了发送端的IP地址和端口号以及接收端的IP地址和端口号。 UDP协议中每个数据报都给出了完整的地址信息,因此无需建立发送方和接收方的链接。如同发快递包裹一样。二、举例impor原创 2022-03-14 17:25:44 · 988 阅读 · 0 评论 -
Java进阶(四十六)网络编程2:TCP网络编程
1.实际原创 2022-03-14 14:43:15 · 925 阅读 · 0 评论 -
Java进阶(四十五)网络编程1:网络编程概述、通信要素概述
一、网络编程概述1.1计算机网络把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息、共享硬件、软件、数据库信息等资源。1.2网络编程的目的直接或间接地通过网络协议与其他计算机实现数据交换,镜像通讯。1.3网络编程中有2个主要的问题如何准确地定位网络上一台或多台主机;定位主机上的特定的应用 找到主机后如何可靠高效地进行数据传输二、网络通信要素概述2.1通信双方地址IP 端口号2.2一定的规则,即原创 2022-03-11 15:11:49 · 3439 阅读 · 0 评论 -
Java进阶(四十四)IO流12:NIO.2中Path、Paths、Files类的使用
一、NIO1.1概述Java NIO(new IO,No-Blocking IO)是从Java1.4版本开始引入的一套新的IO API,可以替代标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的(IO是面向流的)、基于通道的IO类。NIO将以更加高效的方式进行文件的读写操作。 Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。 |-----java.nio.channels.Channel原创 2022-03-10 16:19:45 · 407 阅读 · 0 评论 -
Java进阶(四十三)IO流11:随机存取文件流
一、RandomAccessFile类1.1概述实现了DataInput、DataOutput两个接口,意味着这个类既可以读也可以写。 支持“随机访问”的方式。程序可以直接跳到文件的任意地方来读、写文件。 支持只访问文件的部分内容 可以向已存在的文件后追加内容 RandomAccessFile类对象包含一个记录指针,用以标示当前读写处的位置。 RandomAccessFile类对象可以自由移动记录指针: long getFilePointer():获取文件记录指针的当前原创 2022-03-09 17:40:37 · 234 阅读 · 0 评论 -
Java进阶(四十二)IO流10:对象流 ObjectInputStream、ObjectOutputStream
一、概述1.1作用用于存储和读取基本数据类型数据或对象的处理流。它的强大之处是可以把Java中的对象写入到数据源中,也能把对象从数据源中还原回来。1.2序列化序列化:用ObjectOutputStream类保存基本数据类型或对象的机制。 反序列化:用ObjectInputStream类读取基本数据类型或对象的机制。1.3注意ObjectOutputStream和ObjectInputStream不能序列化static和transient修饰的成员变量。...原创 2022-03-07 14:56:13 · 334 阅读 · 0 评论 -
Java进阶(四十一)IO流9:其他流:标准输入输出流、打印流、数据流
一、概述1.1System.in和System.out分别代表了系统标准的输入和输出设备。 默认输入设备时:键盘,输出设备是:显示器。 System.in的类型是InputStream,字节输入流。 System.out的类型是PrintStream,是OutputStream的子类FilterOutputStream的子类。1.2重定向 System类的 setInt()、setOut() 方式重新指定输入和输出的流。 setInt(InputStream is) ..原创 2022-03-03 22:57:09 · 327 阅读 · 0 评论 -
Java进阶(四十)IO流8:转换流
一、转换流的概述转换流也属于处理流的一种。 转换流提供了在字节流和字符流之间的转换。 Java API中提供了2个转换流: InputStreamReader:InputStream——> Reader OutputStreamWriter:Writer ——> OutputStream 字节流中的数据都是字符时,转成字符流操作更高效。 很多时候我们使用转换流来处理文件乱码问题。实现编码和解码的功能。...原创 2022-03-03 22:33:03 · 135 阅读 · 0 评论 -
Java进阶(三十九)IO流7:缓冲流的练习
练习1分别使用节点流:FileInputStream、FileOutStream和缓冲流:BufferedInputStream、BufferedOutStream实现图片视频文件的复制,并比较在数据复制方面的效率。见前几篇文章。练习2实现图片加密操作。提示:int b = 0;while ((b = bis.read()) != -1) { fos.write(b ^ 5)}练习3获取文本上每个字符出现的次数提示:每遍历文本每一...原创 2022-03-03 11:03:47 · 206 阅读 · 0 评论 -
Java进阶(三十八)IO流6:缓冲流
一、概述1.1缓冲流缓冲流为处理流的一种,分别对4个节点流进行了包装处理。节点流 缓冲流 FileInputStream BufferedInputStream FileOutputStream BufferedOutputStream FileReader BufferedReader FileWriter BufferedWriter 1.2作用提高流的读取、写入的速度。 原因:内部提供了一个缓冲区 byte buf[8192]。二、B原创 2022-03-02 22:36:35 · 210 阅读 · 0 评论 -
Java进阶(三十七)IO流5:FileInputStream、FileOutputStream
一、小结对于文本文件(txt,java ,c,cpp),使用字符流处理。 对于非文本文件(jpg,mp3,mp4,avi,doc,ppt),使用字节流处理。二、使用FileInputStream和FileOutputStream复制非文本文件2.1步骤同之前。 /** * 实现对图片的复制 */ @Test public void testFileInputOutputStream() { //1.实例化file对象原创 2022-03-02 21:50:19 · 151 阅读 · 0 评论 -
Java进阶(三十六)IO流4:FileReader、FileWriter
一、FileReader1.1FileReader读入数据的基本操作1.File类的实例化,指明要操作的文件。2.提供具体的流,实例化FileReader流。3.数据读入。4.流的关闭操作。 @Test public void testFileReader() { FileReader fr = null; try { //1.实例化file对象,指明要操作的文件 File file =原创 2022-03-02 15:54:01 · 198 阅读 · 0 评论 -
Java进阶(三十五)IO流3:原理及分类
1.Java IO原理I/O是Input/Output的缩写,I/O是非常实用的技术,用于处理设备之间的数据传输。如读写文件,网络通讯等。 Java程序中,对于数据的输入输出操作以“流stream”的方式进行。 java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,并通过标准的方法输入或输出数据。2.流的分类按操作数据单位的不同分为:字节流(8bit),字符流(16bit)。 字节流适合处理图片、视频等非文本文件。 字符流适合处理文本文件。 按数据流的流向不同分原创 2022-03-01 20:26:57 · 517 阅读 · 0 评论 -
Java进阶(三十四)IO流2:File类的练习
1.利用File构造器,new一个文件目录file在其中创建多个文件和目录 编写方法,实现删除file中指定文件的操作2.判断指定目录下是否有后缀名为.jpg的文件,如果有,就输出该文件名称3.遍历指定目录所有文件名称,包括子文件目录中的文件。并计算指定目录占用空间的大小 删除指定文件目录及其下的所有文件。...原创 2022-03-01 17:27:03 · 546 阅读 · 0 评论 -
Java进阶(三十三)IO流1:File类的使用
1.File类的使用java.io.File类:文件和文件目录路径的抽象表达形式,与平台无关。 File能新建、删除、重命名文件和目录,但File不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入输出流。 想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。 File对象可以作为参数传递给流的构造器。2.常用构造器public File(String pathname) 以p原创 2022-02-28 23:54:59 · 147 阅读 · 0 评论 -
Java进阶(三十二)泛型3:练习
题目定义个泛型类DAO<T>,在其中定义一个Map成员变量,Map的键为String,值为T类型。分别创建以下方法:public void save(String id ,T entity) :保存T类型的对象到Map成员变量中。 public T get(String id):从map中获取id对应的对象。 public void update(String id ,T entity):替换map中key为id的内容,改为entity对象。 public List<T&原创 2022-02-28 22:16:33 · 611 阅读 · 0 评论 -
Java进阶(三十一)泛型2
3.自定义泛型结构4.泛型在继承上的提现5.通配符的使用6.泛型应用举例原创 2022-02-28 21:45:34 · 144 阅读 · 0 评论 -
Java进阶(三十)泛型1
为什么要有泛型原创 2022-02-23 13:35:47 · 98 阅读 · 0 评论 -
Java进阶(二十九)集合12:集合练习题
1.从键盘随机输入10个整数保存到List中,并按照倒序、从大到小的顺序显示出来。import java.util.ArrayList;import java.util.Collections;import java.util.Scanner;public class exer1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Arr原创 2022-02-21 16:46:27 · 1057 阅读 · 0 评论 -
Java进阶(二十八)集合11:Collections工具类
概述Collections:对Collection、Map等集合进行操作的工具类。 Collections中提供了一系列静态的方法对集合元素进行排序、查询和修改等操作,还提供了对集合对象设置不可变、 对集合对象实现同步控制等方法。排序操作(均为static方法)reverse(List) 反转List中元素的顺序。 shuffle(List) 对List集合元素进行随机排序。 sort(List) 根据元素的自然排序对指定List集合元素进行升序排序。 sort(List,Compar原创 2022-02-21 14:47:49 · 315 阅读 · 0 评论 -
Java进阶(二十七)集合10:Map接口实现类:Properties
Properties类是Hashtable的子类,该对象用于处理属性文件。 由于属性文件里的key、value都是字符串类型,所以Properties里的key-value都是字符串类型。 存取数据时,建议使用setProperty(String key,String value)方法和getProperty(String key)方法。...原创 2022-02-20 22:08:36 · 142 阅读 · 0 评论 -
Java进阶(二十六)集合9:Map接口实现类:TreeMap
TreeMap中添加key-value,要求key要求必须是由同一个类创建的对象。 因为要按照key进行排序:自然排序、定制排序User类:public class User implements Comparable { private String name; private int age; ... @Override public boolean equals(Object o) { System.out.println("Us原创 2022-02-20 21:42:36 · 284 阅读 · 0 评论 -
Java进阶(二十五)集合8:Map中的常用方法
Map接口中定义的方法:添加、删除、修改Object put(Object key,Object value):将指定的key-value添加(修改)到当前map对象中。 void putAll(Map m):将m中所有key-value对存放到当前map中。 Object remove(Object key):移除指定key-value对,并返回value。 void clear:清空当前map中的所有数据。元素查询Object get(Object key):获取指定key对应的va原创 2022-02-20 21:29:33 · 189 阅读 · 0 评论 -
Java进阶(二十四)集合7:Map接口实现类:HashMap、LinkedHashMap
一、Map接口实现类 存储kay-value键值对的数组。 具体有以下实现类:HashMap:作为Map的主要实现类;线程不安全,效率高;存储null的key和value。 LinkedHashMap:保证在遍历map元素时,可以按照添加的顺序实现遍历。原因是在原有的HashMap底层结构基础上,添加了前后的指针,即双向链表。对于频繁的遍历操作,此类执行效率高于HashMap。 TreeMap:保证按照添加的key-value进行排序,实现排序遍历。此时考虑key的自然排序或定制排序..原创 2022-02-20 20:44:46 · 473 阅读 · 0 评论 -
Java进阶(二十三)集合6:练习题
练习一定义一个Employee类 。该类包含:private成员遍历 name、age、birthday,其中birthday为MyDate类的对象; 为每个属性定义get、set方法; 重写toString方法输出name、age、birthdayMyDate类包含:private 成员变量 year、month、day; 为每一个属性定义get、set方法;创建该类的5个对象,并把这些对象放入TreeSet集合中(之后TreeSet需要使用泛型来定义),分别按以下两种方式对集合中的原创 2022-02-20 16:49:55 · 367 阅读 · 0 评论 -
Java进阶(二十二)集合5:Set接口实现类:HashSet、HashLinkedSet、TreeSet
一、Set Set接口存储无序、不可重复的数据。但这里的无序跟遍历的顺序不是一个意思。Set接口框架HashSet:作为Set的主要实现类;线程不安全;可以存储null值。 LinkedHashSet:作为HashSet的子类,在遍历数据时可以按添加的顺序遍历。 TreeSet:底层为红黑树,可以按照添加对象的指定属性,进行排序。无序性和不可重复性的理解以HashSet为例说明:无序性:不等于随机性。存储的元素在底层数组中并非按照数组索引的...原创 2022-02-20 14:02:22 · 275 阅读 · 0 评论 -
Java进阶(二十一)集合4:List接口中常用方法及面试题
List中的常用方法原创 2022-02-20 12:04:15 · 147 阅读 · 0 评论 -
Java进阶(二十)集合3:List接口实现类:ArrayList、LinkedList、Vector
Q&A:ArrayList、LinkedList、Vector的异同?相同:都是List接口的实现类,都存储有序、可重复的数据。不同点:ArrayList:作为List接口的主要实现类,线程不安全,效率高。底层使用Object[] elementData存储,即Object数组。 LinkedList:对于频繁的插入、删除操作,使用此类效率比较高。底层使用的是双向链表存储。 Vector:作为古老实现类,线程安全,效率低。底层使用Object[] elementData存储,即Obj原创 2022-02-18 17:30:48 · 303 阅读 · 0 评论 -
Java进阶(十九)集合2:Iterator迭代器
概述Iterator对象成为迭代器(设计模式的一种),主要用于遍历Collection集合中的元素。 Collection接口集成了java.lang.iterator接口,该接口有一个iterator()方法。那么,所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了Iterator接口的对象。 Iterator仅用于遍历集合,本身不提供承装对象的能力。如果需要创建Iterator对象,则必须有一个被迭代的集合。 集合对象每次调用iterator()都得原创 2022-02-18 15:12:02 · 223 阅读 · 0 评论