自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 linux tail 命令查看日志

#输出文件末尾行(默认10行),当文件有追加时,会输出后续添加的行,不会中断输出,除非ctrl+c中断 #-f 即 --follow=file.logtail -f file.log #输出文件末尾包含关键字的行,当文件有追加时,会输出后续添加的行,不会中断输出,除非ctrl+c中断 #-f 即 --follow=file.logtail -f file.log | grep "关键字" #输出文.

2021-11-16 10:36:18 1826 1

原创 Word无法打开该文件,因为文件格式与文件扩展名不匹配

问题描述:如果文件后缀正确,确仍然无法打开。解决办法:打开word,【选项】-【保存】-【自动恢复文件位置】,把后面的路径复制一下 在【此电脑】中【导航栏】里粘贴这个路径,就可以找到这个文件夹 把出问题的word文档复制到这个文件夹下 把word文档后缀.docx改为.doc 双击打开,就可了,之后想存.docx,就另存为就ok了...

2021-10-28 09:56:48 5595

原创 2.15 Mybatis——权限管理模拟添加(下)

目录问题描述知识点补充:1.获取添加操作中自动生成字段的值方法: 2.批量执行多条sql代码实现问题描述依旧使用之前权限管理登录模拟的案例,进行添加用户并选择用户角色,添加用户表的同时用户_角色中间表(t_user_role)也要添加相应的用户信息,一个用户可以有多个角色(动态sql遍历)。知识点补充:1.获取添加操作中自动生成字段的值方法: useGeneratedKeys...

2021-07-12 22:59:34 413 1

原创 2.15 Mybatis——权限管理模拟登陆练习(中)

方式二:此处采用一对多的方式二,通过一条sql语句查出用户对应的角色和菜单信息。代码实现:UserDao层方法://方式二:一句sql——传入两个参数——通过用户名、密码登录User login01(@Param("uname") String uname,@Param("pwd") String pwd);UserMapper.xml:通过两层collection集合映射实现。<mapper namespace="com.zx.dao.UserDao">

2021-07-12 22:59:24 106

原创 2.15 Mybatis——权限管理模拟登陆练习(上)

问题描述用户(User)、角色(Role)、菜单功能(Menu)分别建立三张表,并建立用户_角色中间表(t_user_role),角色_菜单中间表(t_role_menu),通过用户登录,通过判断角色类型,查出对应的角色和菜单信息。一个用户可以有多个角色,一个角色有多个功能菜单。(多表联查——多对多)数据库设计实体类分析设计User实体类:一个用户可以有多个角色,所以在User实体类中将角色的集合List<Role> roles作为User的属性,并写出get.

2021-07-12 22:59:11 189 1

原创 2.14 Mybatis——动态sql

目录1. if2.choose(when, otherwise)3.Where(if)——常用4.自定义 trim5.Set——动态更新语句6.Foreach——对集合进行遍历根据不同条件拼接 SQL 语句。Mybatis动态sql常用元素:用于查询语句:ifchoose(when, otherwise)...

2021-07-12 21:56:02 138 1

原创 2.13 Mybatis——缓存策略

1. 缓存种类一级缓存 SqlSession缓存默认开启) SqlSession关闭后(sqlSession.close()),缓存消失。二级缓存 SqlSessionFactory缓存当二级缓存开启后,同一个命名空间(namespace) 所有的操作语句,都影响着一个共同的 cache,也就是二级缓存被多个 SqlSession 共享,是一个全局的变量。当开启缓存后,数据的查询执行的流程就是 二级缓存 -> 一级缓存 -> 数据库。2. 二...

2021-07-12 00:02:16 621 3

原创 2.12 Mybatis——一对多抓取策略

1.情况描述如果只需要使用一方中的数据,而不使用多方数据的情况下,在执行过程中不需要发送查询多方的sql语句,需要配置抓取策略为懒加载。2.适用情况适用于一对多的方式一,通过多条sql查询情况。3.抓取策略fetchType(collection集合映射标签内属性)懒加载(延迟加载):fetchType="lazy"。 及时加载 (默认):fetchType="eager"。4. 实例演示以2.9...

2021-07-11 23:33:42 141

原创 2.11 Mybatis——多对多集合映射处理(2)

1.通过教师,查询学生信息,使用一对多的第二种方式,通过一句sql语句。2.实例展示问题描述:通过教师tid,查询学生信息。数据库:student_teacher为中间表代码实现:(1)教师实体类Teacher.java:将学生实体类的集合List<User>作为Teacher实体类的对象。 private List<Student> students; public List<Student> getSt.

2021-07-11 23:33:29 198

原创 2.11 Mybatis——多对多集合映射处理(1)

1.通过学生查询教师信息,使用一对多的第一种方法。2.实例展示:问题描述:通过学生sid查询老师信息。数据库e-r图:代码实现:学生实体类Student.java:将教师实体类的集合作为学生的属性。 private List<Teacher> teachers; public List<Teacher> getTeachers() { return teachers; } public v.

2021-07-11 23:33:22 138

原创 2.10 Mybatis——关联映射与集合映射区别

多对一关联映射与一对多集合映射区别(1)多对一,多的一方 实体类中将一的一方是实体类的对象作为属性; 一对多,一的一方 实体类中将多的一方是实体类的集合(例如List<User>)作为属性;(2)多对一关联映射使用association标签; 一对多集合映射使用collection标签。(3)多对一关联映射association标签返回值类型使用javaType属性; 一对多集合映射使用collection标签返回值类型使...

2021-07-11 12:21:16 202

原创 2.9 Mybatis——一对多集合映射——方式二

1.准备实体类一对多写集合,用户实体User的集合List<User>作为分组实体类Groups的属性,并写出对应的get、set方法,不要在toString方法重写。2.方式二:通过一条sql语句查询方式二:发送一次sql语句,进行联表查询,需要注意SQL语句的性能,不需要使用select属。注:column属性值需要与sql语句内的字段别名(有别名时)相同。 collection——集合映射标签 出现在“一”方 属性colum...

2021-07-11 12:21:02 594

原创 2.9 Mybatis——一对多集合映射——方式一

目录1.准备实体类2.查询方式一:通过两条简单sql语句查询3.实例展示1.准备实体类一对多写集合,用户实体User的集合List<User>作为分组实体类Groups的属性,并写出对应的get、set方法,不要在toString方法重写。2.查询方式一:通过两条简单sql语句查询resultMap 如果返回值中有其他对象的属性时使用 属性 id id的值=selecct标签内resultMap的值 属性type...

2021-07-11 12:20:51 382 1

原创 2.8 Mybatis——多对一关联映射——方式二

方式二:通过一条sql查询。

2021-07-11 12:20:37 117

原创 2.8 Mybatis——多对一关联映射——方式一

<mapper namespace="com.zx.dao.UserDao"> <!--resultType返回单个对象的属性 resultMap返回关联对象的属性 id属性值 = select标签内resultMap的值。 type属性值 方法返回值的类型。 子标签: id 主键标识(column——表中的字段,property——实体类中对应的属性) .

2021-07-11 12:20:24 219 1

原创 2.7 Mybatis——返回值处理

1.返回值为自定义对象类型2.返回值为自定义对象的一个属性返回值类型为具体返回属性的数据类型。(1)Dao层方法:(2)Dao层对应的映射文件:(3)运行测试:3.返回值为自定义对象多个属性的值方法一:使用HashMap接收dao层方法:dao层的映射文件:运行测试:测试结果:方法二:使用对象接收dao层方法: //返回值为自定义对象多个属性的值——使...

2021-07-11 12:20:01 3169 1

原创 2.5 Mybatis——参数处理之多表联查

A、B两个相关联的表,查询A表中满足B表中某一属性值的信息。问题描述:用户表user和分组表group相关联,通过group表id查询user的信息。

2021-07-11 09:04:09 315 2

原创 2.6 Mybatis——参数处理之sql注入

1.应用场景:查询满足某一不确定情况下的用户信息,具体查询属性以运行测试输入为准。2.实例问题描述:倒序查询User表中满足某一条件的用户信息,具体查询条件按运行测试输入属性为准。3.解决方法:(1)UserDao层方法:在具体方法形参前加入 @Param("str")。(2)UserDao.java的映射文件:在sql注入查询字段的位置写为${str}。(3)运行测试:4.关键代码展示:UserDao.java:package...

2021-07-10 16:51:52 401

原创 2.4 Mybatis——参数处理

1.参数类型为基本类型或者字符串类型,而且个数为单个的时候。传参的过程中,#{}当中可以随意书写变量的名称。2.参数类型为自定义对象,而且个数为单个的时候。传参的过程中,#{}当中名称必须是自定义对象中的属性名(有相对应的get方法的属性)。3.参数个数为多个时,解决方法:(1)方法一:在映射文件对应sql语句的#{}中写固定框架底层的参数名称(param1、param2。。。)(2)方法二:参数的注解——在XXXDao方法的形参前追加@Param。(3)

2021-07-10 15:54:36 890 1

原创 2.3 Mybatis——封装创建SqlSession的方法

package com.xs.utils;import java.io.IOException;import java.io.InputStream;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSess.

2021-07-10 15:53:35 288

原创 2.2 Mybatis——注解开发

1.注解开发与xml开发区别: (1)注解开发不需要在resources下创建实体类映射文件(file)UserMapper.xml。 (2)注解开发的sql语句写在 dao层接口的方法上面xml开发sql语句写在dao层在resources层对应的.xml映射文件中。 (3)注解开发mybatis-config.xml的内的映射指向dao层接口的全限定路径,xml开发mybatis-config.xml的内的映射指向dao...

2021-07-10 15:52:48 81

原创 2.1 Mybatis——log4j日志文件应用

1.作用:实现控制台显示mybatis执行的sql语句。2.使用:log4j必须与对应的配置文件(log4j.properties)一起使用才能起作用。log4j.properties位于resources下。(直接在网上查找复制)

2021-07-10 15:52:10 110

原创 二、MaBatis——持久层框架

1. 简介MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。2. 搭建第一个MaBatis工程整体项目结构:第一步:创建一个JavaMaven项...

2021-07-10 15:51:33 187

原创 1.3 IDEA创建一个MavenWeb项目

1.第一步:2.第二步:3.第三步:4.第四步:

2021-07-10 15:50:20 58

原创 1.2 IDEA创建一个MavenJava项目

1.选择configure。2.选择settings。3.选择Maven,配置Maven home directiory、User Settings files、Local repository的路径,然后Apply——>ok。4.选择Create New Project。5.Maven——>勾选Create from archetype——>选择maven-archetype-quickstart——>Next。注:“勾选Create from a

2021-07-10 15:50:03 167

原创 1.1 Maven——Maven的环境安装

Maven的环境准备(需已安装JDK)(1)第一步:下载Maven安装包: 下载地址:http://archive.apache.org/dist/maven/maven-3/(2)第二步:解压Maven压缩包到准备的空文件夹(路径名中不要有中文没有中文没有空格的路径下)。如E:\JavaEE\apache-maven-3.5.2(3)第三步:新建一个空的文件夹作为本地仓库Repository。如 :E:\JavaEE\Repository(4)第四步:配置E:\..

2021-07-10 15:49:40 85

原创 一、 Maven——项目管理工具

1. 简介Maven是一个项目管理工具,它包含了一个项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。2. Maven工程编译与测试 删除target文件:mvn clean 编译命令:mvn c...

2021-07-10 15:49:10 151

原创 junit不能运行问题

之前junit测试单元一直报错不能使用,后来试了很多种方法都不行,最后发现是JDK的问题,最后卸载重新安装了一个JDK才解决问题。注意:JDK一定要去Oracle官网下绿色纯净版,并且jdk和jre要分开放在两个文件夹。注意:JDK一定要去Oracle官网下绿色纯净版,并且jdk和jre要分开放在两个文件夹。注意:JDK一定要去Oracle官网下绿色纯净版,并且jdk和jre要分开放在两个文件夹。...

2021-07-07 20:27:01 1049

原创 Tomcat日志乱码问题解决方法

问题描述:启动tomcat之后,控制台打印的日志中出现了中文乱码的情况:解决方法1.找到tomcat下的conf目录下的logging.properties文件。2.将logging.properties用记事本打开,然后将java.util.logging.ConsoleHandler.encoding等号后的UTF-8改为GBK。...

2021-06-14 22:20:39 3880 2

原创 1.3(2) 框架——框架集合

框架集合——body是并列的概念(1)作用:用来组织多个窗口(框架)。每个框架存有独立的文档。在其最简单的应用中,frameset 元素仅仅会规定在框架集中存在多少列或多少行。必须使用 cols 或 rows 属性。里面如果只有一个框架用frame标签,如果多个框架用frameset标签用cols 或 rows按比例进行行,列的切割。(2)优点:可以避免内嵌框架边框对不齐问题。(3)标签: <frameset ></frameset>练习...

2021-06-13 17:38:25 319

原创 1.3(1) 框架——内嵌框架

内嵌框架——位于body内(1)作用:用于在网页中嵌入一个网页并让它在网页中显示。(2)标签: <iframe src="URL"></iframe> URL指定独立网页的路径。(3)属性:src——指向目标页面。 name——内嵌框架自定义名称,超链接跳转展现位置。 frameborder——设置边框宽度。...

2021-06-13 17:31:31 767

原创 1.2(6)body——表格标签

表格标签 表格标记 <table>< /table> 设置表格 行标记 <tr></ tr> 设置行 单元格标记 <td></ td> 设置单元格 表头标记 <th></ th>

2021-06-13 11:01:03 190

原创 1.2(5) body——列表标签

常用列表标签 无序列表 <ul></ul> 属性 type 设置列表前图标样式。 如果想要更换图标样式,需要借助css技术style="list-style:url(img/act.jpg) ;" 有序列表 <ol></ol> 属性 type 设置列

2021-06-13 10:31:48 75

原创 1.2(4)body——超链接锚点

超链接锚点应用场景:当一个页面太长的时候,就需要设置锚点,然后可以在同一个页面的不同位置之间进行跳转。使用方法:在需要跳转的位置前加一个超链接标签,并定义一个name属性,然后在使用超链接(href=”#name”)跳转到锚点的位置。 既可同一页面使用锚点,也可不同页面使用锚点。练习页面——2.3.1锚点.html(同一页面使用锚点)<!DOCTYPE html><html> <head> <...

2021-06-13 02:18:28 287 1

原创 1.2(3) body—— 超链接标签

超链接锚点应用场合:当一个页面太长的时候,就需要设置锚点,然后可以在同一个页面的不同位置之间进行跳转。使用发法:

2021-06-13 02:00:50 340

原创 1.2(2)body——多媒体标签

多媒体标签 图片标签 <img /> 属性 src 引入资源位置,既可引入本地资源,也可引入网络资源。 width 设置宽度 PS:一般高度和宽度只设置一个,另一个会按照比例自动适应。 音频标签 <embed></embed> heigh.

2021-06-13 01:24:13 154

原创 1.2(1) body——文本标签

文本标签 标题标签 <h1>一级标题</h1> h1-h6:字号逐渐变小,自带换行效果。 h7之后为无效标签,但是浏览器也不会报错,而是以普通文本的形式进行展现 横线标签 <hr /> 属性 width:设置横线宽度。 align:设置横线水平位置。 段落标签 .

2021-06-13 00:50:21 147

原创 1.1 head标签

head常用标签 <title> 定义HTML文档的标题 <title>与</title>之间的内容将显示在浏览器窗口的标题栏。 <meta /> <meta charset="utf-8" /> 设置页面的编码格式,防止乱码现象 <meta name="author" content="17266@q.

2021-06-12 23:39:14 109

原创 一、HTML

<title> 定义HTML文档的标题 <title>与</title>之间的内容将显示在浏览器窗口的标题栏。 <meta /> <meta charset="utf-8" /> 设置页面的编码格式,防止乱码现象 <meta name="author" content="17266@qq.com" /&gt...

2021-06-12 22:22:24 67

原创 SQL语言

SQL语言分为五个部分数据查询语言(Data Query Language,DQL) DQL主要用于数据的查询,其基本结构是使用SELECT子句,FROM子句和WHERE子句的组合来查询一条或多条数据。数据操作语言(Data Manipulation Language,DML) DML主要用于对数据库中的数据进行增加、修改和删除的操作,其主要包括: 1) INSERT:增加数据...

2021-05-12 22:05:14 173

空空如也

空空如也

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

TA关注的人

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