- 博客(27)
- 收藏
- 关注
原创 解决SpringBpoot中Thymeleaf接受session数据问题
1、错误描述前端用Thymeleaf获取session中的值,报空,而且取不到值Caused by: org.attoparser.ParseException: Exception evaluating SpringEL expression: "session.slideshow.index1" (template: "index.html" - line 191, col 26) at org.attoparser.MarkupParser.parseDocument(MarkupParser.
2020-11-26 23:53:07
1401
原创 SpringBoot整合Druid报Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded
1、问题描述***************************APPLICATION FAILED TO START***************************Description:Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.Reason: Failed to determine a suit
2020-11-16 16:39:00
2415
原创 spring中为什么会用动态代理
动态代理1、Spring AOP实现主要是基于动态代理技术当spring采用AOP配置后,spring容器返回的目标对象,实质上是spring采用动态代理技术生成的一个代理类型,代理类重写了元组件目标方法的功能,在代理类中调用方面功能和目标对象功能。动态代理是在不改变原有代码的基础上增加新的功能2、什么情况使用动态代理?需要为一些类的方法添加新的功能,又不想大量修改这个类。采用动态代理,可以在不知道该类要实现什么功能的情况下去,去适应类的变化,减少框架的耦合需要增加额外的功能
2020-11-14 22:49:51
957
原创 Mybatis3动态SQL
前言推荐 B站 宝藏男孩 遇见狂神说动态SQL实体类Blogpublic class Blog { private String id; private String title; private String author;// createTime属性和数据库字段不一致,在配置文件中设置开启驼峰命名自动映射 private Date createTime; private int views; }mybatis-config.x
2020-10-24 00:02:41
120
原创 Mybatis2.关联案例详解
前言关注 B站 宝藏男孩 遇见狂神说配置日志日志可以跟踪信息,能够看到sql语句,便于查错在mybatis-config.xml主配置文件,其中name&value是官网中的固定搭配<!-- 配置日志log4j--> <settings> <setting name="logImpl" value="LOG4J"/> </settings>在resources目录下创建log4j.pr
2020-10-23 00:31:20
124
原创 Spring动态代理(JDK+CGLIB)
前言强烈推荐 B站 宝藏男孩 遇见狂神说JDK动态代理(基于接口)学习之前,主要了解**代理模式**用一个简单的例子来了解:1、创建UserDao接口public interface UserDao { void save(); void delete();}2、实现接口public class UserDaoImpl implements UserDao { public void save() { System.out.
2020-10-17 17:03:45
167
2
原创 了解Mybatis-1-搭建工程环境(IDEA)
前言推荐 B站 宝藏男孩 遇见狂神说MybatisMybatis封装了几乎所有的JDBC代码和参数的手工设置以及结果集的检索,支持普通的SQL查询、存储过程和高级映射,是一款优秀的持久层框架Mybatis是ORM框架的一种ORM:是将数据库的数据转换成对象(pojo层)实体类---->数据库中的表1、环境搭建MySQL 8.0+Maven 3.6.3+JDK 8+IDEA2、创建maven项目3、导入依赖<!-- mysql驱
2020-10-17 16:08:50
183
原创 Redis概述和基本命令
Redis概述Redis 一个内存数据库,通过 Key-Value 键值对的的方式存储数据。由于 Redis 的数据都存储在内存中,所以访问速度非常快,因此 Redis 大量用于缓存系统,存储热点数据,可以极大的提高网站的响应速度。优点1.支持数据的持久化,通过配置可以将内存中的数据保存在磁盘中,Redis 重启以后再将数据加载到内存中;2.支持列表,哈希,有序集合等数据结构,极大的扩展了 Redis 用途;3.原子操作,Redis 的所有操作都是原子性的,这使得基于 Redis 实
2020-10-11 23:54:01
143
原创 JavaWeb文件上传
前言推荐 宝藏男孩 狂神注意事项为保证服务器的安全,上传文件应该放在外界无法访问的地方,比如WEB-INF目录下。防止文件的覆盖现象,上传的文件名应该唯一。(UUID生产文件名)要限制文件上传的最大值限制文件的类型,对上传的文件后缀判断合法性方法,类的讲解1.mkdirs(),它会同时创建该文件所在路径的所有缺失的父目录2.mkdir()只会创建该文件所在路径的最底层的目录,也就是该文件所在目录ServletFileUpload1.负责处理上传的文件数据,并将表单中每个输
2020-09-30 17:40:53
157
原创 ServletContext剖析
ServletContext表示当前页面的web应用每个web应用程序只会创建一个ServletContextServlet共享同一个ServletContext对象,相互通信简单的多当服务器、客户端关闭后,对象会被销毁是服务器在内存上创建的存储空间,用于在不同动态资源(servlet)之间传递与共享数据1、 常用方法:ServletContext对象 ServletContext context = this.getServletContext();
2020-09-25 08:45:54
102
原创 反射基本应用
前言想了解更多java知识,推荐 B站 宝藏男孩–遇见狂神说ClassLoaderpublic abstract class ClassLoaderextends Object类加载器是负责加载类的对象。ClassLoader类是一个抽象类。作用就是根据一个指定的类的全限定名,找到对应的Class字节码文件,然后加载它转化成一个java.lang.Class类的一个实例。三种类加载器系统类加载器(Application ClassLoader)系统默认的类加载器,负责加载
2020-09-21 00:14:47
149
1
原创 Java注释+反射(基础知识)
前言想了解更多java基础, 推荐b站 宝藏男孩 遇见狂神说注解你可以理解为,是对相关的代码进行解释元注解:负责注解其他注解4种类型(1)@Target 用于描述注解的使用范围(2)@Retention:表示需要在什么级别保存注释信息,这里级别排序(runtime > class >source)(3)@Doucment说明该注解被包含在javadoc中(4)Inherited:说明子类可以继承父类中的注解注解实例://
2020-09-17 10:41:12
201
原创 Node.js基础知识1.5
Buffer缓冲区buffer可以在流(stream)中与二进制数据进行交互和操作暂时存放I/O数据的内存创建buffer对象
2020-09-13 19:08:11
92
原创 Sql常用语句1.2(基础)
MySql连接的使用首先,创建两个表 CREATE TABLE `t_emp` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `address` varchar(50) DEFAULT NULL, `salary` double DEFAULT NULL, `sex` char(1) DEFAULT NULL, `dept_id` int(11) DEFAULT NULL,
2020-09-12 10:01:54
141
原创 对JDBC的一系列封装(线程池)
JDBC(Java数据库连接)代码import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import org.apache.commons.dbcp.BasicDataSource;//数据库封装类public class DBUtil { public static Connection conn = nul
2020-09-10 23:03:16
209
原创 Node.js基础知识1.4
EventEmitter类events模块只提供一个对象event.Eventter.EventEmitter 的核心就是事件触发与事件监听器功能的封装。Node.js中的所有的异步I/O操作在完成时都会发送一个事件到事件队列创建实例// 导入核心事件库var events = require('events');//创建事件对象var myEvent = new events.EventEmitter();EventEmitter的简单用法:绑定一个事件在控制台打印信息
2020-09-10 00:25:29
121
原创 Maven的配置以及Maven与eclipse的整合详解(图文并茂)
1.下载maven,解压文件结构如图:2.在maven目录下,进入conf–>settings.xml文件,打开文件。其中需要配置本地仓库用于存放在maven远程仓库下载的jar包,本地库位置。因为下载jar包要访问外网,在Mirrors标签中添加阿里云镜像,下载更快。3.我的电脑右键属性,选择高级系统设置–>环境变量。4.在系统变量中选择新建,创建maven的安装目录。5.在path变量中添加 %MAVEN_HOME%\bin6.测试maven环境安装,如下所示表示成功。
2020-09-09 08:37:29
334
原创 Sql常用语句1.1(基础)
drop,delete,truncate的区别drop 表的结构和数据一同被删除,释放空间drop table 表名 ;truncate表的结构还在,数据被删除,释放空间truncate table 表名 ;delete删除内容,表的结构还在,不释放空间delete from 表名drop、truncate是DDL(数据库定义语言),数据不能回滚DDL:用来创建数据库中的各种对象-----表、视图、索引等如:create table/view/index
2020-09-09 00:18:03
110
原创 Node.js基础知识1.3
回调函数node.js异步编程的直接体现就是回调函数极大的提高了Node.js的性能,处理大量并发请求什么是回调函数?//回调函数1/* 1.一开始,可以写成这种格式,便于我们理解*/function callFun(fun){ fun();};function sayHello(){ console.log("hello");}callFun(sayHello);简单来说,回调函数就是传递给其他代码的函数实体或引用类型同步回调函数异步回
2020-09-08 00:03:56
62
原创 Node.js基础知识1.1
了解Node.js一种运行于服务器端的语言可以写网站后台程序,可以做服务端应用开发一个基于Chrome JavaScript 运行时建立的一个平台一个事件驱动I/O服务端JavaScript环境是前端框架,也是后台语言如果你熟悉JavaScript,你可以很容易学会Node.js优点事件驱动非阻塞式I/O单线程(Node可以在不新增额外线程的情况下,依然可以对任务进行并发处理 ,它通过事件循环来实现并发操作)环境配置点击下载安装推荐使用VSCode检查环境是否配好
2020-09-05 23:49:21
53
原创 DB的理论知识
1.相关概念:Data:是数据库中存储的基本对象,是描述事物的符号记录。DataBase:数据库,是长期存储在计算机内、有组织、可共享的大量数据的集合。DBMS:数据管理系统,是用户应用程序与操作系统之间的一层数据管理软件,是数据库系统的核心组成。为用户或应用程序提供访问数据库的方法,包括:DDL(数据定义语言)、DML(数据操纵语言)、数据组织、存储。DBS:数据库系统,一般包括DB、DBMS和应用程序和数据库管理员。概念模型:按照用户的观点对数据和信息建模(应用于DB的设计)逻辑模型:描述
2020-08-27 10:46:29
738
原创 Git简要介绍
Git开源的分布式管理控制系统SVN(非分布式)和Git应用最多区别:1.SVN:在多人开发,需要联网将代码上传到云服务,获取新数据要从远端下载。2.Git:在多人开发时,每个人都是拥有全部的数据,大部分操作在本地完成,不需要联网功能:协同修改、数据备份、版本管理、权限控制、历史记录、分支管理安装git 客户端基本命令(Linux)1 设置提交代码时的用户信息$ git config [–global] user.name “[name]”$ git conf
2020-08-26 22:19:34
133
原创 Java网络通信(TCP+UDP+URL)
前言网络通信需要协议,我们了解一下今天的主角:TCP(传输控制协议):通信双发需要建立连接,安全、可靠。有严格意义上的客户端、服务端例如:打电话UDP(用户数据包协议):不需要建立连接,不可靠。任何一个方都可以成为客户端、服务端例如:发短信网络通信还需要知道对方的端口号、IPInetAddress封装了一系列static方法,可以获取主机信息.此外,还有InetSocketAddress ,该类实现IP套接字地址(IP地址+端口号)TCP客户端import
2020-08-22 23:12:38
284
原创 Mysql分页查询(limit)
##LIMIT对于数据偏移直接用页码来展示是MySQL内置函数,其作用是用于限制查询结果的条数基本语法:SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset1.limit接受一个或两个整数型参数:offset表示偏移量,rows表示数据行数 SELECT * FROM 表名 LIMIT 10 【offset】是可选择参数,这里的10表示选取前10条记录 SELECT * FROM 表名 LI
2020-08-19 17:24:57
2171
1
原创 java实现QQ邮件发送
##1.首先导入mail.jar和activation.jar包下载点这里*将两个包放到你的JDK下的*\jre\lib\ext*放入后,如果导入不了javax.mail包的,在IDEA中进行如下操作*File–>Project Structure–>SDKs中,重新选择JDK的安装路径,然后应用就可以了。##2.其次,要打开QQ邮箱的SMTP(简单邮件传输协议),打开QQ邮箱,在设置–》账户*开启后,会出现一个授权码,现在不用管,后面会说的。##3.准备好了,可以开始
2020-08-18 10:07:31
284
原创 HTML,CSS,JavaScript知识学习
HTML **是一种超文本标记语言,能表现如文字、视频、音频、程序等复杂元素**1.标签是尖括号包围的关键字成对存在的标签对中的第一个标签是开始标签,第二个标签是结束标签例如:<a href="https://www.baidu.com">百度</a>其中herf是属性,类似于一种装备让标签具有特殊的能力重要标签表格标签 table在...
2020-02-25 15:52:12
170
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人