
java学习之路
文章平均质量分 77
进阶,努力,突破,直到巅峰
染沁半世苍凉
不骄不躁,全心钻研
展开
-
【java学习之路】(java框架)013.SpringMVC拦截器
SpringMVC拦截器SpringMVC拦截器拦截器(interceptor)的作用Spring MVC 的拦截器类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理。将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(Interceptor Chain)。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。拦截器也是AOP思想的具体实现。拦截器和过滤器区别拦截器是快速入门自定义拦截器很简单,只有如下三步:① 创建拦截器类实现Ha原创 2022-03-12 11:30:00 · 208 阅读 · 0 评论 -
【java学习之路】(java框架)012.SpringMVC的请求和响应
SpringMVC的请求和响应SpringMVC的数据响应SpringMVC的数据响应方式1) 页面跳转直接返回字符串通过ModelAndView对象返回2) 回写数据直接返回字符串返回对象或集合页面跳转返回字符串形式直接返回字符串:此种方式会将返回的字符串与视图解析器的前后缀拼接后跳转。返回ModelAndView对象向request域存储数据在进行转发时,往往要向request域中存储数据,在jsp页面中显示,那么Controller中怎样向request域中存储原创 2022-03-12 06:30:00 · 280 阅读 · 0 评论 -
【java学习之路】(java框架)011.SpringMVC入门
SpringMVC入门Spring集成web环境ApplicationContext应用上下文获取方式应用上下文对象是通过new ClasspathXmlApplicationContext(spring配置文件) 方式获取的,但是每次从容器中获得Bean时都要编写new ClasspathXmlApplicationContext(spring配置文件) ,这样的弊端是配置文件加载多次,应用上下文对象创建多次。在Web项目中,可以使用ServletContextListener监听Web应用的启动原创 2022-03-11 17:06:09 · 145 阅读 · 0 评论 -
【java学习之路】(java框架)010.声明式事务控制
声明式事务控制编程式事务控制相关对象PlatformTransactionManager*PlatformTransactionManager 接口是 spring 的事务管理器,它里面提供了我们常用的操作事务的方法。注意:PlatformTransactionManager 是接口类型,不同的 Dao 层技术则有不同的实现类。例如:Dao 层技术是jdbc 或 mybatis 时:org.springframework.jdbc.datasource.DataSourceTransacti原创 2022-03-11 08:36:31 · 294 阅读 · 0 评论 -
【java学习之路】(java框架)009.面向切面编程AOP
面向切面编程AOPSpring 的 AOP 简介什么是 AOPAOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。AOP 的作用及其优势作用:在程原创 2022-03-11 08:35:40 · 221 阅读 · 0 评论 -
【java学习之路】(java框架)008.JdbcTemplate
JdbcTemplateSpring JdbcTemplate基本使用JdbcTemplate概述它是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。JdbcTemplate开发步骤① 导入spring-jdbc和spring-tx坐标② 创建原创 2022-03-10 09:51:05 · 531 阅读 · 0 评论 -
【java学习之路】(java框架)007.IoC和DI注解开发
IoC和DI注解开发Spring配置数据源数据源(连接池)的作用• 数据源(连接池)是提高程序性能如出现的• 事先实例化数据源,初始化部分连接资源• 使用连接资源时从数据源中获取• 使用完毕后将连接资源归还给数据源常见的数据源(连接池):DBCP、C3P0、BoneCP、Druid等数据源的开发步骤① 导入数据源的坐标和数据库驱动坐标② 创建数据源对象③ 设置数据源的基本连接数据④ 使用数据源获取连接资源和归还连接资源数据源的手动创建① 导入c3p0和druid的坐标、导入mys原创 2022-03-10 09:39:41 · 149 阅读 · 0 评论 -
【java学习之路】(java框架)006.springIOC
spring简介spring是什么 Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以loC(Inverse Of Control:反转控制)和AOP (Aspect Oriented Programming:面向切面编程)为内核。 提供了展现层SpringMVC和持久层Spring JDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的JavaEE企业应用开源框架。发展历程1997年原创 2022-03-09 10:30:26 · 193 阅读 · 0 评论 -
【java学习之路】(java框架)005.mybatis-plus的使用
04mybatis-plus的使用 MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求支持原创 2022-03-05 02:00:00 · 515 阅读 · 0 评论 -
【java学习之路】(java框架)005.mybatis框架整合及逆向工厂
03mybatis框架整合及逆向工厂1、三大框架整合 在老期的项目中,一般都是使用ssm项目做开发的,虽然现在的主流开发是springboot来做开发,但是ssm的基本整合还是需要掌握的。1、导入pom文件1、导入spring的pom依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.原创 2022-03-02 15:59:49 · 174 阅读 · 0 评论 -
【java学习之路】(java框架)004.Mybatis SQL映射文件详解
02Mybatis SQL映射文件详解 在之前我们学习了mybatis的全局配置文件,下面我们开始学习mybatis的映射文件,在映射文件中,可以编写以下的顶级元素标签:cache – 该命名空间的缓存配置。cache-ref – 引用其它命名空间的缓存配置。resultMap – 描述如何从数据库结果集中加载对象,是最复杂也是最强大的元素。parameterMap – 老式风格的参数映射。此元素已被废弃,并可能在将来被移除!请使用行内参数映射。文档中不会介绍此元素。sql – 可被其它语句原创 2022-03-02 16:00:00 · 422 阅读 · 0 评论 -
【java学习之路】(java框架)003.Mybatis的介绍和基本使用
01Mybatis的介绍和基本使用0、数据库操作框架的历程(1) JDBC JDBC(Java Data Base Connection,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成.JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序优点:运行期:快捷、高效缺点:编辑期:代码量大、繁琐异常处理、不支持数据库跨平台(2) DBUtils DBUt原创 2022-03-02 09:46:07 · 339 阅读 · 1 评论 -
【java学习之路】(java框架)002.Git配置及使用
目标了解Git基本概念能够概述git工作流程能够使用Git常用命令熟悉Git代码托管服务能够使用idea操作git概述开发中的实际场景场景一:备份小明负责的模块就要完成了,就在即将Release之前的一瞬间,电脑突然蓝屏,硬盘光荣牺牲!几个月来的努力付之东流场景二:代码还原这个项目中需要一个很复杂的功能,老王摸索了一个星期终于有眉目了,可是这被改得面目全非的 代码已经回不到从前了。什么地方能买到哆啦A梦的时光机啊?场景三:协同开发小刚和小强先后从文件服务器上下载了同一个文件:A原创 2022-03-01 06:30:00 · 479 阅读 · 0 评论 -
【java学习之路】(java框架)001.Maven配置及使用
Maven简介Maven是什么Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)POM (Project Object Model):项目对象模型Maven的作用项目构建:提供标准的、跨平台的自动化项目构建方式依赖管理:方便快捷的管理项目依赖的资源(jar包),避免资源间的版本冲突问题统一开发结构:Maven 开发环境搭建前提安装 jdk :Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅。下载 mav原创 2022-02-28 16:46:35 · 366 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)007.Ajax&Axios
第一章 Ajax1. 学习目标了解服务器渲染和Ajax渲染的区别了解同步和异步的区别2. 内容讲解2.1 服务器端渲染2.2 Ajax渲染(局部更新)2.3 前后端分离真正的前后端分离是前端项目和后端项目分服务器部署,在我们这里我们先理解为彻底舍弃服务器端渲染,数据全部通过Ajax方式以JSON格式来传递2.4 同步与异步Ajax本身就是Asynchronous JavaScript And XML的缩写,直译为:异步的JavaScript和XML。在实际应用中Ajax指的是:不原创 2022-02-28 12:57:21 · 644 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)006.Filter&Listener
第一章 Filter1. 目标了解什么是Filter了解Filter的作用掌握Filter的使用了解Filter的生命周期掌握过滤器链的使用2. 内容讲解2.1 Filter的概念Filter:一个实现了特殊接口(Filter)的Java类. 实现对请求资源(jsp,servlet,html,)的过滤的功能. 过滤器是一个运行在服务器的程序, 优先于请求资源(Servlet或者jsp,html)之前执行. 过滤器是javaweb技术中最为实用的技术之一2.2 Filter的作用F原创 2022-02-28 12:56:37 · 200 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)005.会话
第一章 会话1. 学习目标了解为什么需要会话控制了解会话的范围掌握使用Cookie掌握使用Session2. 内容讲解2.1 为什么需要会话控制保持用户登录状态,就是当用户在登录之后,会在服务器中保存该用户的登录状态,当该用户后续访问该项目中的其它动态资源(Servlet或者Thymeleaf)的时候,能够判断当前是否是已经登录过的。而从用户登录到用户退出登录这个过程中所发生的所有请求,其实都是在一次会话范围之内2.2 域对象的范围2.2.1 应用域的范围整个项目部署之后,只会原创 2022-02-28 12:55:17 · 273 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)004.Thymeleaf
第一章 Thymeleaf入门1. 学习目标掌握MVC了解Thymeleaf的简介掌握引入Thymeleaf掌握Thymeleaf的入门案例2. 内容讲解2.1 MVC2.1.1 为什么需要MVC2.1.2 MVC概念M:Model模型V:View视图C:Controller控制器MVC是在表述层开发中运用的一种设计理念。主张把封装数据的『模型』、显示用户界面的『视图』、**协调调度的『控制器』**分开。好处:进一步实现各个组件之间的解耦让原创 2022-02-28 12:53:45 · 1398 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)003.Request&Response
第一章 Request1. 学习目标了解Request的概念了解Request的组成部分掌握Request获取请求行的信息掌握Request获取请求头的信息掌握Request获取请求参数掌握解决请求参数乱码掌握Request域对象掌握请求转发2. 内容讲解2.1 Request概述2.1.1 Request的概念在Servlet API中,定义了一个HttpServletRequest接口,它继承自ServletRequest接口,专门用来封装HTTP请求消息。由于HTTP请求原创 2022-02-28 08:27:34 · 512 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)002.Servlet
第一章 Servlet的入门1. 学习目标了解Web资源了解Servlet的概念掌握Servlet的作用掌握Servlet的XML方式配置了解Servlet的注解方式配置2. 内容讲解2.1 Web资源的概念Web资源就是运行在服务器上的资源,它一共分为两类: 静态资源以及动态资源2.1.1 静态资源静态资源就是web页面中供人们浏览的数据始终是不变,例如我们之前所学习的html、css、js、图片、音视频等等都属于静态资源2.1.2 动态资源动态资源就是w原创 2022-02-28 08:23:50 · 285 阅读 · 0 评论 -
【java学习之路】(javaWeb【后端】篇)001.XML&Tomcat&Http协议
第一章 XML1. 学习目标了解配置文件的作用了解常见的配置文件类型掌握properties文件的编写规范掌握xml文件的编写了解xml文件的约束掌握xml文件的解析2. 内容讲解2.1 配置文件2.1.1 配置文件的作用配置文件是用于给应用程序提供配置参数以及初始化设置的一些有特殊格式的文件2.1.1 常见的配置文件类型properties文件,例如druid连接池就是使用properties文件作为配置文件XML文件,例如Tomcat就是使用XML文件作为配置文件YA原创 2022-02-28 08:22:13 · 437 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)008.VUE
1. 学习目标了解什么是框架了解什么是Vue掌握Vue的基本语法了解Vue的生命周期2. 内容讲解2.1 什么是框架任何编程语言在最初的时候都是没有框架的,后来随着在实际开发过程中不断总结『经验』,积累『最佳实践』,慢慢的人们发现很多『特定场景』下的『特定问题』总是可以『套用固定解决方案』。于是有人把成熟的『固定解决方案』收集起来,整合在一起,就成了『框架』。在使用框架的过程中,我们往往只需要告诉框架『做什么(声明)』,而不需要关心框架『怎么做(编程)』。对于Java程序来说,我们使原创 2022-02-27 15:44:31 · 392 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)007.正则表达式专题
正则表达式1. 学习目标掌握正则表达式的作用掌握正则表达式的语法了解常见的正则表达式2. 内容讲解2.1 正则表达式的概念正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。用我们自己的话来说: 正则表达式用来校验字符串是否满足一定的规则的公式2.2 正则表达式的用途所以正则表达式有三个主要用途:模式验证: 检测某个字符串是否符合规则,例如检测手机号、身份证号等等是否原创 2022-02-27 15:41:32 · 333 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)006.构造函数、JQuery函数库
构造函数概述:在JavaScript语言当中也有所谓构造函数【constructor】,JS当中构造函数要符合如下两个特征:函数名字首个英文字母一般需要大写【不是决定形因素】构造函数务必、必须、一定是一个关键字new调用的【决定形因素】先认知关键字new<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport原创 2022-02-16 00:32:06 · 804 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)005.Js之DOM、对象、函数上下文
节点树节点【element】即为标签概述:静态页面骨架是由标签组成,标签之间关系很像一颗大树,简称为节点树。如下图:静态页面标签之间关系图,很像一颗大树,因为前端人称之为节点树。认识DOM概述:DOM【全称:document object model】起始就是系统内置引用类型对象document,你可以认为他是整个节点树‘根元素’,JS当中DOM对象可以通过一些手段操作结构层中标签。DOM四个小属性documentElement属性:可以获取页面中HTML标签head属性:可原创 2022-02-14 23:28:55 · 719 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)004.JavaScript part2
函数概述:在JavaScript脚本语言中也有函数概念,函数其实就是将某一个功能进行封装,当你事项用这个功能的时候,需要调用、执行这个函数比如:我们在前面课程当中学习过一些内置函数内置函数alert:这个功能是在浏览器正上方弹出一个警告框内置函数prompt:这个功能是在浏览器正上方弹出一个提示框比如他们使用的时候:函数名字+小括号在javaScript脚本语言当中:函数使用也是分为两部分:声明+调用注意:函数在JS当中声明方式有两种:关键字function声明函数、表达式声明函数原创 2022-02-13 11:06:40 · 383 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)003.JavaScript part1
JavaScriptJavaScript简介概述:JavaScript在前端中简称【JS】,JavaScript是开发web脚本语言。但是它也被用到了很多非浏览器环境中【比如:node平台】,JavaScript在1995年由Netscape公司的[Brendan Eich](https://baike.baidu.com/item/Brendan Eich)(创始人大概用了十天的时间将这门语言创建出来),JS可以嵌套在静态页面中可以给静态页面添加一些动态效果(脚本语言),不同浏览器厂商(在浏览器中都原创 2022-02-13 08:03:45 · 242 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)002.CSS
CSS样式概述:CSS【Cascading Style Sheets】全称层叠样式表。理解:可以把HTML文件想向成是一个房子骨架,里面标签(块元素、行内元素)理解为搭建房子转,CSS负责美化房子(进行装修),让你的静态页面(网站看的相对好看一些)内部样式体验样式<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" /> <title>Document&原创 2022-02-12 21:11:36 · 353 阅读 · 0 评论 -
【java学习之路】(javaWeb篇)001.HTML
HTMLHTML简介概述:HTML(HeyperText MarkUp Language)全称称之为超文本标记语言,它是世界上最简单的语言,在开发的时候我们只需要进行页面布局(利用标签:element)注意:超文本标记语言(HTML)又称之为web(开发),它诞生(1993~2019)这门语言大大小小经历过变化有五次,最近一次2014称之为HTML5(超文本标记语言第五次重大变化)体验HTML编程体验心得:HTML标记语言开发的程序的时候,利用就是标签(element)进行布局页面。标签组成原创 2022-02-09 20:18:17 · 213 阅读 · 0 评论 -
【java学习之路】数据库连接JDBC
JDBCJDBC介绍▪ JDBC(Java Database Connectivity)是基于JAVA语言访问数据库的一种技术。▪ JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。▪ JDBC的设计思想:由SUN公司(JC原创 2022-02-09 15:51:17 · 604 阅读 · 0 评论 -
【java学习之路】(mysql篇)004.mysql外键约束、引擎、事务、索引、视图、三范式
外键约束外键约束涉及到的相关术语外键约束:一种约束(foreign key)外键字段:该字段上添加了外键约束外键值:外键字段当中的每一个值。业务背景请设计数据库表,来描述“班级和学生”的信息? t_class 班级表 classno(pk) classname ------------------------------------------------------ 100 北京市大兴区亦庄镇第二中学高三1班 101 北京市大兴区亦庄镇第二中学高三1班原创 2022-02-08 22:34:23 · 213 阅读 · 0 评论 -
【java学习之路】(mysql篇)003.mysql中limit、表的创建、删除、约束
limitlimit作用将查询结果集的一部分取出来。通常使用在分页查询当中limit怎么用呢?完整用法:limit startIndex, length startIndex是起始下标,length是长度。 起始下标从0开始。缺省用法:limit 5; 这是取前5.按照薪资降序,取出排名在前5名的员工?select ename,sal from emp order by sal desc limit 5; //取前5 select ename,sa原创 2022-02-07 23:01:48 · 403 阅读 · 0 评论 -
【java学习之路】(mysql篇)002.mysql分组查询及连接查询
单行处理函数数据处理函数又被称为单行处理函数单行处理函数的特点:一个输入对应一个输出。和单行处理函数相对的是:多行处理函数。(多行处理函数特点:多个输入,对应1个输出!)单行处理函数常见的有哪些?lower 转换小写 mysql> select lower(ename) as ename from emp; +--------+ | ename | +--------+ | smith | | allen | | ward | | jones原创 2022-02-06 23:21:21 · 370 阅读 · 0 评论 -
【java学习之路】(mysql篇)001.mysql基本介绍、常用命令及简单查询
什么是数据库?数据库:英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。顾名思义:存储数据的仓库,实际上就是一堆文件。这些文件中存储了具有特定格式的数据。什么是数据库管理系统?数据库管理系统:DataBaseManagement,简称DBMS。数据库管理系统是专门用来管理数据库中数据的,数据库管理系统可以对数据库当中的数据进行增删改查。常见的数据库管理系统:MySQL、Oracle、MS SqlServer、DB2、sybase等…什么是SQL?SQL:结构化查原创 2022-02-05 22:31:36 · 1076 阅读 · 1 评论 -
【java学习之路】(数据结构篇)004.递归和二叉搜索树
递归递归的概念递归的方式求1-100的和public class DGDemo { public static int sum(int n){ //递归到底的情况 if(n==1){ return 1; } return n+sum(n-1); } public static void main(String[] args) { System.out.printl原创 2022-02-05 13:42:27 · 509 阅读 · 0 评论 -
【java学习之路】(数据结构篇)003.链表
链表前面学习的线性数据结构:动态数组栈队列底层都是依托静态数组:靠resize解决固定容量的问题。链表节点的数据结构//节点的数据结构private class Node{ private T val;//数据内容 private Node next;//指向下个节点的引用 Node(T val){ this.val = val; this.next = null; } @Override public原创 2022-02-04 15:29:43 · 582 阅读 · 0 评论 -
【java学习之路】(数据结构篇)002.栈和队列
栈和队列栈的实现(容器使用前一篇的数组容器)1.stack接口定义package subject.lesson02;public interface Stack<T> { //是否为空 boolean isEmpty(); //栈中元素的个数 int getSize(); //压栈 void push(T ele); //出栈 T pop(); //查看栈顶元素 T peek();}2.具原创 2022-02-03 22:03:56 · 512 阅读 · 1 评论 -
【java学习之路】(数据结构篇)001.数组
数组使用数组时,最重要的就是数组的索引,通过索引可以对数组进行增删改查操作数组最大的优点:快速查询。数组最好应用于索引有语义的情况。并非所有有语义的数字都可以作为数组的索引,例如:610521199610111188数组也是可以处理“索引没有语义”的情况制作属于自己的数组1.向数组中添加元素(已被4替代)public void addTail(int ele){ if(this.size>=data.length){ throw new I原创 2022-02-02 21:37:34 · 518 阅读 · 0 评论 -
【java学习之路】(java SE篇)014.Stream API
Stream APIStream是一组用来处理数组、集合的API▪ Java 8之所以费这么大功夫引入函数式编程,原因有二:– 代码简洁函数式编程写出的代码简洁且意图明确,使用 stream 接口让你从此告别 for 循环。– 多核友好,Java函数式编程使得编写并行程序从未如此简单,你需要的全部就是调用一下parallel()方法。Stream特性1:不是数据结构,没有内部存储2:不支持索引访问3:延迟计算4:支持并行5:很容易生成数组或集合(List,Set)6:支持过滤,查找,转原创 2022-01-31 14:24:58 · 444 阅读 · 0 评论 -
【java学习之路】(java SE篇)013.lambda表达式
lambda表达式Lambda表达式是 Java8 中最重要的新功能之一。使用 Lambda 表达式可以替代只有一个抽象函数的接口实现,告别匿名内部类,代码看起来更简洁易懂。Lambda表达式同时还提升了对集合、框架的迭代、遍历、过滤数据的操作。先看一个例子import java.util.*;public class lambdaDemo { public static void main(String[] args) { //普通实现// Thre原创 2022-01-30 23:43:10 · 210 阅读 · 0 评论