自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我能在河边钓一整天的鱼

欢迎来到我的酒馆

  • 博客(107)
  • 资源 (1)
  • 收藏
  • 关注

原创 SSM整合第四步之功能开发

目录查询所有书籍增加书籍修改书籍删除书籍查询所有书籍1.新建controller@Controller@RequestMapping("/book")public class BookController { @Autowired @Qualifier("BookServiceImpl") private BookServ...

2020-04-30 14:55:25 176

原创 SSM整合第三步之SpringMVC

SpringMVC1.把当前项目变成web项目2.编辑web.xml文件<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/X...

2020-04-30 12:51:32 134

原创 SSM整合第二步之Spring

目录Spring整合MybatisSpring整合Service层Spring整合Mybatis新建spring-dao.xml配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" ...

2020-04-30 12:29:02 127

原创 SSM整合第一步之Mybatis

目录Mybatis层1.新建数据库2.新建项目,导入jar包3.新建目录结构4.新建数据库连接文件5.新建实体类6.新建dao层接口7.新建接口对应的mapper.xml文件8.新建mybatis核心配置文件9.新建service层接口10.新建Service实现类Mybatis层1.新建数据库DROP TABLE IF...

2020-04-30 11:47:47 181

原创 什么是JSON?如何使用jackSon和FastJson

什么是Json概念: JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。 采用完全独立于编程语言的文本格式来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。...

2020-04-30 09:03:58 279 2

原创 Spring项目开发中乱码问题如何解决?

目录辨两端过滤器过滤带配置文件的SSM框架使用过滤器SpringBoot项目使用过滤器辨两端首先你要确认乱码是客户端写数据的时候就乱掉了,还是传到服务器乱掉的。如果用户写的数据就是乱的,我们没法通过代码解决,你可以在浏览器上设置编码为UTF-8。如果用户输入的不是乱码,提交到服务端后就是乱码了,我们通过过滤器来解决。过滤器过滤...

2020-04-29 15:06:32 379

原创 什么是Restful?

目录概念什么是资源Restful风格的注解概念Restful就是一个资源定位及资源操作的风格。不是标准也不是协议。基于这个风格设计的软件有以下三点好处请求路径简介有层次 高效,易于实现缓存机制 安全,把最少的编码信息暴露给用户什么是资源互联网所有的事物都可以被抽象成资源。我们可以通过POST、DELETE、PUT、GET这些方...

2020-04-29 11:30:05 1274 1

原创 基于XML和注解实现第一个SpringMVC程序

目录前言项目搭建说说@Controller和@RequestMapping前言上篇讲到了SpringMVC的原理图,具体应用在web项目中该如何实现呢?本篇将会以项目为驱动,更深刻的理解下原理。笔者有一个疑惑,为什么这一步的springmvc不全用注解的形式来配置呢?spring的xml文件和web的xml文件为什么不能省略?自我感觉是到了Spring...

2020-04-29 10:15:30 176

原创 SpringMVC概念及原理

目录什么是MVC什么是SpringMVCSpringMVC的原理基本原理执行原理什么是MVCMVC是模型、视图、控制器的简写,是一种软件设计规范。最典型的MVC框架是JSP+Servlet+JavaBean什么是SpringMVCSpring MVC是Spring Framework的一部分,是基于Java实现MVC的...

2020-04-28 21:19:04 314

原创 Spring中的声明式事务

什么是声明式事务Spring在不同的事务管理API之上定义了一个抽象层,使得开发人员不必了解底层的事务管理API就可以使用Spring的事务管理机制。Spring支持编程式事务管理和声明式的事务管理。编程式事务管理 将事务管理代码嵌到业务方法中来控制事务的提交和回滚 缺点:必须在每个事务操作业务逻辑中包含额外的事务管理代码 声明式事务管理 一...

2020-04-27 17:02:00 161 1

原创 Spring整合Mybatis

目录搭建Mybatis项目整合方式一整合方式二搭建Mybatis项目这一步详情可以参考我之前的博客,由于这次我们目的是整合,所有导入的jar包要多一些https://blog.csdn.net/Delicious_Life/article/details/105627664 <dependencies> <dep...

2020-04-27 15:57:01 173

原创 Spring核心概念之AOP详解

目录什么是AOPAop在Spring中的作用基于SpringApi实现AOP基于自定义类来实现Aop基于注解实现Aop什么是AOPAOP(Aspect Oriented Programming)意为:面向切面编程。作用是在不影响原业务类的基础上实现了增强Aop在Spring中的作用需要了解的名词 横切关注点:即某一个...

2020-04-27 14:04:55 239

原创 代理模式

目录前言静态代理静态代理模式再理解动态代理深化理解动态代理前言写在前面:AOP的底层机制就是动态代理,而要想了解动态我们先要了解静态静态代理角色分析 抽象角色 : 一般使用接口或者抽象类来实现 真实角色 : 被代理的角色 代理角色 : 代理真实角色 ; 代理真实角色后 , 一般会做一些附属的操...

2020-04-27 10:31:48 208

原创 使用注解开发Spring

目录说明bean的实现衍生注解属性注入自动装配注解作用域(Scope)XML和注解开发方式比较使用纯注解开发spring说明在spring4之后,想要使用注解形式,必须得要引入aop的包在配置文件中需要引入context约束<?xml version="1.0" encoding="UTF-8"?><bea...

2020-04-26 22:54:43 166

原创 Spring中基于注解的DI

自动装配的概念自动装配是使用spring满足bean依赖的一种方法,spring会在应用上下文中为某个bean寻找其依赖的beanSpring中bean的三种装配机制在xml中显式配置 在java中显式配置 隐式的bean发现机制和自动装配Spring的自动装配需要从两个角度来实现1.组件扫描:spring会自动发现应用上下文中所创建的bean2.自动装配...

2020-04-26 15:22:14 209

原创 Bean的作用域和生命周期

目录什么是BeanBean的作用域作用域的修改什么是Bean在Spring中,那些组成应用程序的主体及由Spring IoC容器所管理的对象,被称之为bean。简单地讲,bean就是由IoC容器初始化、装配及管理的对象 .Bean的作用域几种作用域中,request、session作用域仅在基于web的应用中使用(不必关心你所采用...

2020-04-26 10:59:47 127

原创 Spring核心概念之DI详解

目录什么是DI构造器注入Set注入(重点)举例说明P命名和C命名注入P命名空间(属性)注入C命名空间(构造器)注入什么是DI 依赖注入(Dependency Injection,DI)。 依赖 : 指Bean对象的创建依赖于容器 . Bean对象的依赖资源 . 注入 : 指Bean对象所依赖的资源 , 由容器来设置和装配...

2020-04-26 10:43:20 937

原创 Spring中Bean的常用配置(基于XML)

目录别名Bean的配置import别名alias 设置别名 , 为bean设置别名 , 可以设置多个别名<!--设置别名:在获取Bean的时候可以使用别名获取--><alias name="userT" alias="userNew"/>Bean的配置id 是bean的标识符,要唯一,如果没有配置id,n...

2020-04-26 09:50:36 152

原创 Spring核心概念之IOC详解

IOC理论推导要说明IOC理论,首先让我们来回忆下Java开发时的项目结构。当今Java开发普遍采用前后端分离和MVC的思想,前端==》Controller==》Service==》ServiceImpl==》Dao==》Mapper.xml思考下:如果我要新建一个ServiceImpl实现类继承Service,我是不是在使用之前还得再让编写它的Dao层,mapper...

2020-04-26 09:22:28 282

原创 比较Synchronized锁和Lock锁

Lock锁是显式锁(手动开启和关闭)。Synchronized是隐式锁,出了作用域会自动释放。Lock只能有代码块锁,Synchronized有代码块锁和方法锁使用Lock锁,JVM将花费较少的时间来调度线程,性能更好。并具有更好的扩展性锁的优先使用顺序Lock>同步代码块>同步方法...

2020-04-25 16:26:46 138

原创 多线程的死锁问题

目录什么是死锁死锁产生的条件解决死锁问题什么是多线程中的死锁多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或多个线程都在等待对方释放资源,都停止执行的情形,某一个同步块同时拥有两个以上对象的锁时,就可能发生死锁问题举例,两个姑娘化妆,只有一个镜子和一个口红,两个人都需要。为了避免多线程的并发问题,我们上了锁,也就是同...

2020-04-25 16:18:01 144

原创 守护线程daemon

daemon线程分为用户线程和守护线程虚拟机必须确保用户线程执行完毕 虚拟机不用等待守护线程执行完毕默认情况下我们自己搞的线程包括main线程都是用户线程守护线程我们常常看不见,它用于后台记录操作日志、监考内存、垃圾回收(gc)我们可以手动把用户线程设置为守护线程Thread thread = new Thread(god);thread.set...

2020-04-25 15:03:33 160

原创 Mybatis的缓存机制

目录Mybatis中默认的缓存一级缓存二级缓存缓存原理Mybatis中默认的缓存 分别是一级缓存和二级缓存默认情况下,只有一级缓存开启(Sqlsession级别的缓存,也称本地缓存) 二级缓存需要手动开启和配置,它是基于namespace级别的缓存 为了提高扩展性,Mybatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级...

2020-04-23 11:00:25 134

原创 Mybatis之动态SQL

什么是动态SQL动态SQL就是指根据不同的条件生成不同的SQL语句常用关键字有4个,if、choose(when,otherwise)、trim(where,set)、foreachIF要求是执行一条查询语句,传了指定参数就根据指定条件查询,不传参数就查询所有我们用一个List接口 List<Blog> query...

2020-04-23 08:55:29 165

原创 Mabtis中多对一和一对多

目录多对一需求方法一:按照查询嵌套处理方法二:按照结果嵌套查询多对一需求查询所有学生信息以及对应的老师信息。要查询学生实体,但学生实体里面还包含一个老师实体方法一:按照查询嵌套处理这种方法的思路是2个SQL,一个查学生,一个查老师,然后拼接起来<mapper namespace="lt.dao.StudentMapper...

2020-04-22 17:20:15 263

原创 Mybatis基于注解的CRUD操作

目录使用注解实现CRUD操作@Param() 注解使用注解写CRUD操作的弊端比较#{} ${} 区别使用注解实现CRUD操作这种方式本质上由反射机制支持,底层实现了动态代理简单来说,只需两步。第一步在Dao接口中添加CRUD注解及SQL;第二步将接口注册绑定到核心配置文件中public interface UserMapper { ...

2020-04-22 08:55:33 208

原创 Mybatis底层执行原理

2020-04-22 08:18:51 182

原创 使用Mybatis进行分页操作

目录两种分页操作limit查询使用PageHelper插件两种分页操作一种是通过limit查询,另外一种是通过PageHelper插件limit查询 //分页 List<User> getUserByLimit(Map<String,Integer> map); <select i...

2020-04-21 19:47:08 236

原创 Mybatis的日志工厂(STDOUT_LOGGING/Log4j)

目录使用Setting指定Mybatis日志STDOUT_LOGGING标准日志输出Log4j使用Setting指定Mybatis日志之前我们讲解mybatis核心配置文件中,讲过<settings>标签,说它可以改变mybatis运行时的行为。默认情况下,mybatis是不打印日志的,但我们可以通过settings标签设置,各种各样的日志...

2020-04-21 16:41:25 2120 1

原创 Mybatis如何解决属性名和字段名不一致的问题

目录问题描述方法一:在SQL语句中起别名方法二:resultMap问题描述如果数据库中的字段和实体类中的属性不一致怎么弄呢?方法一:在SQL语句中起别名起别名看似很完美,但如果起别名的字段很多,sql语句就会非常臃肿select id,name,pwd from mybatis.user where id = #{id}...

2020-04-21 10:11:57 416

原创 Mybatis之核心配置文件解析

目录核心配置文件环境配置(environments)属性(Properties)类型别名(typeAliases)设置(Settings)映射器(mappers)SqlSession的原理与使用核心配置文件mybatis-config.xml ,下面只讲常用的环境配置(environments)Mybatis可...

2020-04-21 09:45:07 275

原创 ElasticSearch集群节点详解

目录master节点data节点客户端结点部落节点master节点配置文件中node.master属性为true(默认为true),就有资格被选为master节点。master节点用于控制整个集群的操作。比如创建或删除索引,管理其它非master节点等。data节点配置文件中node.data属性为true(默认为true),就有资格被设置成da...

2020-04-20 16:42:43 296

原创 Mybatis基于XML的CRUD操作

目录回顾MyBatis如何操作数据库namespaceMapper.xml属性值解析增删改操作万能的Map模糊查询回顾MyBatis如何操作数据库我们先来回顾一下MyBatis操作数据库的一条线。1.先在dao层写方法名public interface UserDao { List<User> getUserList(...

2020-04-20 13:47:42 389

原创 新建第一个MyBatis程序

目录建表新建父子工程父工程导入jar包新建配置文件连接数据库新建Mybatis工具类得到sqlsession新建实体类Dao层新建接口新建mapper.xml文件新建测试类报错解决:java.lang.ExceptionInInitializerError报错解决:ibatis.binding.MapperRegistry.getMapper...

2020-04-20 10:52:22 181

原创 什么是Mybatis

Mybatis的概念 MyBatis 是一款优秀的持久层框架 它支持定制化 SQL、存储过程以及高级映射。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO为数据库中的记录。 MyBatis 原是apache...

2020-04-20 08:39:42 383

原创 MySQL常用存储引擎介绍

目录MyISAM存储引擎InnoDB存储引擎MEMORY存储引擎MERGE存储引擎MyISAM存储引擎不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以 select,insert 为主的应用基本上可以用这个引擎来创建表。支持 3 种不同的存储格式,分别是:静态表;动态表;压缩表静态表:表中的字段都是非变长字段,这样每个记录都是固定...

2020-04-19 16:06:36 155

原创 MySQL语句的执行顺序详解

MySQL 的语句一共分为 11 步,如下图所标注的那样,最先执行的总是 FROM 操作,最后执行的是 LIMIT 操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指定某一个子句,那么将会跳过相应的步骤下面我们来具体分析一下查询处理的每一个阶段1. FO...

2020-04-19 15:54:57 601

原创 MySQL优化之修改MySQL最大连接数

目录连接请求的变量MySQL最大连接数设置back_loginteractive_timeout缓冲区变量配置InnoDB的变量连接请求的变量MySQL最大连接数设置登录mysql,先输入命令查询mysql默认最大连接数show variables like 'max_connections';自定义最大连接数set glo...

2020-04-19 15:25:05 328

原创 MySQL优化之自定义TCP连接数&打开文件数

设置TCP连接数设置打开文件数查看打开文件限制数ulimit -a修改文件在这里vi /etc/security/limits.conf修改Soft nofile和Hard nofile的数值即可修改完成之后重启,再次输入ulimit –a 查 看 目 录 的 各 个 限 制修改不成功可能是对此文件没有修改权限...

2020-04-19 15:08:59 244

原创 MySQL的数据分片与分库分表(垂直拆分&水平拆分)

目录垂直拆分什么是垂直拆分垂直拆分的原则水平拆分什么是水平拆分如何将数据平均分为 N 份垂直拆分什么是垂直拆分所谓的垂直拆分,就是把原来一个有很多列的表拆分成多个表,这解决了表的宽度问题。垂直拆分的原则1、 把不常用的字段表单独存放到一个表中。2、 把大字段独立存放到一个表中。3、 把经常一起使用的字段放到一起。...

2020-04-19 14:21:30 568

Ubuntu16.04安装文档

1. 创建虚拟机 2. 安装Ubuntu系统 设置光盘镜像: 点击“开启此虚拟机”。 输入主机名: 输入用户名: 输入密码:itcast123 确认密码: 选择不更新: 至此,安装完成。 3. 安装完成后的配置 3.1. 设置root用户的密码 设置root用户的密码为root 3.1.1设置静态IP https://blog.csdn.net/Delicious_Life/article/details/104603312 3.2. 设

2020-09-18

空空如也

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

TA关注的人

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