- 博客(49)
- 收藏
- 关注
原创 前台报错Post400:Bad request ,The request sent by the client was syntactically incorrect.
今天在工作中遇到报400的错误,前台报错Post400:Bad request ,The request sent by the client was syntactically incorrect., 后台没反应后来经过排查,才得知:前后台参数是一致的,但有个参数值=null,直接报400心得:可以给后台传字符串null,但不能传null空值...
2020-12-17 12:00:39
363
原创 JavaScript ES6学习记录(一)
1.ES6类与对象1.1 创建类class Star{ //构造函数 constructor(name, age, song) { this.name = name; this.age = age; this.song = song; } //类方法 sing(){ console.log(this.name + '唱过'+ this.song) }} var ldh = new Star("刘德华", 55, "十八岁
2020-11-30 10:24:05
227
原创 Java多线程记录
目录多线程的创建方式一:继承java.lang.thread,重写run方法,创建子类实例,调用子类start方法认识多线程中的 start() 和 run()方式二:实现Runnable接口,创建thread实例,将Runnable接口传入构造函数方式三:实现Callable接口(JDK8新特性)线程的生命周期设置/获取线程名字获取当前线程对象sleep静态方法sleep面试题interruput终断休眠stop终止线程线程的调度1.1常见的线程调度
2020-11-02 18:17:39
647
原创 MySQL学习记录(三)
目录1、约束1.1、唯一性约束(unique)1.2、主键约束1.3、外键约束2、存储引擎?(整个内容属于了解内容) 2.1、完整的建表语句 2.2、什么是存储引擎呢?2.3、查看当前mysql支持的存储引擎? 2.4、常见的存储引擎?3、事务(Transaction) 3.1、什么是事务?3.2、和事务相关的语句只有:DML语句。(insert delete update) 3.3、假设所有的业务都能使用...
2020-10-27 09:31:32
251
原创 MySQL学习记录(二)
1、关于查询结果集的去重?mysql> select distinct job from emp; // distinct关键字去除重复记录。+-----------+| job |+-----------+| CLERK || SALESMAN || MANAGER || ANALYST || PRESIDENT |+-----------+ mysql> select ename,distinct job from emp;以...
2020-10-27 09:23:43
134
原创 MySQL学习记录(一)
SQL语句分类:DQL(数据查询语言):查询语句,凡是select语句都是DQL DML(数据操作语言):insert,delete,update对表中的数据增删改 DDL(数据定义语言):create,drop,alter对表结构的增删改 TCL(事务控制语言):commit提交事务,rollback回滚事务 DCL(数据控制语言):grant授权,revoke撤销权限等导入数据 第一步:登录mysql数据库管理系统 dos命令窗口: my...
2020-10-25 09:52:01
128
原创 SpringBoot Controller接收参数的几种常用方式
第一类:请求路径参数1、无注解,形参名==前台参数名 @RequestMapping("login") public boolean login(String name, String password) { Map<String, String> map = new HashMap<>(); map.put("name",name); map.put("password",password); .
2020-10-23 16:15:18
2300
原创 SpringBoot跨域问题解决的两种后端方法
何为跨域:只要协议、域名、端口有任何一个不同,都被当作是不同的域。跨域问题导致403: 表示资源不可用。服务器理解客户的请求,但拒绝处理它,通常由于服务器上文件或目录的权限设置导致的WEB访问错误。跨域资源共享(CORS)CORS(Cross-Origin Resource Sharing)跨域资源共享,定义了必须在访问跨域资源时,浏览器与服务器应该如何沟通。CORS背后的基本思想就是使用自定义的HTTP头部让浏览器与服务器进行沟通,从而决定请求或响应是应该成功还是失败。服务器端对于CORS
2020-10-23 12:50:52
470
转载 mybatis中传入多个参数的4个解决方法
1. 利用参数出现的顺序Parameter ‘id’ not found. Available parameters are [arg1, arg0, param1, param2],这句话的意思就是id找不到,可用的参数是[arg1, arg0, param1, param2]。所以可使用参数出现的顺序号码引用参数,第一个参数用arg0或param1表示,第二个参数用arg1或param2表示,以此类推(arg从0开始计数,param从1开始计数)。修改xml为如下方式:<select
2020-10-23 10:28:15
645
转载 SpringBoot 配置静态资源映射
SpringBoot 配置静态资源映射(嵌入式servlet容器)先决知识request.getSession().getServletContext().getRealPath("/"),这个很重要,将其称为 docBase,即 “文档基目录” 在单模块项目中,如果不存在 src/main/webapp 目录,则 docBase 被设置为C盘下临时的随机目录,例如 C:\Users\Administrator\AppData\Local\Temp\tomcat-docbase.287224657
2020-10-09 15:13:39
530
转载 WebJars简介 —— 前端资源的jar包形式
WebJars是一个很神奇的东西,可以让大家以jar包的形式来使用前端的各种框架、组件。什么是WebJars什么是WebJars?WebJars是将客户端(浏览器)资源(JavaScript,Css等)打成jar包文件,以对资源进行统一依赖管理。WebJars的jar包部署在Maven中央仓库上。为什么使用我们在开发Java web项目的时候会使用像Maven,Gradle等构建工具以实现对jar包版本依赖管理,以及项目的自动化管理,但是对于JavaScript,Css等前端资源包,我们只能
2020-10-09 12:44:41
243
转载 SpringBoot日志实现
SpringBoot日志实现SpringBoot日志默认实现SpringBoot默认的日志实现是使用slf4j+logback,这种实现类似于JDBC + 数据库驱动(统一接口+实现类)。slf4j叫做日志门面,是一个统一的日志接口层,各种具体的日志实现都可以通过slf4j来实现,比如logback就是一个具体的日志门面的实现。常见日志框架市面上常见的日志框架有:JUL , JCL , Jboss-logging , logback , log4j , log4j2 , slf4j等
2020-10-09 12:09:53
428
原创 SpringBoot多环境配置profiles
1.什么是Profiles?Profile 可以让 Spring 对不同的环境提供不同配置的功能,可以通过激活、指定参数等方式快速切换环境2.SpringBoot的主配置文件application.yml的存放路径共有4种file:config/file:/classpath:config/classpath:/优先级从高到底2 多Profile文件形式在进行实际开发的时候,分为本地环境、测试环境和生产环境,这就需要配置多个配置文件,如端口号等等,我们当然可以每更换一个环境就改一次配
2020-10-07 21:04:08
544
原创 SpringBoot配置文件
SpringBoot使用一个全局的配置文件,配置文件名是固定的application.propertiesapplication.yml配置文件的作用:修改springboot自动配置的默认值
2020-10-07 12:22:44
157
原创 SpringBoot 原理初探
自动配置:pom.xmlspring-boot-dependences核心依赖在父工程中我们在写或者引入springboot依赖的时候,不需要指定版本,就因为有这些版本仓库<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>
2020-10-07 10:30:21
157
原创 @RestController和@Controller区别
@RestController = @ResponseBody + @Controller① 是否可以返回页面答:@RestController无法返回指定页面,而@Controller可以。 解析:对于Controller, 如果只是使用@RestController注解,则其方法无法返回指定页面,此时配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是 return 里的内容。 如果需要返回到指定页面,则需要用 @Controller配合视图解析器I
2020-10-04 13:38:27
379
原创 Bean named ‘xxx‘ is expected to be of type ‘xxxx‘ but was actually of type ‘com.sun..proxy.$Proxy19‘
在SSM项目中的Service层遇到了这个报错org.springframework.beans.factory.BeanNotOfRequiredTypeException: Beannamed ‘employeeServiceImpl’ is expected to be of type‘com.mlj.service.EmployeeServiceImpl’ but was actually of type‘com.sun.proxy.$Proxy19’名为employeeService
2020-09-29 16:11:36
2727
1
原创 MySQL数据表中有自增长主键时如何插入数据
当列为自增主键时,有两种方式插入数据1.插入自增主键,不能与已存在的主键重复2.不插入自增主键,Mysql会自动维护MySQL自增主键维护:空表默认从1开始默认从最大值开始自增自增主键设置: primary key AUTO_increment...
2020-09-29 12:47:30
649
转载 Spring 事物 属性expression=“execution(*service..*.*(..))“
1、execution(): 表达式主体 (必须加上execution)。2、第一个*号:表示返回值类型,*号表示所有的类型。3、包名:表示需要拦截的包名,后面的两个句点表示当前包和当前包的所有子包,cn.smd.service.impl包、子孙包下所有类的方法。4、第二个*号:表示类名,*号表示所有的类。5、*(…):最后这个星号表示方法名,*号表示所有的方法,后面括弧里面表示方法的参数,两个句点表示任何参数。书写的注意事项:execution(* cn.smd.service.impl..(…
2020-09-29 10:00:17
923
原创 Mybatis-Spring整合
1.引入依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version></dependency> <!-- https://mvnrepository.com/artifact/org.mybatis/mybat
2020-09-24 15:37:07
142
转载 Mybatis-cache缓存
缓存Mybatis缓存分为一级缓存和二级缓存缓存是一般的ORM 框架都会提供的功能,目的就是提升查询的效率和减少数据库的压力。跟Hibernate 一样,MyBatis 也有一级缓存和二级缓存,并且预留了集成第三方缓存的接口。缓存体系结构:MyBatis 跟缓存相关的类都在cache 包里面,其中有一个Cache 接口,只有一个默认的实现类 PerpetualCache,它是用HashMap 实现的。我们可以通过 以下类找到这个缓存的庐山真面目DefaultSqlSession->
2020-09-23 21:03:04
331
原创 Mybatis-复杂查询多对一&&一对多
生活中有许多常见的多对一和一对多的场景:老师与学生student: id,name,tidteacher: id,name多对一:查询出所有的学生信息以及学生的老师SQL语句:SELECT s.id,s.`name`,t.`name`from student s,teacher twhere s.tid=t.id;Bean:public class Student { private int id; private String name; private Teacher te
2020-09-23 13:15:06
170
原创 MySQL外键约束
为mysql数据表建立主外键需要注意以下几点:需要建立主外键关系的两个表的存储引擎必须是InnoDB。外键列和参照列必须具有相似的数据类型,即可以隐式转换的数据类型。外键列和参照列必须创建索引,如果外键列不存在索引,mysql将自动创建索引。CREATE TABLE student( id int(20) not null PRIMARY key, `name` VARCHAR(30) NULL, tid int(20) DEFAULT null, CONSTRAINT fk_tid f
2020-09-22 19:27:04
114
原创 Mybatis-解决字段不一致问题引出结果集映射ResultMap
数据库字段名实体类属性名查询结果:[id=1, password=null, name=米兰]可见当返回实体类和数据库字段不一致时,会找不到对应的赋值原因:<select id="getUsers" resultType="COM.MLJ.MYBATIS_STUDY.User"> select * from user1; //select id,name,pwd from user1; //查出来的pwd与password不对应 </select&
2020-09-22 17:16:12
2002
原创 Mybatis-XML配置
XML 映射配置文件MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息。properties这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递。例如:<properties resource="org/mybatis/example/config.properties"> <property name="username" va
2020-09-22 10:15:16
164
原创 Mybatis入门案例
1.安装要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于类路径(classpath)中即可。如果使用 Maven 来构建项目,则需将下面的依赖代码置于 pom.xml 文件中:<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>x.x.x</version>
2020-09-20 17:16:35
224
原创 Spring注解开发
一。使用注解开发XML配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:sc
2020-09-19 19:46:49
95
原创 Bean的自动装配
Spring自动装配是满足Bean依赖的一种快捷方式Spring会通过上下文,来自动为Bean的属性自动装配在Spring中有三种装配方式在XML中的配置在Java中的配置隐式的自动装配(重要)byName的意思是将上下文中与该bean的属性名相同的其他bean装配起来。弊端:要求id与属性名一致<bean id="student" class="di.Student" autowire="byName">2.byType是将上下文中与该属性有相同类型的bean装.
2020-09-17 21:17:06
157
原创 Bean的作用域Scope
在Spring中,bean作用域用于确定哪种类型的bean实例应该从Spring容器中返回给调用者。目前Spring Bean的作用域或者说范围主要有五种。作用域描述singleton在spring IoC容器仅存在一个Bean实例,Bean以单例方式存在,bean作用域范围的默认值。prototype每次从容器中调用Bean时,都返回一个新的实例,即每次调用getBean()时,相当于执行newXxxBean()。request每次HTTP请求都会创建一个新的Be
2020-09-17 20:34:48
177
原创 Spring自动注入AutoWire, 加载配置文件,scope属性
一:自动注入1.在spring配置文件中对象名和ref=“id” id 名相同使用自动注入,不需要配置2.两种配置方法2.1 在标签中通过autowire="“配置,只对这个bean有效2.2 在标签中通过default-autowire=”“配置,表示当前文件中所有都是全局配置内容3. autowire=”“可取值3.1 default: 默认值,根据全局default-aut...
2019-12-09 20:53:03
630
原创 使用注解配置AOP
一.实现步骤(基于AspectJ)在spring配置文件中勾选context 命名空间xmlns:context=“http://www.springframework.org/schema/context”spring不会自动寻找注解,必须告诉spring哪些包下可能存在注解<context:component-scan base-package="com.mlj.spring...
2019-11-30 16:44:44
143
原创 Spring AOP面向切面编程
一.常用概念:原有功能: 切点 pointcut前置通知: 在切点之前执行的功能, before advice后置通知: 在切点之后执行的功能, after advice异常通知: 如果切点执行过程中出现异常,则触发异常通知 throws advice切面: 所有功能的总称织入:把切面嵌入到原有功能的过程叫织入二.spring提供了两种AOP实现方式2.1 Schema-bas...
2019-11-30 15:48:40
137
原创 Spring DI(IOC)
DI: 依赖注入IOC:控制反转DI是什么:*DI和IOC是同一个概念*当一个类A需要依赖另一个类B对象时,就把对象B给A的过程就叫依赖注入<bean id="peo" class="com.mlj.springstudy.People"> <!-- name:参数名称 value:普通类型或String等 --> <property nam...
2019-11-27 21:57:08
87
原创 Spring创建对象的三种方式
通过构造方法创建1.1 无参构造方法:默认情况1.2 有参构造方法:需要明确配置<!-- id: 获取对象的标识 class: 对象的全类名 --> <bean id="peo" class="com.mlj.springstudy.People"> <!-- index: 参数下标 name : 参数名称 ...
2019-11-27 21:22:24
228
原创 Filter 过滤器
过滤器如何编写1.写一个类实现Filter接口2.在web.xml中配置1.Filter 接口public class filter implements Filter{ /** * 销毁前执行, 服务器关闭时销毁 */ @Override public void destroy() { } /** * 每次过滤时都会执行 */ @Overrid...
2019-11-24 14:17:18
71
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人