自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用iframe解决网页播放控件的刷新问题

使用iframe解决网页播放控件的刷新问题背景​ 最近在做毕设项目时遇到了一个很大的bug,因为我做的是一个音乐播放网站,类似于网易云音乐web版,写着写着突然发现从主页跳转到歌曲信息的界面后底部的播放控件也随之刷新了,这样是不能满足一个正常音乐网站的需求的,所以我查询了一些资料,了解到网易云音乐web是使用啥hash+iframe的,我也尝试搜看了这方面的资料,但是。太复杂了,对于我这个后端开发的来说太陌生了,所以有了以下的方法。思路目的​ 跳转界面底部播放控件不发生变化,或者说不刷新播放控

2020-12-07 16:07:34 485

原创 SpringBoot之集成MyBatis

SpringBoot之集成MyBatis1、来由之前使用ssm整合MyBatis时需要配置很多xml文件,即使使用了spring-mybatis的整合包已经让mybatis的配置都纳入到了spring.xml里面了,但是配置的还是得配置。2、MyBatis使用的连接池-hikarihikari是一款轻量级、非常强大的数据库连接池,效率大家可以看下图在springboot2.0已经默认集成了hikari,所以不需要怎么配置3、创建项目吧选择Spring Initializr更改信息

2020-11-14 17:30:02 159

原创 SpringBoot入门搭建

SpringBoot入门搭建1、什么是SpringBoot轻量级框架,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程2、SpringBoot有啥用简化ssm项目的配置文件操作,在idea中只需轻轻勾选你想要创建的项目类型即可完成构建而不需额外配置xml文件以及添加依赖(SpringBoot用到传递依赖,也就是A->B->C,可以用子类继承父类来理解)3、简单搭建一个web项目创建一个父工程(普通Maven工程,无需勾

2020-11-13 20:19:58 244

原创 Shiro环境搭建与简介

Shiro环境搭建1、什么是Shiro​ Shiro是一个Java安全框架,用来拦截和分析用户的访问2、为什么使用Shiro​ 执行身份验证、授权(查询有什么权限)、密码学(md5,sha1)和会话管理3、Shiro内容Shiro的功能组成(1)有四大功能》认证,授权,加密,会话管理(2)认证:判断账号密码Authentication:身份认证/登录。常见的认证方式: 登陆认证认证: 用户访问系统,系统校验用户身份是否合法的过程就是认证(3)授权:查询权限Authoriz

2020-11-11 21:13:35 611

原创 AOP实现日志的打印与存储

AOP实现日志的打印与存储1、啥是aop啊?​ 面向切面编程,我们在开发过程中经常会用到日志和数据库关闭等一系列操作,而这些是与我们业务逻辑代码无关的操作,把这些混在业务的实现上会影响我们开发,所以aop出现了。它将一个程序看成一个大汉堡,把青菜(日志等)抽取出来全部放到一个盘(类)中,要吃汉堡时可以将青菜(日志等)放在培根(业务)前后,你想多吃青菜(使用日志等功能)就可以多吃,不想就不放。而且不仅可以放到一个汉堡中,其它口味的汉堡也可以放。2、为啥使用aop啊?​ 当然是方便操作啊,框架的

2020-11-11 20:19:43 471

原创 MyBatis逆向工程简单思路

MyBatis逆向工程1、什么是MyBatis逆向工程​ 使用MyBatis的插件自动的生产数据库操作的文件2、优点、缺点​ 优点:自动化,简单的crud不用自己去一步步实现​ 缺点:稍微复杂的如多表的数据库操作不能够生成3、准备工作创建一个Maven工程添加pom依赖<!-- 定义依赖的版本号 --> <properties> <junit.version>4.12</junit.version&gt

2020-11-11 17:04:10 123

原创 Junit测试多线程问题

Junit测试多线程问题今天在学习生产、消费者模式的时候准备测试多线程的运行效果,因为最近使用Junit多了就习惯的用上了**@Test**但是我不管怎样调试程序,始终程序只运行"一会儿"了解了点Junit源码后终于知道了原因public static final int SUCCESS_EXIT = 0;public static final int FAILURE_EXIT = 1;public static final int EXCEPTION_EXIT = 2;public sta

2020-11-06 14:49:40 174

原创 Saas-Export项目之部门数据回显(下拉框和单选框回显)

Saas-Export项目之部门数据回显之前的经验做数据回显一般就是在数据修改时需要查询出这条信息,然后再将数据拆分每一项逐一赋值在表单上,通常赋值就行,而且都是input type=text这种类型的,所有只要在input里增加value=${value}就行了。问题这次遇到的问题是,回显中不仅需要显示本部门的名字,还得显示上级部门的名字,表单中上级部门的选择还是用下拉框选择的,此外还多了单选框的赋值[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F05FGhBs

2020-10-31 20:55:09 207

原创 第一部分 Spring

工具:idea、maven第一部分 Spring一、Spring IOC1、名词解释控制反转(Inversion of Control)或又叫依赖注入。控制反转:将对象的创建销毁等动作交由Spring容器管理,传统是直接new,耦合度高。依赖注入:不同对象之间的依赖关系交由Spring容器管理。2、依赖注入2.1、使用构造器<!--class是具体的实现类的限定名--><bean id="constructDao" class="com.hjy.spring.injec

2020-10-27 11:04:16 157 2

原创 数据库长字段复制与notepad++拼接字段名(超超超超超省力)

使用SQLyog数据库软件复制多字段当数据库中表的字段非常多,我们在这些字段与bean对象的成员变量之间一一对应时会非常麻烦,而且会很容易犯错。此时,我们可以借助数据库SQLyog资料一栏复制表的字段。Alt+鼠标左键点击拖动复制到txt用notepad++打开可是这还不是我们想要创建对象输入的内容去掉空格按住alt+鼠标左键往下拉,再输入"两次替换\n替换为",\n\r",替换为",结果最后复制到构造方法稍微修改下就行了...

2020-10-26 16:40:27 467 2

原创 使用PowerDesginer创建sql文件

使用PowerDesginer创建sql文件什么是PowerDesginer?PowerDesigner是 Sybase 的企业建模和设计解决方案,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供强大的分析与设计技术。pj版下载地址https://www.onlinedown.net/soft/577763.htm操作步骤1、创建model2、添加表点击表后在白板中点击一下就会出来一个表3、设计表切回Standard内的鼠标,双击表,先修

2020-10-24 21:03:14 214

原创 部署AdminLTE

部署AdminLTE什么是AdminLTE?AdminLTE是一个完全响应管理模板,内置很多流行的界面,你在写好的界面上做增减就好了,基于bootstrap和jQuery。准备工作下载:https://adminlte.io/开始复制release目录内的css、img、pages、plugins文件夹到项目webapp根目录下 添加依赖<!--web基础包 --><dependency> <groupId>javax.servlet

2020-10-24 20:00:30 318

原创 父子工程搭建

父子工程搭建何为父子工程?在idea里面如果一个Maven项目比较大,那么就可以考虑使用父子工程设计。pom继承,父工程主要提供pom依赖,而子工程继承了父工程的依赖就不必在自己的pom文件里做添加。模块化设计,之前设计的三层架构(dao、service、web)是以包为基础,父子工程的子工程一个工程代表一层设计子工程打包依赖,每层架构的工程生成jar包(web层war包)以让其它工程依赖具体实现目录1、创建父工程 2、添加依赖<dependencies> &

2020-10-24 19:38:34 214

原创 SSM整合之CRUD(ajax提交、pagehelper)——基于测试驱动开发

SSM整合之CRUD(ajax提交、pagehelper)——基于测试驱动开发测试驱动开发:写一步,测一步先逻辑,后实现pagehelper简介简单来说就是一款开源的Mybatis第三方物理分页插件为什么说是mybatis呢?因为其原理就是设置拦截器拦截sql语句,当sql语句执行时在其尾部加上limit startNum, endNum,这里就得注意dao.xml的sql语句结尾不要加上;不然执行结果就变成了select * from department; limit startNum,

2020-10-23 21:58:35 102

原创 SSM整合之CRUD(ajax提交、pagehelper)——基于测试驱动开发

SSM整合之CRUD(ajax提交、pagehelper)——基于测试驱动开发测试驱动开发:写一步,测一步先逻辑,后实现pagehelper简介简单来说就是一款开源的Mybatis第三方物理分页插件为什么说是mybatis呢?因为其原理就是设置拦截器拦截sql语句,当sql语句执行时在其尾部加上limit startNum, endNum,这里就得注意dao.xml的sql语句结尾不要加上;不然执行结果就变成了select * from department; limit startNum,

2020-10-23 17:46:21 169

原创 SSM整合之CRUD(表单提交)——基于测试驱动开发

SSM整合之CRUD(表单提交)——基于测试驱动开发测试驱动开发:写一步,测一步先逻辑,后实现1、为什么要练习CRUD​ CURD是最基本程序流程,主要练习的是这个思路,程序中出现的很多功能本质上都是数据的crud2、准备工作SSM整合数据库创建department表3、开始目录结构测试类(先测试后台数据正确性,保证开发效率,也就是减少debug时间)//以下两个注释是spring的测试支持@RunWith(SpringJUnit4ClassRunner.cla

2020-10-23 16:37:16 169 1

原创 父子工程之idea子工程引入不了父工程的pom依赖

问题的提出当我们在使用父子工程创建项目时,一般子工程的pom依赖会以父工程的pom文件为基础,有点类似与Java基础的父子继承,但有时却引入不了依赖 创建项目父子工程 项目依赖 问题的分析与解决1、查看父工程依赖一般使用父子工程,父工程的pom文件都会有一个modules标签,里面都是子工程模块名

2020-10-16 10:51:25 3596

原创 用一个查询案例整合SSM----基于测试驱动开发

SSM整合----基于测试驱动开发测试驱动开发:写一步,测一步先逻辑,后实现准备工作创建父子工程目录这样的好处是子工程能共享父工程的依赖文件,可以把子工程的pom文件依赖都去掉依赖***<properties> <!--注:键为标签 值为内部的值,方便依赖版本管理--> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <ma

2020-10-15 22:49:47 139

原创 git删除仓库的某个文件

提出问题当我们git提交项目到仓库的时候可能会误提交一些文件,这时却没发现仓库单独删除文件的选项,这就得需要git命令来操作了解决问题命令git rm -r 文件名git add .git commit -m "描述"git push 远程仓库的key master注意:git Bash的目录一定要跳转到存放你想要删除的文件的目录下附.gitignore文件的创建1、到**.git同级目录下**创建.txt文件2、添加pattern*.class*.imltarget/.i

2020-10-15 19:24:35 687

原创 开发中浏览器缓存问题----轻松解决

开发中浏览器缓存问题1、问题的提出​ 在web开发过程中通常不是固定的,我们通常会更改后台的文件并刷新浏览器来调试结果,但是有时候你怎么刷新,重启Tomcat甚至把依赖的文件给删了,浏览器还是会正常加载,尤其是当你使用引入js文件开发,浏览器会缓存js文件,导致无论你怎们修改js文件前台的结果还是没变化2、问题的解决​ 网上看到过很多办法,具体的有​ 1.ctrl+F5强制刷新(亲测无效)​ 2.请求页面后缀加上时间戳(太麻烦)​ 3.还有啥加taglib版本号的(也

2020-10-11 10:55:43 1239

原创 Mybatis使用分步懒加载导致json转换异常界面500报错

Mybatis使用分步懒加载导致json转换异常异常描述No serializer found for class org.apache.ibatis.executor.loader.javassist.JavassistProxyFactory...解决异常***在分布查询每个相关的bean类上添加注解@JsonIgnoreProperties(value = { "handler"})原因懒加载是你要用到数据时才会给你查询,但是直接把查询对象转成json串会导致结果还没查询出来

2020-10-07 20:05:51 214

原创 Java基础之参数传值

基本类型的传值就是拷贝数值引用传值改变引用的指向//Integer的自动装箱和拆箱Integer i1 = new Integer("3");Integer i2 = new Integer("5");i1 = i2;//i1和i2现在指向同一个对象i1 = new Integer("2");//引用i1重新指向新的对象,和i2互不干扰System.out.println(i1 + "-----" + i2);//输出2-----5改变引用指向对象本身//自定义类的引用赋值

2020-09-26 20:39:53 107

原创 Mybatis级联查询

Mybatis查询用户表和订单表,一个用户有多个订单,一个订单只对应一个用户,两者一对多关系表Orders表: Customer表:mybatis-config配置文件<environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSour

2020-09-25 21:31:33 930

原创 sql基础学习

排序关键字:order by desc降序 asc升序(默认)示例:select * from user order by money desc注意:order by只能通过阿拉伯数字和英文字母排序聚合函数关键字:count()count(*)表示表的行数,不忽略有值为null和0的行数count(列名),表示这个列有多少行,忽略这个列行数值为null的行表:语句:select count(*) 行数 from student select count(nam

2020-09-24 15:02:07 118

原创 mysql8.0备份的sql文件还原到5.540版本出现的问题

1、修改备份的sql文件选择sql文件用notpad++打开,Ctrl+F选择替换utf8mb4_0900_ai_ci替换为utf8_general_ciutf8mb4替换为utf8 2、修改my.ini文件当还原的sql文件比较大时在还原过程中可能会失败或异常一劳永逸的办法:在**[mysqld]**下面添加max_allowed_packet = 256M...

2020-09-24 11:17:06 465

原创 史上最简单maven配置与使用

什么是mavenmaven是用来帮助开发者管理项目所依赖的jar包的一款工具,创建maven工程使得开发不必再自己下载jar包,放入项目文件作为依赖,开发者只需在pom.xml文件里加入依赖的坐标即刻什么是坐标<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.

2020-09-22 19:57:35 228

原创 初学Redis

Redis学习1、Redis是什么?相对MySql、SqlServer和Oracle来说,Redis是NOSQL,也就是非关系型数据库2、为什么要学习Redis与传统数据库不同,Redis可以将一些长期不变的数据存放在内存中,这样的存储方式使得读取数据的速度加快,常用于高并发的访问场景3、Redis的存储方式通过key、value键值对的形式存储数据,其中最常用的是**Map<String,String>**这样的存储方式,value通常是json数据格式4、Java中

2020-09-21 19:28:16 73

原创 mybatis级联查询相同id问题

问题由来当对数据库进行级联查询的时候,通常会多表联合查询,这就导致数据库两个不同的表的列名有时会一样,尤其是id。如下person表card表其中c_id是person表的外键,对应card表的主键id,这里我们可以看到他们两的列名id名称一样数据查询使用navicat查询id为2的用户,及其card信息结果列名id1是为了防止重名,navicat自动给结果取的名字,结果还是正确的But使用mybatis查询这条信息时mapper文件查询的语句还是和navicat的一样i

2020-09-10 20:02:48 1853 1

原创 Servlet下载文件

Servlet下载文件1、浏览器发送请求访问文件<body> <%--访问servlet下载文件--%> <a href="download?filename=basic.png">照片下载</a> <%--访问服务器文件路径,预览--%> <a href="files/img/basic.png">照片预览</a> <a href="download?filename=新建360压缩ZIP

2020-09-10 10:42:41 178

原创 MySql插入一条数据不提交事务主键还是会自增1

在使用mybatis想要插入一条数据时,需要最后将事务提交,这时如果设置了主键自动递增,主键会随着数据的插入自增1。但是看下面的情况。try (SqlSession sqlSession = sessionFactory.openSession()) { MyUser myUser = new MyUser(); myUser.setUname("MMC"); myUser.setUsex("MAN"); mapper.addUser(myUser);//事务不提交,但是主键还是

2020-09-06 11:52:45 2085 3

原创 Java迭代器ListIterator的误区

api文档上面描述的方法如next,说是返回列表下一个元素,但实际操作中并不是这样,其实是取出当前游标指向的元素,然后cursor++,还有判断hasNext方法也是判断当前游标所指向的元素我的解释1.next(),返回的是当前游标的元素,使用完后游标cursor++2.nextIndex(),返回的也是当前元素的游标位置(cursor从0开始)3.previousIndex(),返回的是前一元素的游标位置代码验证public class Test02 { public stati

2020-08-19 17:09:17 259

原创 Tomcat配置运行项目错误

1、Could not publish server configuration for Tomcat v8.5 Server at localhost.如果配置的Tomcat是配合旧的项目运行产生这样的结果,要找到项目列表叫servers的项目,先删除它,然后重新配置Tomcat。2、Start tomcat has encountered a problem.找到servers里面的server.xml,删除有Context那一行。...

2020-08-10 11:03:55 206

原创 MySql8.0解压版本安装

1、下载地址地址:https://pan.baidu.com/s/1tnv3wzQIFZ_iZ7Kj3gIoLw密码:9a1t2、解压、安装注意:解压路径不能有中文2.1、创建my.ini文件文件根目录创建my.ini文件(先创建txt,设置好内容再改成.ini后缀)my.ini内容:port = 3306[mysqld]port = 3306basedir=C:\D_SoftWare\MySQL #这是解压的路径datadir=C:\D_SoftWare\MySQL\data

2020-07-06 22:01:33 141

原创 idea tomcat使用发布路径在webapp目录下

在model的artifacts下已经配置了tomcat发布路径但是使用request取得路径时却不是配置的路径可能是使用了jrebel,它默认给你设置了发布路径找到resources下的rebel.xml,更改路径即可...

2020-05-06 22:53:03 524

原创 spring mvc表单错误信息界面正常,控制台输出乱码

可以试试在这里加上或删除-Dfile.encoding=UTF-8!

2020-05-06 22:46:17 152 1

原创 重定向与转发的区别

重定向过程:浏览器发送请求服务器响应并发送302响应码和新的location浏览器发现是302响应再发送一个请求location到服务器服务器再根据新的location响应资源给浏览器转发过程:浏览器发送请求服务器根据内部方法和资源完成转发并响应给浏览器区别:请求次数重定向请求至少2次转发请求1次request作用域重定向之后之前一次request全...

2020-04-16 09:48:04 66

原创 Jquery基础总结

选择器层次选择器a+b和a~b的区别JQuery中的**+(相邻兄弟选择器)代表选取a的紧邻**的是b标签的兄弟元素(单个),没有b标签就不选中 $(".div+span");//选取.div紧邻的span标签JQuery中的**~则代表选取a后面是b标签的所有兄弟标签**,不管是不是紧邻的,只要层级相同,父元素相同就选中 $(".div~span...

2020-04-11 18:35:55 167

原创 win10 Typora右击新建MarkDown文件

步骤win+r打开运行输入regedit点击确定进入注册表复制HKEY_CLASSES_ROOT.md按回车进入.md文件夹下如果文件夹下有东西就删了,在.md下右击新建项重命名为ShellNew在ShellNew下右击新建—字符串值重命名这个字符串值为NullFile结束...

2020-03-31 22:51:19 254

原创 HTML drag事件遇到的问题

html5中新添加的drag事件属性能够很方便的实现类似购物车的拖拽,在实现这一功能时遇到了一些问题。拽入的目的容器的属性不仅要加上ondrop属性还要加上dragover属性,...

2020-03-11 22:08:05 309

原创 Python存储对象(集合、元组,字典)

list集合[arg,arg…],有序,可变,相当于数组,可用-1取最后元素以此类推-2 -3方法:1、list.append(arg) arg是添加到集合末尾的元素           2、list.inser(arg1, arg2) arg1为位置,arg2为元素  ...

2020-03-07 23:41:12 2352

空空如也

空空如也

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

TA关注的人

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