随笔分类 - Java
摘要:引言 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java
阅读全文
摘要:1、映射文件配置容易出错 在映射文件中,我们习惯性在sql语句后面添加';'。 结果是报了一堆错误: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.apache.i
阅读全文
摘要:1、如何在maven项目中配置一个webapp项目? 首先新建一个maven项目 项目目录 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="htt
阅读全文
摘要:一、cookie的种类 sessionID 这个ID是会话性的,只要关闭了当前浏览器,这个ID会消失,需要调用getSessoin重新获取一个新的session 会话性cookie 这个cookie也是会话性的 即使性cookie 这个cookie只要离开的该请求或者是页面,就会消失 持久性cook
阅读全文
摘要:我: 那么当浏览器关闭的时候,当再次访问这个地址的时候,为什么之前设置的cookie没有被删除掉?而且按照你说的这次可能会生成一个新的sessionID,那么cookie里面的其他数据,它是如何获取上一次的cookie的信息,而且它是如何知道是这个客户端访问的?而不是其他客户端? AI: 当浏览器关
阅读全文
摘要:一、前言 面向接口编程,抽象方法是模板,接口是规范 二、接口的基本内容: interface IFather{ //静态常量 可以省略static和final关键字 public static final String NAME = "张三"; //抽象方法 可以省略abstract关键字 publ
阅读全文
摘要:1、static和abstract:是不能共存的。static是为了方便调用,abstract是为了给子类重写,没有方法体。 2、final和abstract:是互相冲突的,final修饰的方法不能重写,而abstract修饰的方法就是为了让子类重写的。 3、private和abstract:也是冲
阅读全文
摘要:一、前言 在Java编程中,我们常常遇到各种类型转换的情况,尤其是在处理继承关系的类时。本文将深入探讨Java中的向上转型(upcasting)、向下转型(downcasting)以及instanceof操作符的应用。 首先,我们来看一下向上转型。向上转型是从一个更具体的类型向一个更一般的类型转换。
阅读全文
摘要:super关键字并不仅限于在构造方法中使用。在Java中,super关键字有两个主要的用途: 在子类的构造方法中调用父类的构造方法。这是super的一个常见用法,通常是在子类的构造方法的第一行使用,用于显式地调用父类的构造方法。 例如: public class Child extends Pare
阅读全文
摘要:前言: 重写equals方法能够学习到多态、instanceof 代码实现: 1、仿照String类equals方法: public class Super{ static class MyString{ private final char value[]; MyString(char[] val
阅读全文
摘要:前言: 对于多态的一些概念存在模糊,于是这次来挑一下特别容易误解的点。 正文: 向下转型(downcasting)是将父类的引用转换为子类的引用。例如,如果User2继承自Object,你可以这样做: Object obj = new User2(); // 这是向上转型 User2 user2 =
阅读全文
摘要:前言: 对于多态的一些概念存在模糊,于是这次来挑一下特别容易误解的点。 正文: 在Java中,向上转型(upcasting)是将子类的对象引用赋给父类的引用。例如,如果User2继承自Object,那么你可以这样做: User2 user2 = new User2(); Object obj = u
阅读全文
摘要:前言 最近学习了关于IO流的一些知识点,但是应用还不够,所以今天做个简单案例: 随机创建名字导入文件中: package ioandcollection; import java.io.BufferedWriter; import java.io.FileWriter; import java.io
阅读全文
摘要:一、前言 前面我们讲解了如何使用字节流输入以及输出流,还有如何复制文件的操作, 今天我们讲解一下如何使用字符流。 字符流的一些基本知识点: package file.charStream; import java.io.UnsupportedEncodingException; import jav
阅读全文
摘要:Java中的IO流(一) 一、前言 学习这部分内容的时候,跟着敲代码难免有些乱,这里先放一张图: 二、实现对文件和文件夹的操作: 案例一: package file.bytestream; import java.io.File; import java.io.FileNotFoundExcepti
阅读全文
摘要:一、前言 代码: //给定一个数组 int[] arr = {234,312,32,1321,321,43}; int[] arr1 = new int[6]; int[] arr2 = {1,3,7,8,32,432,432}; 二、复制 1、arraycopy完成数组的复制 //复制arr源数组
阅读全文
摘要:一、数组 1、indexOf int targetIndex = indexOf(arr, targetValue); public static int indexOf(int[] arr,int targetValue){ int index = -1; for(int i = 0; i < a
阅读全文
摘要:前言 缓存区是一种内存空间,在计算机程序中被广泛使用来优化I/O操作的效率。在文件I/O操作中,缓存区用于缓存将要写入磁盘或读取到内存中的数据。这样可减少对磁盘的访问次数,提高I/O操作的效率。本文将介绍缓存区的基本使用以及一些注意点,并提供一个实例来演示如何将一个jpg图片复制一份。 使用缓存区进
阅读全文
摘要:在Java编程中,创建不可变的Map对象是一项非常重要的任务,这不仅有助于保证程序的线程安全性和安全性,同时还能避免意外的状态变化。本篇博客将详细介绍如何在Java程序中创建不可变的Map对象,以及Java 8之前和之后的版本间的差异。 什么是不可变类或对象? 不可变的类或对象是指在创建后其状态无法
阅读全文