自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (3)
  • 收藏
  • 关注

原创 基于SpringBoot的作业提交系统

1.采用的技术(1)后端技术:SpringBoot、Spring Data JPA(2)前端技术:Layui、html ,ajax,jq2.实现的功能(1)管理员:对课程、教师、学生数据进行增删改查(2)教师a.布置作业b.查看作业并批改作业c.实现查重’(3)学生a.网上选课b.采用CKEditor提交作业3.页面展示(1)登录页面(2)添加学生(3)学生信息展示(其他课程、教师的信息因为类似就不展示了,只列出一些页面)(4)教师端的查看课程所属下的作业列表(注:

2020-05-11 17:59:39 64258 12

原创 个人遇到的java面试题总结

1.springmvc和struts2有什么区别a.Struts2是类级别的拦截, 一个类对应一个request上下文,SpringMVC是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应,所以说从架构本身上SpringMVC就容易实现restful url,而struts2的架构实现起来要费劲,因为Struts2中Action的一个方法可以对应一个url,而其...

2019-11-14 19:11:31 61527

原创 使用navicat连接Linux的mysql出现的1251错误代码

第一次接触centos7,折腾了两天了才解决了!!!之前在centos7上拉取了mysql 8.0.17的版本,然后使用navicat进行远程连接的时候一直报1251的错误,查询之后发现是MySQL5.0和MySQL8.0加密方式不同,MySQL5.0加密规则是:mysql_native_password,MySQL8.0加密规则是:caching_sha2_password,所以要统一加密规则...

2019-08-19 23:23:02 63646 8

原创 shiro的简单介绍

1.Shiro的简单配置1) 获取ShiroFilterFactoryBean,作用是在执行相关操作前,先进行功能过滤,拦截所有请求,进入到shiro中进行认证与授权例如:设置一些拦截的请求// 身份认证失败,则跳转到登录页面的配置bean.setLoginUrl(“/tologin”);// 权限认证失败,则跳转到指定页面bean.setUnauthorizedUrl(“/tologin”);2) 创建SecurityManager,来管理shiro;Shiro通过SecurityManag

2022-05-03 15:39:46 2047

原创 线上问题排查神器 Arthas的简单使用

环境jdk6以上,支持linux/Mac/windows指令1)java -jar arthas-boot.jar,接着再指定黏附的线程即可(启动的时候,如果端口被占用,可以指定其他端口java -jar arthas-boot.jar --telnet-port 9998 --http-port -1)2)dashboard 仪表板输入dashboard,按回车/enter,会展示当前进程的信息,按ctrl+c可以中断执行。第一部分是显示JVM中运行的所有线程:所在线程组,优先级,线程

2022-05-02 18:20:41 1160

原创 Redis笔记

什么是NoSQLNoSQL = Not Only SQL,意思:不仅仅是SQL;泛指非关系型的数据库,随着互联网Web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的社交网络服务类型的Web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展,NoSQL数据库的产生就是为了解决大规模数据集合多种数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储。Redis入门1)Redis是什么是

2021-10-05 21:03:41 209

原创 JUC笔记

synchronized的8种现象new 锁的是 一个对象static 锁的是 Class1)锁的调用者是同一个对象,按照顺序执行先打印邮件1,再发短信2package com.coding.lock8;import java.util.concurrent.TimeUnit;/** * **1、标准访问,请问先打印邮件1还是短信2?** * * */public class Test1 { public static void main(String[]

2021-09-20 23:21:59 145

原创 springcloud学习笔记

微服务是什么?微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事,从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,拥有自己独立的数据库。微服务的优缺点优点每个服务足够内聚,足够小,代码容易理解这样能聚焦一个指定的业务功能或业务需求开发简单、开发效率提高,一个服务可能就是...

2021-09-12 22:19:30 200

原创 MYSQL优化

客户端发送请求,例如:select,服务端做了哪些操作mysql服务端逻辑分层有三层:连接层、服务层、引擎层三层的作用如下:引擎InnoDB和MyISAM主要的区别InnoDB:事务优先(适合高并发,行锁:每条数据都要锁,所以性能就降低了)MyISAM:性能优先(表锁)-- 查找存在的引擎show ENGINES;-- 当前默认的show VARIABLES like '%storage_engine%';sql优化编写和解析的过程优化sql,主要就是优化索引:索引:数据

2021-08-08 12:12:38 263

原创 数据结构之栈

栈的介绍1)栈是一个先入后出的有序列表2)允许插入和删除的一端,为变化的一端,称为栈顶,另一端是固定的一端,为栈底数组模拟栈代码实现package 数据结构.栈;import java.util.Scanner;public class ArrayStackDemo { public static void main(String[] args) { ArrayStack stack = new ArrayStack(4); String key

2021-08-02 23:37:09 84

原创 数据结构之链表

链表的特点:1)链表是为节点的方式来存储;2)每一个节点包含data域,next域:指向下一个节点;3)链表的各个节点不一定是连续存放的4)链表分带头节点和没有头节点的链表单向链表1)添加2)按照编号节点添加...

2021-07-25 23:04:56 195 1

原创 数据结构之队列

队列队列是一个有序列表,可以用数组或者链表来实现遵循先入先出的原则,现存人的数据要先取出;两个变量 font,rear表示前后端rear=-1,font=-1表示队列中0个元素思路分析:ii)将尾指针往后移,rear+1,当front == rear【空】ii)若尾指针rear小于队列的最大下标maxSize-1,则将数据存入rear所指的数组元素中,否则无法存入数据,rear==maxSize-1【队列满】代码实现:package 数据结构.队列;import java.util.S

2021-07-22 08:28:05 101

原创 MySQL

1.count(*)和count(列名)区别count(*)返回满足条件的记录的行数count(1):统计满足条件的某列有多少个,会排除nullselect count(if(comm is null,1,null)) from emp;查出null的有多少或者这样写:(总人数-不为空的)select count(*)-count(comm) from emp;2.分组函数...

2021-07-20 08:30:18 138

原创 SpringMVC知识总结

1.运行流程运行流程1)客户端发送请求2)来到tomcat服务器3)springmvc的前端控制器收到所有请求4)来看请求地址和@RequestMapping标注的哪个匹配,来找到到底使用哪个类的哪个方法5)前端控制器找到目标处理器和目标方法,直接利用反射执行目标方法6)方法执行完成以后会有一个返回值,springMvc认为这个返回值就是要去找的页面地址7)拿到方法返回值以后,用视图解析器进行拼接得到完整的页面地址8)拿到页面地址,前端控制器转发到页面@RequestMapping这个

2021-07-18 22:39:42 143 1

原创 Spring知识总结

1.IOC:反转控制1)DI:依赖注入2)IOC在spring容器的实现:a).通过IOC容器读取Bean的实例之前,需要先将IOC容器本身实例化b)Spring提供了IOC容器的两种实现方式.BeanFactory:IOC容器的基本实现,是Spring内部的基础设施,是面向Spring本身的,不是提供给开发人员使用的。ApplicationContext:BeanFactory的子接口,提供了更多高级特性。面向Spring的使用者,几乎所有场合都使用ApplicationContext而不是底

2021-07-17 20:38:05 154

原创 JDK1.8的一些新特性

1.接口1.8之前方法默认的修饰词是public astract,并且接口里面不能写方法体,但是1.8的可以,并且其实现的子类没有强制写static和default的方法2.Lambda表达式:简化匿名内部类的调用

2021-07-03 15:16:09 504 1

原创 java之网络

网络通信网络:ip地址(唯一标识主机):ipv4:4个字节(32位)表示;一个字节的范围是0~255,(0255).(0255).(0255).(0255)ip地址的组成:网络地址+主机地址;比如:192.168.16.69;其中192.168.16是网络地址,69是主机地址;ipv6使用128位表示地址,16个字节,是ipv6的四倍(.......)ipv4的分类:在开发中0~1024端口尽量不用域名和端口(监听的一个服务才需要端口):在网络通信协议:网络通信理解:t

2021-06-21 15:35:54 109

原创 java之坦克大战

1.初始化坦克的模型:(两个矩形,一个正方形,一个圆形,一条直线)并且坦克有设计的行为:核心代码:2.当击中敌方坦克的时候,敌方坦克消失,并有一个爆炸效果界面看到的动态效果,其实是不断的重绘界面所展示的,所以先让这个窗口实现Runnable接口,然后当程序启动的时候,隔着一定时间不断的重绘界面当击中敌军的时候,敌军消失,并产生爆炸效果:先记录爆炸的位置,然后给爆炸的这个类一个生命周期,不同时间阶段展示不同图片,因为主窗口是不断的重绘,时间间隙不大的情况下,这就展示出了爆炸效果。使用一

2021-06-20 20:48:10 660 1

原创 java基础之IO流

io学习框架:文件:保存数据的地方。1)常见文件对象的相关构造器和方法:当进行File file = new File(filePath);只是在内存上有一个文件对象;只有file.createNewFile();才会在磁盘创建文件获取文件的相关信息:utf8中,一个汉字是三个字节2)目录的删除和增加:a)用来删除文件或者文件夹b)文件夹的创建:Io流的原理:流的分类:字节流适用于声音等文件的传输,因为字节流是一个字节一个字节的读取,可以保证无损;字符流虽然读取

2021-06-13 23:06:45 4500 19

原创 java之泛型

泛型的理解:泛型示例:泛型语法:

2021-06-08 22:55:25 117

原创 java之集合

1.集合的体系图2.数组vs集合a)数组:b)集合3集合的继承图(主要的一些类)集合主要两种:单列集合(对象)、双列集合(键值对)a)collectionb)Map4.collection接口实现类的接口a)b)collection的子类都可以使用Iterator迭代器ii)迭代器原理:可重复;ii)增强for循环5.List接口6.arrayLista)可以放任何值,可以加入null,并且多个b)底层是由数组实现c)arrayList等同vecto

2021-06-07 23:26:50 293 4

原创 java后端技术体系

(本文是截取韩老师的学习文档,旨在明确一下知识体系)1.java基础部分2.java高级3.javaweb4.主流框架5.分布式 微服务

2021-05-16 23:09:11 185

原创 java之包装类,String类以及常见的一些类

1.8种 包装类型(wrapper)a)拆箱与装箱(练习题)此处输出是1.0而不是1的原因,因为double的优先级别较高,三元运算符是一个整体,所以integer要提升精度ii)当直接new Integer()是两个不同的对象;当Integer m定义的时候,底层是Integer.valueOf()这个方法,当值在-128~127之间的时候,直接返回值;当不在这个范围的时候,会new Integer(“值”),就变成了一个对象ii)只要存在数据类型,比较的就是值是否相等2.Stri

2021-05-16 21:08:21 108 1

原创 java之异常处理

1.异常处理机制的价值:出现异常,程序还能继续执行2异常的分类:error 和exception(编译和运行时异常(可不处理))3异常体系图4异常处理的两种方式a)try-catch-finally(程序员代码捕获)处理机制图:b)throws将发生的异常抛出,交给调用者来处理,最顶级的处理者就是jVMthrows处理机制图:JVM:打印错误信息,退出程序如果程序员,没有显示是处理异常,默认是throws5.try-catch-finally具体分析a)可以有多个catch语

2021-05-16 00:35:56 187

原创 面向对象之抽象类、内部类

1.抽象类(抽象类的本质还是类)2抽象类和接口的区别a)两者都不能直接实例化,对于抽象类:如果抽象类要实例化,那么抽象类定义的变量必须指向一个子类对象,子类需要继承抽象类的所有抽象方法;对于接口,定义的变量要指向一个子类对象,这个子类必须实现了这个接口所有的方法。b)接口只能方法声明,抽象类可以方法的声明或者实现。c)抽象类需要被子类继承,接口需要被子类实现d)抽象类所有抽象方法都需要被实现,如果不能全部实现,子类也需要是抽象类;e)抽象类里面可以没有抽象方法f)类中有抽象方法,那么这个类一

2021-05-15 23:15:28 264 1

原创 类变量和类方法相关知识

1.类变量(静态变量)a)类变量内存布局ii)类变量存放在堆空间(jdk8以后),方法区(jdk8以前)ii)静态变量被对象(指的是同一个类的所有对象)共享ii)类变量在类加载的时候就生成ii)类变量是类加载时候就创建了,所以我们没有创建对象实例,也可以通过雷鸣,类变量名来访问ii)生命周期随着类的加载而加载,随着类的消亡而消亡b)语法2类方法a)静态方法只能访问静态属性或者静态方法;但可以通过创建一个对象,访问对象里面的方法;b)类方法不允许使用和对象有关的关键字,如:this、s

2021-05-15 18:06:16 421

原创 java一些简单常见方法分析

==和equals的对比a) ==例如:A,B两个类为父子关系B b = new B()A a = b;判断a == b的结果;true,因为指向的内存空间是相等的,或者说地址相等b)equals 只能判断引用类型(判断地址)2.hashcodea)不同对象的哈希值是不一样的b)hashcode不是对象地址,而是根据地址转化而成的代码3toString()默认返回 :全类名+@+哈希值的十六进制4.finalize()垃圾回收器当没有任何引用指向对象时候,这个对象将成为垃圾.

2021-05-15 16:21:31 106

原创 面向对象三个基本特征:重载、继承、多态

1.重载:同个类中:方法同名,形参列表不一致a)方法名一样b)(参数类型或个数或顺序,至少有一个不同,参数名无要求)c)返回类型不要求2.可变参数a)例子:求和方法定义:方法调用:b)注意:1)普通参数与可变参数一起使用时候,可变参数只能放在最后面2)可变参数,一个方法只能有一个3作用域:a)全局变量可以不赋值,直接使用,因为有默认值;局部变量必须赋值后才能使用,因为没有默认值;b)局部变量和全局变量可以重名,遵守就近原则c)(全局变量)属性可以加修饰符(public,pro

2021-05-09 23:42:45 1539 1

原创 java之递归

1.分析一段递归代码,了解递归调用流程a)当主方法调用test(4)时候,将会进行“套娃”,每个调用方法都会在栈独立开辟一个空间b)当n =2的时候,不再“套娃”,所以先输出n=2c)test(2)调用结束,返回test(3),输出n=3,依次反复直到调用层test(4)执行完成2.递归常见的类型a):斐波那契数列b)猴子吃桃c)老鼠出迷宫(红色为障碍物1,通道为0)思路:ii)先设置障碍物和通道ii)核心方法代码分析第一步:当走到坐标为6,5表示找到出口第二步:就是还没找到出口,

2021-05-09 15:37:44 422 1

原创 java之类与对象

1.当使用现有的技术定义一个事物时候:a)现有技术:ii)单独定义多个变量(定义多个事物时候,变量定义过分)ii)使用数组解决(目标不明确)缺点:不利于数据管理,效率低2,类:(属性+行为)构成;而对象是类的具体的一个实例,类和对象的关系是一对多的关系3.对象内存布局以Cat cat = new Cat();为例子cat的引用放在栈中,对象在堆中开辟一个空间,因为name是String类型,是一个引用类型,会把相对应的数据放在常量池中,而age是基本数据类型直接放在堆中。除此之外,ca

2021-05-09 10:28:49 167

原创 Spring 框架jdbcTemplate和事务部分的知识

1.jdbcTemplate的概念a)spring框架对jdbc进行封装,能方便实现对数据库操作2.jdbcTemplate准备工作a)引入相关jar包b)spring配置文件配置数据库连接池c)创建JdbcTemplate对象,注入DataSourced)创建service,dao类,在dao注入JdbcTemplate对象开启组件扫描3JdbcTemplate进行操作数据库a)创建实体b)编写service和daoii)dao书写方式1ii)dao书写方式2c)

2021-05-05 21:11:10 230

原创 Spring 框架Aop部分的知识

1.AOP概念面向切面编程,利用aop可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分直接的偶合度降低;提高程序的可用性,同时提高了开发的效率。例如:登录功能需要再加上权限为例子,aop不需要修改源码2.AOP(底层原理)aop底层使用动态代理a)有两种情况第一种:有接口,使用JDK动态代理ii)动态代理Proxy调用newProxyInstance方法,方法有三个参数:类加载器;增强方法所在的类,这个类实现的接口,支持多个接口;实现这个接口InvocationHandler,

2021-05-05 17:50:47 221 1

原创 Spring框架IOC部分的知识

1.Spring 是轻量级的开源的javaEE框架(轻量:所谓轻量级就是spring框架在系统初始化的时候不用加载所有的服务,为系统节约了资源!而EJB框架就是重量级的,每次初始化都必须加载所有的服务!)作用:解决企业应用开发的复杂性主要两个核心:IOC 和 AOP1)IOC :控制反转,把创建对象的过程交给spring进行(以前是直接new)2)Aop:面向切面,不修改源代码进行功能的增强(以前扩展需要修改源代码)2.Spinng特点1)方便解耦,简化开发2)Aop编程支持3)方便

2021-05-05 00:55:34 145

原创 Spring知识补充

1.Spring主要两大部分IOC、AOP2.spingz的流程:3.实例化vs初始化实例化:在堆中开辟一块空间,属性都是默认值初始化:给属性完成赋值操作。(a.赋值操作,b.调用具体的初始化方法)4.反射的三种方式...

2021-05-04 21:06:08 99

原创 JVM的一些知识

1.什么是垃圾garbage?没有任何引用指向的对象就是垃圾2.判断哪些对象需要被回收?1)引用计数法:给对象添加一引用计数器,被引用一次计数器值就加一,当引用失效的时候,计数器值就减去1;当计数器为0时候,对象就是不可能再被使用的;简单高效,但是无法解决对象之间相互循环引用的问题。2)可达性分析算法通过一系列的称为“GC’ Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连的时候,则证明改对象是不可用的,此算法解决

2021-05-03 21:29:16 198

原创 多线程与高并发的一些知识总结

1.CAS(比较和交换compareAndSwap):概念(无锁)1)读取当前值E,计算结果V,比较E与新值N是否一样;2)一样的话就证明这个过程没有发生改变,直接修改值为V;3)否则,将值置为N(被其他线程改变后的值),重复1),2.64位虚拟机,8个字节(意思就是能被8整除,对齐部分就是为了补齐字节后被 8整除的)new 一个对象T{int m =8;} new T();会开辟一个空间主要四个部分:(markword 8个字节(压缩后4个字节,a,存在锁的信息;b.gc标记信息;c.

2021-05-03 01:00:04 180

原创 遇到的oracle和mysql存储过程的一些区分

1.创建上的不同1)mysql是将参数设置在文件外面,而oracle是在文件里面设置2)mysql和oracle一些类型的区别mysql: uuid(),now(),varcharoracle:sys_guid(),sysdate,varchar23)查询表的列名mysql查询的表:information_schema.COLUMNSoracle查询的表:USER_TAB_COLUMNS4)申明变量与赋值的语法mysql:DECLARE testCount int DEFAULT 0;

2021-03-04 11:24:25 823 2

原创 oracle数据库转为MySQL

以navicat为例子1.工具—数据传输,选择对应的数据库2.迁移过来可能遇到的问题1)存储过程是不能迁移的,需要重新一些遇到的相关语法区分可参考:2)出现了时间类型转换报错**原因:**oracle的date类型的长度被设置为7,而mysql最大支持精度为6**解决:**将字段的长度设置为63)...

2021-03-04 10:50:11 237 2

原创 oracle导出dmp遇到的一些情况

(1)11g导出空表时候导不出来原因:11g有个特点,当表无数据时候,不分配segment,为了节约空间(2)解决方法:a)查询一下所有空表select table_name from user_tables where NUM_ROWS=0;b)把查询出来的语句执行一遍(3)接着再使用plsql导出,将发现之前的空表也一块导出来了参考博客:https://www.cnblogs.com/jhabb/p/6552801.html...

2020-12-21 18:20:03 208

原创 访问项目路径时候,无缘无故在在前一个页面的基础上拼接路径

从a页面跳转到b页面时候,b页面对应的js相关代码(注释:这里待会会涉及上一个页面的链接: 假设上一个页面***a***的地址为:localhost:8080/test/save)b页面的相关jsvar url = ${relurl}; //后台传过来的链接relurl 后台获取的是类型ip // eg:localhost等 //previewUrl =localhost:8080/test/test.jsp是文件访问路径 var allPath = url +':8012/o

2020-11-01 11:30:24 1752 1

坦克大战 myself.zip

用到的技术 : 多线程,io

2021-06-20

city_info2(806).rar

介绍: 该项目是一个E购通电子商务平台。该项目录有登录模块,注册模块,商品列表模块,商品详情模块,加入购物车模块,购物车列表模块,确认订单模块,以及我的订单等模块。 前端技术:Thymeleaf,HTML,jQuery等 后端:Spring,SpringMVC,MyBatis等 数据库:MySQL 编辑器:eclipse 下载须知:该项目还存在着许多问题(已知的问题): 1)在项目购的商品中,到计时在谷歌浏览器没有问题,但在火狐却显示不出来 2)在商品加入购物车后,列表的商品信息的第一个图片可能会丢失 3)由于内容过多,有些不重要的标签是没有实现的

2020-05-19

ewebeditor_utf-8.rar

上网下载了一个精简版的在线编辑器,但它的编码都是gbk的,运行时出现了乱码,所以花了点时间改回utf-8

2020-03-08

空空如也

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

TA关注的人

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