- 博客(72)
- 收藏
- 关注
原创 Java框架MyBatis学习历程(8)——MVC
文章目录1、创建Java Web项目注意事项1.1 导入servlet-api依赖要将scope标签设置为provided1、JSON1、创建Java Web项目注意事项1.1 导入servlet-api依赖要将scope标签设置为provided<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</a
2021-06-17 11:45:35 1078 1
原创 MySQL基础学习(七)————索引
文章目录1、什么是索引?2、索引的数据结构2.1 二叉树(红黑树)2.2 Hash表2.3 B树1、什么是索引? MySQL官方对索引的定义是:索引是可以帮助MySQL高效获取数据的数据结构。即索引是数据结构。数据库在执行查询的时候,如何没有索引存在的情况下,会采用全表扫描的方式进行查找。如果存在索引,则会先去索引列表中定位到特定的行或者直接定位到数据,从而可以极大地减少查询的行数,增加查询速度。 索引可以类比为一部字
2021-05-31 09:14:58 351
原创 MySQL基础学习(六)————数据库连接池
文章目录1、什么是数据库连接池?2、自己实现一个数据库连接池3、开源的数据库连接池3.1 DBCP3.2 C3P03.3 Druid1、什么是数据库连接池?这个是一项池化技术,是为了提高数据库连接的使用率的一项技术。我们现在使用JDBC的时候,每次都需要和数据库新建立一个新的连接,使用完了就把这个连接关闭了,那么这样其实是很不环保的,也不利于提高程序的效率,所以就有了数据库连接池。2、自己实现一个数据库连接池/** * 创建自己的数据库连接池 * * 带有扩容的规则 自己定义的扩容的规则
2021-05-26 23:41:45 365
原创 MySQL基础学习(五)————事务机制
文章目录1、事务是什么?2、转账案例2.1 设计表2.2 插入数据2.3 转账的demo2.4 事务控制2.5 转账案例优化:3、事物的特性3.1 原子性(atomicity):A3.2 一致性(consistency):C3.3 隔离性(isolation):I3.4 持久性(Durability):D4、事务的隔离级别4.1 read uncommitted 读未提交4.2 read committed 读已提交4.3 Repeatable read 可重复读4.4 Serializable 串行化
2021-05-26 19:34:10 485
原创 MySQL基础学习(四)————JDBC
文章目录1、JDBC是什么?2、第一个JDBC2.1 第一步:导包2.2 第二步:编写代码2.2.1 修改2.2.2 查询2.2.3 解析结果集优化3、使用工具类优化代码3.1 第一个简单版本3.2 第二个版本4、使用JDBC进行增删改查5、数据库注入问题5.1 登录案例5.2 PrepareStatement5.3 登录案例改造6、批处理6.1 Statement批处理6.2 PrepareStatement批处理6.3 对比1、JDBC是什么? &nb
2021-05-26 16:59:59 465 1
原创 MySQL基础学习(三)————SQL语句的常用操作
文章目录1、库1.1库的创建1.2 库的删除1.3 库的修改1.4 库的查找1、库1.1库的创建`create database dbName [character set utf8 collate utf8_bin]`说明:character set : 字符集 collate : 校对规则 字符集常用的是 utf8,他
2021-05-25 22:09:51 314
原创 Java Web基础学习(8)——过滤器(Filter)
文章目录1、内容介绍2、初识过滤器3、开发第一个过滤器1、内容介绍2、初识过滤器3、开发第一个过滤器①编写过滤器对url进行处理public class MyFirstFilter implements Filter{ @Override public void destroy() { // TODO Auto-generated method stub } @Override public void doFilter(ServletRequest request,
2021-05-24 23:04:22 168 2
原创 Java Web基础学习(5)——Servlet与JSP进阶(下)
文章目录1、解决Post请求中文乱码问题2、解决Get请求与响应中文乱码3、web.xml常用配置3.1 修改web应用默认首页3.2 Servlet 通配符映射及初始化参数3.3 应用程序全局参数设置3.4 设置404、500状态码默认页面4、JSP九大内置对象1、解决Post请求中文乱码问题解决方案:protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletExcep
2021-05-13 22:56:10 134
原创 Java Web基础学习(4)——Servlet与JSP进阶(上)
文章目录1、请求的结构1、请求的结构①get请求详细信息:②post请求详细信息:
2021-05-10 23:34:12 153 2
原创 JAVA数据结构学习(8)——Map
文章目录1、Map接口1.1 特点1.2 Api2、HashMap2.1 特点1、Map接口Java集合体系有两个:(1)Collection集合体系: 存储单个数据(2)Map集合体系: 存储key-value数据1.1 特点(1)Map接口是Map集合体系的顶级接口(2) 和Collection接口以及Collection下面自实现不同的是 , Map所存储的数据不再是单个数据的, 而是Key-value类型的数据( 键值对 )(3) Map的子实现有些是有序的, 有些是无序的(4
2021-05-10 22:04:32 1138 2
原创 JAVA数据结构学习(7)——Queue
文章目录1、Queue队列1.1 特点1.2 Api2、Deque接口2.1 Api3、ArrayDeque3.1 特点3.2 构造方法4、BlockingQueue1、Queue队列1.1 特点1, Queue接口是Collection接口一个子接口。2, Queue代表/描述的是队列(什么是队列: 一个操作受到限制的线性表, 在添加的时候只能在一端添加, 删除要在另一端删除 先进先出. 后进后出)。3, 有序。4, 能存储重复元素。5, 不能存储null(除了LinkedList以
2021-05-10 21:05:20 409 1
原创 JAVA数据结构学习(6)——List
文章目录1、List以及List的子类1.1 List1.1.1 特点1.1.2 Api1、List以及List的子类1.1 List1.1.1 特点1, List的是Collection的子接口2, List是Collection的一个线性表子接口 --> (有序, 有下标操作, )3, 有序4, 允许重复元素存在5, 允许null1.1.2 Api① boolean add(E e) : 向列表的尾部添加指定的元素(可选操作)。② void add(int index
2021-05-08 09:31:17 265 1
原创 Java Web基础学习(3)—— JSP
文章目录1、JSP的引入2、JSP执行过程3、JSP的基本语法4、使用案例5、JSP页面重用1、JSP的引入jsp页面案例:<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title></head><body> <table> <tr>
2021-05-07 23:38:53 142 3
原创 JAVA数据结构学习(5)——集合
文章目录1、概述1.1 集合类种类2、Collection2.1 Collection的特点2.2 API1、概述1.1 集合类种类(1)Collection: ①List: 线性表子接口 &
2021-05-06 09:11:18 136
原创 Java Web基础学习(2)——Servlet
文章目录1、软件结构发展史2、Tomcat与Servlet3、第一个Servlet1、软件结构发展史2、Tomcat与Servlet3、第一个Servlet
2021-05-05 23:26:41 116
原创 JAVA数据结构学习(4)——树
文章目录1、树1.1、概念1.2 术语1.3 树的实现1.3.1 用数组来实现一棵树?1.3.2 用链表实现一棵树?1.3.3 树的转化1.4 二叉树1.4.1 二叉树的性质1、树1.1、概念与线性表表示的一一对应的线性关系不同,树表示的是数据元素之间更为复杂的非线性关系。直观来看,树是以分支关系定义的层次结构。 树在客观世界中广泛存在,如人类社会的族谱和各种社会组织机构都可以用树的形象来表示。简单来说,树表示的是1对多的关系。定义(逻辑结构):树(Tree)是n( n>=0 )个结点
2021-05-03 22:23:27 284 1
原创 JAVA数据结构学习(3)——栈和队列
文章目录1、栈1.1 概述1.1.1 线性表的概念1.1.2 栈的概念1.1.3 栈的应用2、队列2.1 队列的概念2.2 队列的实现2.3 队列的应用1、栈1.1 概述Java为什么要有集合类: 临时存储数据。链表的本质: 对象间通过持有和引用关系互相关联起来。线性表: 普通线性表, 操作受限线性表(某些操作受到限制 --> 某一个线性表它的增删改操作受到限制) --> 栈 & 队列1.1.1 线性表的概念(1)线性表:n个数据元素的有序序列。①首先,线性表中元素的个
2021-05-03 21:15:08 179 1
原创 JAVA数据结构学习(2)——泛型
文章目录1、泛型1.1 概述1.2 泛型的好处1.3 泛型的写法1.3.1 泛型类的写法1.3.2 泛型接口1、泛型1.1 概述1, 什么是泛型?泛型,即“参数化类型”。顾名思义,就是将类型由原来的具体的类型’参数化’,此时类型也定义成参数形式,然后在使用/调用时传入具体的类型// 泛型一般常用语java的集合类1.2 泛型的好处a. 提高了程序的安全性: b. 将运行期遇到的问题转移到了编译期: 编译时问题会提示我们有些错误, 可以立即修改 c. 省去了类型强转的麻烦war , jar -
2021-04-29 23:43:00 304 1
原创 JAVA数据结构学习(1)——链表
1、概念1.1 JavaJava一般用来做服务器开发拿一个淘宝网站举例子:本质上我们所看到的网页, 是一些数据的集合我们在我们的电脑上看到这些数据, 都是从淘宝服务器获得的。Java代码 .java - .class – 根据。Class文件产生的对象才是实际有意义的数据存储在数据库MySql 管控数据(外存)Java本质工作核心: 攒数据Java要不要临时存储数据// java为了更好更优秀的处理数据(不在完全通过我们手动操作)java提供了一些class-----》 java的集合
2021-04-27 22:27:32 200
原创 Java基础学习生疏知识点总结(20)——SE模考错题总结
3 设 int x = 1 , int y = 2 , int z = 3,则表达式 y+=z-- / ++x 的值是 _____。A. 3B. 3.5C. 4D. 58 下列说法中,_____是正确的。A. 子类拥有的成员数目大于父类拥有的成员数目B. 父类代表的对象范围比子类广C. 子类要调用父类的方法,必须使用super关键字D. 一个Java类可以有多个父类14 下面代码的运行结果为:()import java.io.;import java.util.;public
2021-04-26 22:58:16 937 6
原创 Java框架MyBatis学习历程(6)——对象关联查询,分页插件PageHelper,配置C3P0连接池
文章目录1、实体关系分析2、OneToMany对象关联查询1、实体关系分析2、OneToMany对象关联查询
2021-04-24 17:54:15 215
原创 Java基础学习生疏知识点总结(19)——多线程(下)
文章目录1、线程生命周期2、多线程的实现方式二:Runnable3、继承Thread(方式一)和实现Runnable接口(方式二)比较4、数据安全问题1、线程生命周期五种线程状态新建:线程对象刚刚创建出来 没有start就绪:执行start方法 启动了 没有CPU的执行权执行:抢到了CPU的执行权 该线程在CPU上运行阻塞:没有CPU的执行权 还缺少一些必要条件死亡:线程中的run方法执行完,被当做垃圾被垃圾回收机制回收各个状态之间的转换2、多线程的实现方式二:Runnable步骤
2021-04-22 23:42:37 147
原创 Java框架MyBatis学习历程(5)——日志管理,动态SQL与二级缓存
文章目录1、什么是日志?2、动态SQL3、MyBatis二级缓存3.1 一级缓存测试案例:3.2 二级缓存1、什么是日志?运行程序打印日志数据需要导入日志实现相关依赖,如下; <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> &l
2021-04-22 23:21:58 129
原创 Java框架MyBatis学习历程(4)——数据插入、更新和删除操作以及预防SQL注入攻击
文章目录1、MyBatis数据插入操作1、MyBatis数据插入操作
2021-04-21 17:25:01 151
原创 Java基础学习生疏知识点总结(18)——多线程(上)
文章目录1、操作系统相关知识2、java程序运行3、多线程的实现方式一:继承Thread1、操作系统相关知识2、java程序运行java命令启动java程序的原理java命令,创建jvm进程jvm进程创建一个线程,主线程 main执行主线程中的main方法jvm是单线程还是多线程jvm是多线程的,起码有一个垃圾回收线程3、多线程的实现方式一:继承Thread文档实例Thread类线程 是程序中的执行线程。Java 虚拟机允许应用程序并发地运行多个执行线程。..
2021-04-20 22:50:10 143 1
原创 Java基础学习生疏知识点总结(17)——IO字符流和其它流
文章目录1、字符流1.1 字符输出流1.1.1 抽象基类Writer1.1.2 具体子类1、字符流字符流产生的原因用字节流读取英文字符与数字没有问题 能够正常显示用字节流读取中文字符可能会有问题编解码一个字符在计算机当中是怎样存储的?基于某个编码表,有与之对应的整数值(编码值)存储在计算机当中的编码基于某个编码表,把字符数据转化成编码值的过程(把人看懂的东西转化成计算机看懂的东西)解码基于某个编码表,把编码值转化成字符数据的过程(把计算机看懂的东西转
2021-04-20 14:29:52 141
原创 Java框架MyBatis学习历程(3)——Sql传参,多表关联查询、ResultMap结果映射
文章目录1、带参查询select2、MyBatis获取多表关联查询结果1、带参查询select代码实例:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="go
2021-04-19 23:26:36 243
原创 Java基础学习生疏知识点总结(16)——异常处理,文件和日期常用方法
文章目录1、异常1.1 异常与错误1.2 Throwable的子类:1.3 Java设计异常体系的原则1.4 JVM异常处理机制1.5 处理异常语法1.6 自定义异常2 File2.1 System.getProperty("user.dir") 这个方法可以用来获取当前IDEA的相对路径2.2 常用API2.2.1分隔符2.2.2 文件创建2.2.3 删除文件2.2.4 文件移动与重命名2.2.5 File的判断功能2.2.6 File的获取功能2.2.7 File的高级获取功能2.2.8 listFil
2021-04-18 23:12:17 299 4
原创 Java框架MyBatis学习历程(2)——SqlSessionFactory,初始化工具类MyBatisUtils与数据查询
文章目录1、SqlSessionFactory介绍2、初始化工具类(保证SqlSessionFactory的全局唯一性)3、MyBatis数据查询1、SqlSessionFactory介绍代码演示://JUNIT单元测试类public class MyBatisTestor { @Test public void testSqlSessionFactory() throws IOException { //利用Reader加载classpath下的mybatis-
2021-04-18 20:31:31 300
原创 前端基础学习(1)——XML
文章目录1、课程介绍2、XML(可扩展标记语言)介绍3、XML文档结构1、课程介绍2、XML(可扩展标记语言)介绍3、XML文档结构
2021-04-18 15:42:32 200
原创 Java基础学习生疏知识点总结(15)——IO字节流
文章目录1、IO概述1.1 什么是IO?1.2 为什么会有IO?1.3 java中如何实现IO功能?1.4 流的分类1.5 抽象基类1.6 什么时候该用什么流2、字节流2.1 字节输出流2.2 字节输出流具体子类2.2.1FileOutputStream2.2.2 BufferedOutputStream2.2.3 装饰设计模式2.3 字节输入流2.4 字节输入流具体子类2.4.1 FileInputStream2.4.2 BufferedInputStream2.5 复制文件练习1、IO概述1.1 什
2021-04-16 22:56:54 212 3
原创 Java框架前置知识5——函数式编程与stream流
文章目录1、什么是函数式编程?2、函数式接口Predicate3、函数式接口包名java.util.function4、函数式编程总结5、Stream流式处理1、什么是函数式编程?2、函数式接口Predicatepublic class PredicateSample { public static void main(String[] args) { Predicate<Integer> predicate = n -> n > 4;
2021-04-15 23:44:10 132
原创 Java框架前置知识4——Java反射(Reflect)
文章目录1、内容2、什么是反射Reflect?2.1 反射的应用3、反射的核心类3.1、Class类1、内容2、什么是反射Reflect?2.1 反射的应用/** * 利用反射创建对象更加灵活 */ public static void case2() { Scanner scanner = new Scanner(System.in); System.out.print("请输入计算类名:"); String op =
2021-04-14 21:25:05 122
原创 Java框架前置知识3——工厂模式
文章目录1、内容2、设计模式由来3、设计模式的分类4、工厂模式1、内容2、设计模式由来3、设计模式的分类4、工厂模式
2021-04-14 15:11:38 65
原创 Java框架前置知识2——Maven修改本地仓库
文章目录1、找到maven安装文件目录下的seetings.xml文件并打开2、定位到53行,该行表示我们的本地仓库所存放的默认地址,对其进行修改,设置自己想要存储的地方,并保存。3、以eclipse为例,使修改文件生效4、为了避免长时间的重新下载jar包,我们可以将之前路径下载的东西直接拷贝到修改后的路径下。1、找到maven安装文件目录下的seetings.xml文件并打开2、定位到53行,该行表示我们的本地仓库所存放的默认地址,对其进行修改,设置自己想要存储的地方,并保存。3、以eclip
2021-04-14 14:28:43 202
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人