- 博客(38)
- 问答 (1)
- 收藏
- 关注
原创 Linux-安装&基础命令
Linux是一款开源免费的多用户操作系统,相对于windows而言,其运行的稳定性和安全性都有着绝对的优势,因此它几乎成为程序代码运行的最佳系统环境。Linux的核心代码一直由Linus Torvalds(林纳斯· 托瓦兹)开发维护,作者将源代码开源之后放到了社区,众多的linux爱好者加入了开发队伍,因为也就衍生了众多的linux版本。
2023-04-29 16:39:38
1351
1
原创 Spring框架
Spring框架学习一、SpringIOC1.Spring介绍2.控制反转(IOC)3.依赖注入(DI)4.管理第三方Bean5.整合Mybatis6.注解总结二、 SpringAOP1.日志功能2.AOP( 面向切面编程)3.事务管理三、SpringMVC1.初识MVC2.PostMan3.接受请求参数4.统一异常处理5.Restful6.Springmvc-注解详解四、SpringBoot1.SpringBoot2.SpringBoot-综合案例-增删改查3.
2023-04-28 11:28:33
119
原创 Spring-自定义启动器
在之前的Springboot自动装配原理当中我们发现他在读取配置文件时采用了模糊匹配的方式来进行配置文件查找,那是不是我们可以通过自定义配置文件来让spring读取到来实现我们将自己写的bean在springboot启动时自动装配呢?一定是可以的.首先我们要创建一个模块,模块名一定要根据Springboot自动装配识别的文件名来写,写错了会识别不出来.我们将其命名为aliyun-oss-spring-boot-autoconfigure。
2023-04-28 11:23:12
411
原创 Spring-自动装配原理
自动装配就是Springboot在启动时会将一些默认加载项以及配置文件当中的内容自动注入到IOC容器当中,在使用时直接通过注解调用即可.所谓的自动装配,就我个人理解是读取META-INF/spring.factories 和 METAINF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports.这两个配置文件当中配置进行类的自动装配,并通过@Conditional注解进行按需加载.
2023-04-28 10:54:53
288
原创 Spring-文件上传
文件上传,是指将本地图片、视频、音频等文件上传到服务器,供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。
2023-04-27 19:42:04
710
原创 Spring-登录校验
全称:JSON Web Token (https://jwt.io/),用于对应用程序上的用户进行身份标记头信息(Header):记录令牌类型和签名算法,例如:{“alg”: “HS256”,“typ”: “JWT”}有效载荷(Payload):记录一些自定义能够区分身份的非敏感信息,例如:{“id”: “1”,“username”: “tom”}签名(Signature):用于保证Token在传输过程中不被篡改,它是header、payload,加入指定算法计算得来的。
2023-04-26 20:20:50
572
原创 Spring-日志记录
/自定义注解 @Retention(RetentionPolicy . RUNTIME) //此注解保留到运行阶段 @Target(ElementType . METHOD) //此注解标注在方法上 public @interface LogAnno {//用于声明方法的作用 }ThreadLocal称为线程局部变量,可以为每个线程单独提供一份存储空间* 特点:线程之内,数据共享;线程之间,数据隔离* 方法:public void set(T value) 设置当前线程的线程局部变量的值。
2023-04-26 17:18:19
582
原创 Javaweb-MyBatis
Java 数据库连接(Java DataBase Connectivity)作用通过Java语言操作数据库本质是官方(sun公司)定义的一套操作所有关系型数据库的规则( 接口 ),而具体的实现类由各个数据库厂商来实现。java开发人员只需要面向JDBC接口编程就可以, 而不需要理会实现类中的方法。框架可以理解为半成品软件,框架做好以后,程序员只需要在它基础上继续进行后面的开发框架中一般都是所有程序员都需要开发的重复代码,框架将这些做好之后,程序员就可以把精力专注在核心业务上。
2023-04-24 21:52:47
431
原创 Javaweb-MyBatis查询&动态sql
当表中字段和类中属性完全没有关系时,可以通过@Results进行手动结果映射① 自定义结果映射//查询 @Results({
2023-04-24 21:51:05
1623
原创 Javase-内部类&枚举
内部类是类中的五大成分之一(成员变量、方法、构造器、内部类、代码块),如果一个类定义在另一个类的内部,这个类就是内部类。当一个类的内部,包含一个完整的事物,且这个事物没有必要单独设计时,就可以把这个事物设计成内部类。比如:汽车、的内部有发动机,发动机是包含在汽车内部的一个完整事物,可以把发动机设计成内部类。内部类有四种形式,分别是成员内部类、静态内部类、局部内部类、匿名内部类。
2023-04-24 08:40:21
562
原创 Java基础-方法
位置: 类中,方法外方法的调用格式: 方法名();public class 类名 {. . . public static 返回值类型 | void 方法名([ 形参列表 ]) {//方法体内容 return 值;//如果方法声明为"非void",这里要有renturn 值 } . . . }//定义一个方法,打印3次广告 public static void printAD() {i < 3;i ++) {//调用方法 printAD();printAD();
2023-04-23 18:00:19
44
原创 Spring-SpringBoot
SpringBoot对Spring的改善和优化,它基于约定优于配置的思想,提供了大量的默认配置和实现使用SpringBoot之后,程序员只需按照它规定的方式去进行程序代码的开发即可,而无需再去编写一堆复杂的配置起步依赖:SpringBoot以功能化的方式将需要的依赖进行组装,并且允许程序员以start的方式进行引入默认配置:SpringBoot实现了大量依赖框架的默认配置项,程序员无须再进行自己配置。
2023-04-23 16:10:11
673
原创 SpringBoot-综合案例
为了前后端更好的交互,我们应当对后端返回的数据格式做一定的约束,使得每次返回的数据格式基本一致。结果类就是我们规定好的一个规范类,以后后端返回的所有内容都要封装到这个类中返回。添加业务层的接口和实现,然后在类中注入mapper对象,并调用其方法。添加表示层实现类,然后在类中注入service对象,并调用其方法。修改查询方法,将查询到的结果列表封装到结果类中再返回。在resources/static中添加前端页面。中添加数据源和mybatis的配置。注解指定mapper接口所在的包。
2023-04-23 16:09:44
281
原创 Spring-Restful
REST是一种软件架构风格,其强调HTTP应当以资源为中心[在请求地址中尽量的不要出现动词REST规范了HTTP请求动作,使用四个词语分别表示对资源的CRUD操作: GET(获取)、POST(新建)、PUT(更新)、DELETE(删除)原来Restful保存/saveUser修改id=1删除id=1查询所有查询一个id=1。
2023-04-22 16:34:45
190
原创 Spring-统一异常处理
使用SpringMVC后,异常就不必在三层代码去处理了,而是直接抛给框架,框架会将所有的异常统一转交给我们自定义的统一异常处理类来处理。 @RestControllerAdvice 标注在类上,声明当前类是一个用于专门处理异常的类。 @ExceptionHandler 标注在方法上,声明当前方法可以处理哪些异常。SpringMVC支持下面两个注解来实现全局异常处理。
2023-04-22 16:32:42
174
原创 Spring-接受请求参数
来标识该路径参数,需要使用。此时要求JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用。SpringMVC也可以接收请求体中的json字符串为参数,并且自动封装为指定对象。1.当后端方法的形参名称跟请求参数不一致的时候,可以使用此注解做一个映射。需要保证前端传递的参数名称跟方法中的数组形参名称一致。请求参数名与形参集合名称相同且请求参数为多个,使用。需要保证前端传递的参数名称跟实体类的属性名称一致。需要保证前端传递的参数名称跟方法的形参名称一致。
2023-04-22 16:31:24
302
原创 Spring-初识MVC
前端控制器:由SpringMVC提供,主要负责接收参数和返回页面和数据处理器:由程序员编写,主要负责参数的处理和业务层调用。
2023-04-22 16:26:27
229
原创 Springmvc-注解详解
@Controller将当前对象放入容器Restful一种软件架构风格@RequestMapping为当前方法绑定一个访问路径@PostMapping仅仅接收post请求 获取@PutMapping更新@GetMapping新建@DeleteMapping删除接收请求参数@ResponseBody标注在类上表示类中方法都通用(将返回结果对象转换为json返回(如果给的结果无法转成json,就原样返回))@RequestBo
2023-04-22 16:18:38
98
原创 Javaweb-servlet&http
HTTP (Hyper Text Transfer Protocol) 超文本传输协议,是互联网上应用最为广泛的一种网络协议。作用:规范浏览器和服务器之间通信时传输数据的格式特点:基于TCP协议:面向连接,安全基于请求-响应模型的:一次请求对应一次响应HTTP协议是无状态的协议:每次请求-响应都是独立的,不相互记录数据,目的是为提高效率无论是请求还是响应都包含三部分:行、头、体。
2023-04-22 14:21:45
71
原创 Javaweb-Tomcat安装及配置
web服务器是一种软件程序,将开发好的前端或者后端代码,运行在这种程序中,就可以供人访问。Tomcat就是web服务器的一种,由Apache 软件基金会提供,开源、免费、易上手。
2023-04-22 10:47:32
523
原创 Java基础-数组
文章目录数组1.认识数组1.1 概念1.2 基本要素2.数组的定义和访问2.1 静态初始化数组2.2 动态初始化数组2.3 数组长度2.4 数组索引2.3 使用技巧数组1.认识数组1.1 概念在编程语言中,“数组”就是一个“容器”,可以存储多个“同类型数据”,并且便于访问。数组也是一个引用变量,它是保存一组相同类型的数据。1.2 基本要素数据类型数组名下标元素2.数组的定义和访问2.1 静态初始化数组int[] arr = {98,67,45};int[] arr = n
2023-04-20 17:36:42
33
原创 Java基础-流程控制
break和continue在循环中都要和if语句配合使用。练习:打印矩形(外层循环行数,内层循环控制列数)3、do while:循环次数不确定时适合使用。1、它可以用在switch中,也可以用在循环中。2、在循环中表示跳过当前循环,进入下一次循环。2、while:在循环次数不确定时适合使用。特点:外层循环执行一次,内层循环执行一轮。循环的使用场景:有规律、重复性的操作。1、for:在循环次数确定时适合使用。与for 循环一样,先判断再循环。for和while都行判断再执行。2、用在循环中是表示结束循环。
2023-04-20 17:18:04
36
原创 Spring-事务管理
作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;propagation称为事务传播行为,表示当一个事务方法被另一个事务方法调用时,应该如何进行事务控制。开启事务(一组操作开始前,开启事务):start transaction / begin;事务是一组操作的集合,它是一个不可分割的工作单位,这些操作 要么同时成功,要么同时失败。即使程序运行抛出了异常,转出账户的钱扣除了,但是转入账户的钱没加上,造成了数据的不一致。回滚事务(中间任何一个操作出现异常,回滚事务):rollback;
2023-04-20 16:33:46
71
原创 Spring-AOP
AOP( 面向切面编程 )是一种思想,它的目的就是在不修改源代码的基础上,对原有功能进行增强。编码时分开编写,运行时植入(weaving)切面有关的代码,这就叫做面向切面编程AOPSpringAOP是对AOP思想的一种实现,Spring底层同时支持jdk和cglib动态代理。如果有接口,就采用jdk动态代理如果没接口,就采用cglib的方式//自定义注解 public @interface LogAnno {
2023-04-20 16:30:33
254
原创 Spring-日志功能
当核心业务(保存)和增强业务(日志)同时出现时,我们可以在开发时对他们分别开发,运行时再组装在一起(使用动态代理的方式)。逻辑清晰:开发核心业务的时候,不必关注增强业务的代码代码复用性高:增强代码不用重复书写这就是一种 AOP ( 面向切面编程 ) 的思想,它的目的就是在不修改源代码的基础上,对原有功能进行增强。我的总结:开发阶段分别开发,运行阶段组装运行。
2023-04-20 16:24:39
700
原创 Javaweb-mysql多表查询-事务
项目开发中,因为业务之间相互关联,所以实体与实体之间存在联系,故而表跟表之间也存在着各种联系我们把这种能够表示表间关系的数据库称为关系型数据库(RDBMS)在数据库设计上,表关系分为三种:一对多、多对多、一对一。
2023-04-20 14:41:21
313
原创 Java基础-类型转换、运算符、键盘输入
/正确,强转,截掉高位,保留低位——高位截肢,有可能会丢失数据。double(默认): 8字节(最大)float :4字节(比long大) byte b = a;int (默认):4字节。boolean:1字节。byte : 1字节。short :2字节。
2023-04-20 08:23:35
91
原创 Java基础-Java入门
2.大驼峰:首字母大写,后续每个单词的首字母都大写。类名建议:大驼峰,例如:HelloWorld,WoDeLei。源码中蓝色字体的就是Java中的关键字,像:package,public,class,static,void。1.小驼峰:首字母小写,后续每个单词的首字母都大写。变量名,方法名:小驼峰, 它们都具有特定的含义,告诉Java我们要干什么。close all project 关闭所有项目。例如:int stuAge = 24;例如 int age = 18;rename 重命名。
2023-04-19 21:50:04
161
原创 Javase-动态代理
*** 用户业务接口// 登录功能 void login(String loginName , String passWord) throws Exception;// 删除用户 void deleteUsers() throws Exception;// 查询用户,返回数组的形式。
2023-04-19 21:08:14
73
原创 Spring-整合Mybatis
/查询所有 @Select("select * from dept") List < Dept > findAll();//新增 @Select("insert into dept values (null,#{name},#{createTime},#{updateTime})") void save(Dept dept);//主键查询 @Select("select * from dept where id=#{id}") Dept findById(Integer id);
2023-04-19 17:58:37
360
原创 Spring-注解总结
注解总结注解作用@Component @Controller @Service @Repository标注在自己开发的类上,用于将当前类对象放入Spring容器@Bean标注在配置类中的方法上,用于将方法的返回值对象放入Spring容器@Autowired标注在类中的属性上,用于从Spring容器中获取属性的值@Qualifier @Primary依赖注入时,根据一个接口查到了多个对象,使用这两个注解确定使用哪个对象@Scop
2023-04-19 16:16:44
71
原创 Spring-管理第三方Bean
当引入第三方类时,我们无法对类进行修改,就需要通过@Bean注解将第三方提供的类创建对象放入Spring容器.
2023-04-19 15:49:14
209
1
原创 Spring-依赖注入(DI)
Spring见到这个注解之后,就会自动在自己的容器中根据被标注属性的类型(DeptDao)进行查找被标注属性需要的值。跟@Autowired联合使用,标注在要赋值的属性上,代表在按照类型匹配的基础上,再按照指定名称匹配。@Autowired注解,默认是按照类型进行属性的赋值,如果存在多个相同类型的bean,就会报错。@Primary标注在实现类上,表示当一个接口有多个实现的类时,默认使用哪个作为主实现。1.找不到 NoSuchBeanDefinitionException。2.找到一个 自动完成注入。
2023-04-19 14:49:16
255
1
原创 Spring-控制反转(IOC)
在之前的学习中,已经学会了使用三层架构开发程序,也就是web—>service—>dao,但是在调用的时候层与层之间存在着代码耦合.
2023-04-19 11:47:16
1510
1
原创 初识Spring
Spring 是一款目前主流的 Java EE 轻量级、全栈型、开源框架 ,Rod Johnson 提出并创立,目的是用于简化开发,目前流行版本是5系列。事务 - 无需编写代码,即可实现数据库事务管理。AOP- 面向切面编程,轻松实现公共代码抽取。测试 - 与测试框架集成、web 单元测试。IOC-控制反转,轻松实现层间解耦。MVC - 开发web应用程序。
2023-04-19 09:34:22
117
1
空空如也
tomcat警告实例创建时间
2023-04-14
将数组中的数字按行列式输出
2022-08-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人