自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (1)
  • 收藏
  • 关注

原创 creating bean with name ‘serverConfig‘: Unsatisfied dependency expressed through field ‘tokenStore‘

更换一个oauth2.jks文件

2020-12-23 00:13:10 523

原创 JavaScript内置对象

JS的对象也分为内置对象和自定义对象   ●例如:Java中Object、String、System属于内置对象   ●例如:自定义的Person、Student属于自定义对象。JS的自定义对象是函数实现的。1、 顶层函数(全局函数)parseFloat()方法parseFloat()函数可以解析一个字符串,并返回一个浮点数。<script> //解析字符串 var f1=parseFloat("12.23"); console.log(f1+10); //提示:该函数指定字

2020-12-13 21:53:44 1009 1

原创 JavaScript(JS)基础知识

1、JavaScript概述1.1、什么是JavaScript (JS)JavaScript是一种属于网络的脚步语言,已经被广泛用于Web应用开发,常用来为网页添加各种各样的动态功能。为用户提供更流畅的浏览效果。通常JavaScript脚步是通过嵌入在HTML中来实现自身的功能。JavaScript是写给浏览器的一门脚步语言,目前所有的浏览器都支持JavaScript。HTML称为超文本标记语言CSS样式语言,专门用来负责HTML页面外观样式的。JavaScript属于一门编程语言。JavaS

2020-12-07 23:40:37 480 1

原创 Maven子项目无法添加父类项目的依赖

Maven在下载仓库中找不到相应资源时,会生成一个.lastUpdated为后缀的文件。如果这个.lastUpdated文件存在,那么即使换一个有资源的仓库后,Maven依然不会去下载新资源,或者说maven仓库中的某个构件如果因为网络或者其他的原因,没有下载成功或者下载被中断,将会出现一个.lastUpdated的文件,这个时候,就算网络好了,也不能正常使用这个构件,将其删除后重新加载资源如果找不到这个文件,可以搜索:.lastUpdated将搜索到的结果全部删除然后在子项目添加一下应该就好啦如

2020-12-03 17:42:51 2197 3

原创 MyBatis延迟加载和缓存

1、MyBatis延迟加载1.1、一对一延迟加载延迟加载,都是针对在多表查询情况下,对关联对象的操作。用户和订单从面向对象的角度来说就是关联对象,当只需要订单数据,暂时不需要用户数据的时候,就不应该去查询用户表,啥时候用到用户数据,啥时候查询。一对一延迟加载对关联查询的SQL语句进行拆分association标签:column属性:关联查询的外键列名select属性:指定另一个< select >标签的id值IOrdersMapper.xml<?xm

2020-11-29 22:10:18 96

原创 MyBatis多表关联查询

1、多表关联查询关系分析多表关联:至少两个表关联。分析多表关系的技巧:从一条记录出发,不要从表整体去分析,比如分析A表和B表的关系,A表中的一条记录对应B表中的几条记录,如果是一条,那么A到B就是一对一;如果多条,那么A到B就是一对多一对一,从订单出发,到用户表,是一对一的关系一对多,从用户表出发,到订单表,一条用户数据可以在订单表中存在多条记录,这就是一对多。通过主外键来体现一对多结构。一的一方是主表,多的一方是从表,从表当中有一个字段是外键,指向类主表的主键。多对多,用户和角色表,一个用户可以有

2020-11-29 22:05:48 1479 1

原创 MyBatis动态SQL

1、动态SQL简介●动态SQL是MyBatis强大的特性之一,极大的简化我们SQL拼装的操作●动态SQL元素和使用JSTL或其它类似基于XML的标签类似●MyBatis采用功能强大的基于OGNL的表达式来简化操作●OGNL对象图导航语言,这是一种强大的表达式语言,通过它可以非常方便的操作对象属性。类似于我们的EL表达式。   ○访问对象属性 ${对象名.属性名}   ○调用方法 ${对象名.方法名}   ○运算符:算术运算符、逻辑运算符(and or not )、比较运算符●动态SQL就是通

2020-11-29 21:52:31 69

原创 MyBatis配置详解和增删改查

1、mybatis-config.xml配置详解environments 标签配置数据源环境   ●default 属性 设置采用的数据源environment 标签配置具体的数据源环境,可以配置多个   ●transactionManager 标签配置事务管理器dataSource 标签数据源   ●type 属性用来指定采用的连接池<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration

2020-11-29 21:27:14 164

原创 Mybatis框架入门和日志组件log4j2

1、认识框架1.1、什么是框架框架就是一个架子,例如,表演节目,舞台搭建好,表演什么节目,根据相应的需求来定。框架是一个半成品,对于java语言来说,框架就是封装类别人写好的代码,在框架的基础上我们在进一步开发。1.2、框架解决什么问题框架解决的是技术整合的问题。软件开发环境和规模都很大,不可能任何一个项目的代码都从零开始,此时就需要一个非常优秀的框架把基础技术整合完毕,我们在它的基础上进一步开发。提高性能,扩展,易于维护,最终提高整个团队的开发效率。1.3、什么时候使用框架企业级大型项目开发

2020-11-28 22:04:18 389

原创 过滤器案例: 登录验证(权限校验)

需求1.访问项目的资源。验证其是否登录2.如果登录了,则直接放行。3.如果没有登录,则跳转到登录页面代码实现登录界面<%@ page contentType="text/html;charset=UTF-8" language="java" %><html> <head> <title>$Title$</title> </head> <body> <form action="tre

2020-11-28 21:16:03 709

原创 过滤器Filter和监听器Listener

1、过滤器Filter1.1、Filter概念过滤器: 过筛子,符合条件的过去,不符合条件不能过去.生活比喻: 安检,检查安全的人与物才可以通过放行程序: 客户端需要访问服务器的目标资源,在客户端和服务器资源之间设置过滤器, 符合要求放行1.2、Filter的入门程序需求:   ●浏览器要访问Servlet   ●途径过滤期Filter, 若Filter放行,可执行访问到Servlet; 若不放行,无法访问Servlet执行图解:实现步骤编写Servlet, 在web.xml配置S

2020-11-28 21:15:28 108

原创 JSTL

1、jstl标签的基本概述JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样, 也是要放到jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是它的核心库Core标签库标签库的URL前缀Corehttp://java.sun.com/jsp/jstl/corecI18Nhttp://java.sun.com/jsp/jstl/f

2020-11-28 20:23:32 80

原创 EL表达式

1、EL表达式的基本概述EL(Express Lanuage)表达式可以嵌入在jsp页面内部,减少jsp脚本的编写,EL 出现的目的是要替代jsp页面中输出脚本<%= 数据 %>的编写。2、EL表达式的格式和作用EL表达式的格式:${有效的EL表达式}EL表达式的作用:   ●EL提供了一些标识符、存取器和运算符,用来读取驻留在Web容器中的数据。   ●EL可用于JSP页面中所有HTML和JSP标签中。   ●EL表达式只能使用在除了JSP脚本(jsp表达式<%=%>

2020-11-27 23:31:26 284

原创 案例:自动登录,记住密码(Session+JSP)

用来判断cookie有没有值package com.bdit;import javax.servlet.http.Cookie;public class DBCookie { public static Cookie getCookie(Cookie[] cookies,String key){ if(cookies!=null&&cookies.length>0){ for(Cookie cookie:cookies){

2020-11-27 23:06:19 308

原创 案例:记录上一次的访问时间

1、分析2、实现步骤●设置浏览器响应内容类型和编码●获取客户端携带的cookie●判断key为time的cookie是否存在●存在  ■获取value值,响应给浏览器  ■覆盖cookie,更新值●不存在  ■响应给浏览器,比如:“你是首次访问”  ■创建cookie,并且发送cookie到客户端3、代码实现package com.bdit;import javax.servlet.http.Cookie;public class DBCookie { public

2020-11-22 22:48:29 147 1

原创 DAO设计模式和Web会话技术:Cookie、Session

1、DAO设计模式DAO(Data Access Object,数据访问对象),主要的功能是用于进行数据操作的,在程序的标准开发框架中属于数据层的操作。软件的分层架构:   ●显示层(Web层)(JSP/Servlet)   ●业务层:就是用来实现具体某个功能的需求   ●数据层:DAO模式来实现数据的持久化操作   ●资源层DAO组成:   ●DbHelper:专门负责数据库打开与关闭操作   ●VO:主要由属性,set、get方法组成,VO类中的属性与表中的字段相对应,每一个VO类的

2020-11-22 22:38:12 250

原创 JSP

1、JSP的概念JSP全名是 Java Server Pages,称为Java的动态服务器端(Web应用服务器,例如Tomcat)网页技术。   ●JSP它也需要依赖Web容器,才能运行   ●动态的网页技术,JSP可以根据请求展现不同的数据   ●JSP文件的扩展名为.jspJSP其实就是把Java程序嵌入到类HTML中,页面称为JSP页面。JSP中可以包含:   ●HTML   ●CSS   ●JavaScript   ●Java代码JSP和Servlet   ●JSP更擅长页面

2020-11-15 23:08:57 121

原创 ServletContext对象和ServletConfig对象

1、ServletContext对象1.1、什么是ServletContext在Tomcat容器中的Web项目,也叫做WEB应用程序,在Java中万事万物,皆对象,那么web应用程序也是一个对象,在Java Web中,使用ServletContext对象表示WEB应用程序。说明:  ●在一个WEB应用程序中,只能存在一个ServletContext对象  ●每个WEB应用程序,都有他自己所对应的ServeltContext对象  ●在WEB容器启动的时候,会为每个WEB应用程序创建一个单独的Se

2020-11-15 17:07:24 353

原创 重定向和请求分派

1、重定向1.1、重定向的实现浏览器进行重定向:   ●设置302状态码:setStatus(302);   ●设置重定向资源的地址:setHeader(“location”,“资源地址”);也可以通过HttpServletResponse对象下的方法实现重定向:方法返回值描述sendRedirect(String location)void重定向1.2、代码实现package com.bdit;import javax.servlet.ServletEx

2020-11-15 16:51:33 348

原创 HttpServletRequest接口和HttpServletResponse接口

1、HttpServletRequest接口1.1、 Request对象概述请求的路径:浏览器------》服务器HttpServletRequest对象负责获取客户端的请求数据request对象是从客户端向服务器发出请求,包括用户提交的信息以及客户端的一些信息。客户端可以通过HTML表单或在网页地址后面提供参数的方式提交数据,然后服务器通过request对象的相关方法来获取这些数据。   ●通过查看Servlet中的service方法得知,Servlet中使用的ServletRequest接口,

2020-11-13 22:21:57 252

原创 (idea2020)Tomcat下载和配置及相关知识点

1、Tomcat下载步骤一:下载tomcat服务器软件https://tomcat.apache.org/download-90.cgi步骤二:解压下载的zip文件,将解压的文件copy到一个没有中文和空格的路径下即可。例如:D:\programsoft\apache-tomcat-9.0.392、Tomcat启动和访问步骤一:tomcat解压目录/bin/startup.bat双击运行启动tomcat步骤二:访问路径,http://localhost:8080关闭tomcat,在bin目录

2020-11-13 21:37:31 718

原创 JavaWeb基础

1、Web开发简述1.1、什么是WebWeb(互联网总称)web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统。1.2、什么是JavaWeb开发Java Web:是用Java技术来解决相关Web互联网领域的技术综合。1.3、JavaWeb开发中的资源静态web资源           &nb

2020-11-13 21:37:01 209

原创 MySQL多表查询与事务操作

1、多表查询1.1、什么是多表查询使用一条select语句查询多张表的信息1.2、多表查询的分类多表查询:内连接隐式内连接显示内连接外连接左外连接右外连接1.2.1、隐式内连接隐式内连接,看不到JOIN关键字,条件使用WHERE指定SELECT 字段名 FROM 主表(左表),从表(右表) WHERE 条件-- 隐式内连接,查询每个员工的姓名和年龄以及所在的部门名称,及位置SELECT e.name,e.age,d.dept_name,d.dept_location fro

2020-11-10 22:37:16 654

原创 MySQL约束与设计

1、DQL查询语句1.1、排序通过ORDER BY 子句,可以将查询的结果进行排序(排序只是显示方式,不会影响数据库数据的顺序)SELECT 字段名 FROM 表名 WHERE 字段=值 ORDER BY 排序字段 ASC|DESCASC:升序,默认值DESC:降序1.1.1、单列排序就是只按某一个字段进行排序。select * from students order by id asc;1.1.2、组合排序同时对多个字段进行排序,如果第一个字段相等,则按第二个字段排序,以此类推。

2020-11-08 21:49:29 1795 5

原创 数据库的简介和MySQL增删改查

1、数据库的介绍1.1、数据库概述数据库的存储方式Java中创建对象,对象存储在内存中,学习了IO流,可以把数据存储到文件中。储存位置优点缺点内存速度快不能永久保存,数据是临时状态文件数据可以永久保存操作数据不方便,查询某个数据数据库1)数据可以永久保存2)查询速度快3)对数据管理方便占用资源,需要购买什么是数据库1)DB:数据库(Database)即存储数据的仓库,它保存类一系列有组织的数据。2)本质上是一个文件系统,还是以文件的方式存储在服

2020-11-08 21:16:38 312 1

原创 MySQL下载和安装

下载MYSQL下载地址:https://dev.mysql.com/downloads/mysql/安装1.打开下载的MYSQL文件夹,双击安装mysql-installer-community-8.0.12.0.msi

2020-11-08 20:32:55 81

原创 JDBC高级

1、PreparedStatement1.1、PreparedStatement 和 Statement代码的可读性和可维护性. Statement的sql拼接是个难题。PreparedStatement 可以防止 SQL 注入PreparedStatement 可以处理Blob类型的数据PreparedStatement 能最大可能提高性能:(Oracle和PostgreSQL8是这样,但是对于MySQL不一定比Statement高)DBServer(数据库管理工具)会对预编译语句提供性能优化

2020-11-05 22:33:18 164

原创 JDBC基础

1、JDBC入门1.1、 客户端操作MYSQL数据库的方式(1) 使用第三方客户端来访问MYSQL:MySQL Workbench(官方)、SQLyong、Navicat、SQLWare。。。(2) 使用MYSQL自带的命令行方式或者DOM命令(3)在Java中,数据库存取技术可分为如下几类:● JDBC直接访问数据库● JDO技术(Java Data Object)● 第三方O/R工具,如Hibernate, Mybatis 等JDBC是java访问数据库的基石,JDO, Hibernat

2020-10-29 22:29:02 311 2

原创 XML

1、XML概念XML是一门可扩展的标记语言●可扩展:标签都是自定义的 功能:(1)存储数据(2)配置文件(3)在网络中传输XML和HTML的区别(1) XML标签都是自定义的,HTML标签是预定义的(2)XML的语法严格,html语法松散(3)XML是存储数据的,HTML是显示数据2、XML语法基本语法(1) XML文档的后缀名.xml(2)XML第一行必须定义文档声明(3) XML文档中有且仅有一个根标签(4) 属性值必须使用引号(单双都可以)引起来(5) 标签必须正确

2020-10-28 23:04:11 153 3

原创 Junit单元测试、注解

1、Junit单元测试软件测试分类:●黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望值●白盒测试:需要写代码,关注程序具体的执行流程1.1、Junit介绍junit是一个java语言的单元(就是方法)测试框架,属于白盒测试,简单理解为可以用于取代main方法,junit属于第三方工具,需要导入jar包后使用。Junit的使用编写测试类,简单理解为junit可以用于取代java的main方法在测试类方法上添加注解@Test@Test修饰的方法要求:public void 方法名(

2020-10-27 22:55:51 1233

原创 Error Code: 1046. No database selectedSelect the default DB to be used by double-clicking its name i

对于MySQL的初学者来说通常会遇见下面这个错误:Error Code: 1046. No database selectedSelect the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar.解决方法如下:方法一:双击你要使用的库方法二:use 数据库名...

2020-10-24 19:54:38 1443

原创 反射

1、类的加载、连接和初始化当程序主动使用某个类时,如果该类还未被加载到内存中,系统会通过加载、连接、初始化三个步骤来对该类进行初始化,如果没有意外,JVM将会连续完成这三个步骤,所以有时也把这三个步骤统称为类加载或类初始化。...

2020-10-18 23:03:02 123

原创 idea实现序列化接口Serializable自动生成serialVersionUID

idea点击左上角File,然后点击Settings…,如下图:点击Settings…之后会进入下图,然后找到Inspections然后搜索Serialization issues,将下面三个加上对号,如下图:注:有些版本可能需要重启idea最后点击类名,按 alt+回车(Enter) 会出现下图情况,然后点击 Add ‘serialVersionUID’ fieId...

2020-10-11 21:38:44 734

原创 MySQL 关闭安全更新模式

在初次使用MySQL时我们通常会遇到:Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect解决方法:...

2020-10-10 20:44:48 2992 2

原创 JDK8新特性——Stream API

Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API。Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。 使用Stream API 对集合

2020-10-08 20:55:11 446 1

原创 JDK8新特性—— Optional类

到目前为止,臭名昭著的空指针异常是导致Java应用程序失败的最常见原因。以前,为了解决空指针异常,Google公司著名的Guava项目引入了Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码。受到Google Guava的启发,Optional类已经成为Java 8类库的一部分。Optional实际上是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。创建Optional类对象的方法:

2020-10-08 17:27:19 1939

原创 JDK8新特性——Lambda表达式

Lambda表达式不是Java最早使用的,很多语言就支持Lambda表达式,例如:C++,C#,Python,Scala等。如果有Python或者Javascript的语言基础,对理解Lambda表达式有很大帮助,可以这么说lambda表达式其实就是实现SAM接口的语法糖,使得Java也算是支持函数式编程的语言。Lambda写的好可以极大的减少代码冗余,同时可读性也好过冗长的匿名内部类。1、Lambda表达式引入示例1:Runnable实现线程public void test1(){ new T

2020-10-08 17:13:07 432

原创 java基础完结——网络编程(2)

1、基于TCP协议的网络编程TCP(Transmission Control Protocol,传输控制协议)被称作一种端对端协议。是一种面向连接的、可靠的、基于字节流的传输层的通信协议,可以连续传输大量的数据。类似于打电话的效果。这是因为它为当一台计算机需要与另一台远程计算机连接时,TCP协议会采用“三次握手”方式让它们建立一个连接,用于发送和接收数据的虚拟链路。数据传输完毕TCP协议会采用“四次挥手”方式断开连接。TCP协议负责收集这些信息包,并将其按适当的次序放好传送,在接收端收到后再将其正确的

2020-09-25 22:47:26 158

原创 网络编程(1)

1、网络编程的基础知识Java程序可以非常方便的访问互联网上的HTTP服务、FTP服务等,并可以直接取得互联网上的远程资源,还可以向远程资源发送GET、POST请求。1.1、网络的概念和分类所谓计算机网络就是把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息、共享硬件、软件、数据信息等资源。生活在今天的我们,没有网络那是相当可怕的,我们每天几乎都在用所谓的云计算、云服务、云备份、搜索引擎检索信息、即时通信、在线支付…计

2020-09-25 22:15:12 716

原创 多线程(3)

1、线程通信生产者与消费者问题(英语:Producer-consumer problem),也称有限缓冲问题(英语:Bounded-buffer problem),是一个多线程同步问题的经典案例。该问题描述了两个(多个)共享固定大小缓冲区的线程——即所谓的“生产者”和“消费者”——在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程。与此同时,消费者也在缓冲区消耗这些数据。该问题的关键就是要保证生产者不会在缓冲区满时加入数据,消费者也不会在缓冲区中空时消耗数据。生产

2020-09-23 22:18:54 172

ascii码表.jpg

ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符。

2020-08-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除