自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一种新的编程语言

前几天美国大选票数对比的事情大家都知道了。吃瓜群众围观的不亦乐乎,大选过程中特朗普更是持续刷屏,在这里作为程序员吃瓜也要吃的有技术含量,因此让我们换一角度来吃瓜。以程序员的角度来考虑,假如特朗普是一门编程语言会是什么样的呢?假如特没普是一门编程语言首先如果特朗普是一门编程语言的话,那么必须要有一个响亮的名字,应该用一个什么样的名字比较好呢?让我们来找找灵感,但灵感是可遇不可求的,等等,这是什么?说曹操曹操就到,曹操长得就是这样的:在这样一座金灿灿的建筑下名字是不是就呼之欲出了?没错,这门注定

2020-11-19 16:22:11 1369 5

原创 Spring Framework框架

概述Spring Framework为现代基于Java的企业应用程序提供了全面的编程和配置模型 - 在任何类型的部署平台上。Spring的一个关键要素是应用程序级别的基础架构支持:Spring专注于企业应用程序的“管道”,以便团队可以专注于应用程序级业务逻辑,而无需与特定部署环境建立不必要的联系。支持政策和迁移有关最低要求的信息,有关从早期版本升级和支持策略的指导,请查看Spring Fr...

2020-03-15 20:32:52 1228

原创 Exception Servlet.init() for servlet [mvc] threw exception

Root Causeorg.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [springmvc.xml]; nested exception is java.io.FileNotFoundException: class path resource [springmvc.xml] cannot be opened b

2020-06-06 17:30:58 221

原创 Spring和Web集成方案总结

1,Spring和Web集成方案一Servlet中的doGet方法中,初始化Spring容器存在的问题:处理一次请求就会初始化一次spring容器2,Spring和Web集成方案二加入了一个监听器,ServletContextLIstener监听器,随着项目的启动而启动,随着项目的销毁而销毁将spring容器初始化放到ServletContextLIstener监听器中,需要将spri...

2020-03-31 20:37:09 147

原创 回顾死锁

死锁产生的原因及四个必要条件产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持...

2020-03-30 07:58:42 101

原创 springmvc流程

request---->DispatcherServlet–>HandlerMappind–>Controller–>ModelAndView–>ViewResolver–>Response入门案例:<!-- 开启注解扫描 --><context:component-scan base-package="cn.itcast"/>&...

2020-03-29 19:51:13 75

原创 函数式接口

只有一个抽象方法的接口就叫函数式接口@FunctionalInterface来标注函数式接口基本使用1,函数式接口作为方法的参数,且函数式接口中的方法没有参数2,函数式接口作为方法的参数,且函数式接口的方法中有参数3,函数式接口作为方法的返回值,且函数式接口中的方法没有参数4,函数式接口作为方法的返回值,且函数式接口的方法中有参数//非函数式new 接口名(){修饰符 返回值类...

2020-03-28 19:54:16 76

原创 Lombok

Lombok介绍:Lombok是一种java使用技术,可用来帮助开发人员消除java中的冗长的代码,尤其是对于简单的 Java对象(POJO),它通过注解实现这一目的.Lombok常用注解Lombok安装在idea中安装Lombok插件,并重启idea导入Lombok的jar包:Lombok的优缺点优点:能通过注解的形式自动生成构造器、getter/setter、equals...

2020-03-27 19:48:05 114

原创 Controller方法返回值之ModelAndView

ModelAndView对象是Spring提供的一个对象可以用来调整具体的JSP视图,也可以存储数据@RequestMapping("/selectUserList") public ModelAndView selectUserList() throws Exception { ModelAndView modelAndView = new ModelAndView(); List...

2020-03-26 19:32:21 1502

原创 SpringMVC常见面试题

1、什么是Spring MVC ?简单介绍下你对springMVC的理解?Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。2、SpringMVC 工作流程?(1)用户发送请求至前端控...

2020-03-25 21:46:09 105

原创 MyBatis和Spring整合之mapper映射方式

A.步骤自定义接口IUserDao定义IUserDao.xml将IUserDao接口和IUserDao.xml放到IUserDao接口的包下将MapperFactoryBean注入到spring容器,设置参数mapperInterface,sqlSessionFactory, 会将映射文件加载到spring中将sqlSessinFactory注入到spring容器.设置参数config...

2020-03-24 23:11:18 400

原创 MyBatis注解开发

这几年来注解开发越来越流行,MyBatis也可以使用注解开发方式,这样就可以减少编写 Mapper映射文件了。MyBatis常用注解@Insert:实现新增@Update:实现更新@Delete:实现删除@Select:实现查询@Result:实现结果集封装@Results:可以与@Result 一起使用,封装多个结果集@One:实现一对一结果集封装@Many:实现一对多结果集封...

2020-03-24 17:29:33 73

原创 mybatis中的一对一延迟加载实现

使用前提需要在sqlMapConfig.xml配置文件中开启延迟加载<settings> <setting name="lazyLoadingEnabled" value="true"/> </settings>需求:通过订单延迟加载相应的用户信息POJO类public class Customer { private Long cid;...

2020-03-23 23:01:56 81

转载 Mybatis的一级缓存和二级缓存的理解和区别

什么是缓存?存储在内存中的临时数据为什么使用缓存?减少和数据库的交互次数,提高执行效率一级缓存基于sqlSession默认开启,在操作数据库时需要构造SqlSession对象,在对象中有一个HashMap用于存储缓存数据。不同的SqlSession之间的缓存数据区域是互相不影响的。一级缓存的作用域是SqlSession范围的,当在同一个sqlSession中执行两次相同的sql语句时,第...

2020-03-23 19:15:09 280

原创 多表查询练习

1.多表联系练习1.查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。2.列出所有员工的姓名及其直接上级的姓名。3.列出受雇日期早于直接上级的所有员工的编号、姓名、部门名称。4.列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门。5.列出最低薪金大于1500的各种工作及从事此工作的员工人数。6.列出在销售部工作的员工的姓名,假定不知道销售部的部门编...

2020-03-21 23:03:13 638

原创 关联查询之一对一查询

A.环境搭建CREATE TABLE orders(orderId BIGINT PRIMARY KEY AUTO_INCREMENT,customerNo BIGINT,state VARCHAR(40));CREATE TABLE customer(customerId BIGINT PRIMARY KEY AUTO_INCREMENT,nameVARCHAR(60),address...

2020-03-20 23:06:00 272

原创 MyBatis的配置文件解释

properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager(事务管理器)dataSource(数据源)databaseIdProvider(数据库厂...

2020-03-20 20:31:15 165

原创 Mybatis连接池

在Mybatis中也有连接池技术,但是它采用的是自己的连接池技术。在 Mybatis 的 SqlMapConfig.xml配置文件中,通过 <dataSourcetype=“pooled”> 来实现Mybatis 中连接池的配置。Mybatis连接池分类:可以看出 Mybatis 将它自己的数据源分为三类:UNPOOLED 不使用连接池的数据源POOLED 使用传统的java...

2020-03-19 22:15:55 157

原创 MyBatis基本概念

来,先入个门1.概述mybatis是一个优秀的基于 java 的持久层框架,它内部封装了 jdbc,使开发者只需要关注 sql 语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement 等繁杂的过程。mybatis通过xml配置或注解的方式将要执行的各种 statement 配置起来,并通过java 对象 和 statement 中sql 的动态参数进行映射生成最终执行的 ...

2020-03-18 23:11:08 130

原创 mapper映射文件说明

2020-03-18 18:37:19 139

原创 声明式事务概念及入门

1.思路分析:将编程式事务中的通用代码抽取出来,制作成独立的around通知使用AOP工作原理,将事 务管理的代码动态织入到原始方法中。由于该功能使用量较大,Spring已经将该通知制作完毕。2.开发步骤:a.开启事务tx命名空间b.配置事务通知c.将事务通知配置到切入点<!‐‐配置事务通知 id:事务通知唯一标识 transaction‐manager:事务管理类 ‐‐&gt...

2020-03-18 15:42:32 67

原创 Spring的JdbcTemplate模板类

A.Spring提供有DAO支持模板类,功能类似于Apache 的DbUtils.B.常用APIpublic int update(String sql, Object... args) 执行DML语句.增、删、改语句 public <T> T query(String sql, ResultSetExtractor<T> rse, Object... args) ...

2020-03-17 23:01:12 202

原创 springAOP常见面试题解析

1.什么是 aop?aop是面向切面编程,不同于java原始的oop是面向对象编程,使用aop可以实现不需要修改原功能代码,只需要修改一下配置,即可实现功能的扩展aop采用的是横向抽取机制,取代了传统的纵向继承体系,减少了重复性代码运行期间通过代理方式向目标类植入增强代码经典的应用场景有事务的管理,安全检查,缓存,性能监控等等2.aop的实现原理?aop底层是采用动态代理机制实现的:接...

2020-03-16 20:23:13 1044

原创 IOC(控制反转)和DI(依赖注入)

1.IOC(控制反转)IOC(Inversion of Control)–即控制反转,这是spring的核心,是面向对象编程中的一种设计原则,可以用来降低计算机的耦合程度。其中最常见的方式有依赖注入(Dependency Injection,简称DI),还有一种方式叫做依赖查找(Dependency Lookup)。通过控制反转,在需要对象实体的时候,通过容器将依赖注入到对象中。IOC,对于s...

2020-03-14 19:49:21 140

原创 动态代理模式解决装饰者设计模式的缺陷

先来看看代理的引入:代理就是在程序的执行过程中,通过一个类Proxy和接口invacationHandler(处理程序)实现动态代理先创建一个接口里面有我们需要的方法(就是我们需要代理的对象):package com.qf.InvocationHandler;/** * 来实现一个增删改查的代理 * */public interface UserDao { public ab...

2020-03-13 20:21:20 82

原创 Spring创建对象

三种:构造器创建对象<bean id="" class="">静态工厂创建对象<bean id="" factory-method="工厂方法" class="工厂类的全类名"></bean>动态工厂创建对象<bean id="" factory-method="工厂方法" factory-bean="工厂对象"></bean&...

2020-03-12 20:23:50 68

原创 #千峰逆战班,拼搏永向前#

耦合问题:使用 spring 的 IOC 解决程序耦合控制反转IoC(Inversion of Control)控制:控制的双方是什么?谁控制谁?主控方:Spring被控方:应用程序所使用的资源(原始)应用程序直接控制需要的外部资源(Spring)Spring控制所需要的外部资源反转:什么是反转?反转什么?正向:应用程序直接调用资源反向:应用程序依赖Spring为其提供资源反...

2020-03-12 20:20:24 67

原创 周总结

努力到无能为力,拼搏到感动自己!本周重点是cookie+session+filter这三个cookie方面:cookie的工作原理:自动发送原则,cookie是根据url来匹配路径,自动发送cookie的简单用法,怎么存?response中add进去,怎么取?requset去取,有效时间:默认值-1session方面:session的工作原理:1.当浏览器第一发送请求给服务器时,那么...

2020-03-12 20:19:50 71

原创 #千峰逆战班,拼搏永向前#

总结一波:1,JDBC引入解耦方式工厂模式将编译器依赖变为运行时依赖配置文件2,传统三层结构面临的问题new 关键字的使用3,自定义Spring容器将对象创建交给Spring容器进行管理Spring容器:反射+xml解析+工厂模式①,需要将要创建的对象的信息保存到xml配置文件中配置一个bean标签就对应有一个对象②,在自定义Spring容器初始化的时候,将xml文件解析...

2020-03-11 19:58:31 98

原创 #千峰逆战班,拼搏永向前#

懒汉式单例和饿汉式单例:1、时间和空间比较上面两种写法:懒汉式是典型的时间换空间,也就是每次获取实例都会进行判断,看是否需要创建实例,浪费判断的时间。当然,如果一直没有人使用的话,那就不会创建实例,则节约内存空间。饿汉式是典型的空间换时间,当类装载的时候就会创建类实例,不管你用不用,先创建出来,然后每次调用的时候,就不需要再判断了,节省了运行时间。2、线程安全(1)从线程安全性上讲,不加...

2020-03-10 20:13:08 63

原创 #千峰逆战班,拼搏永向前#

Easyui DataGrid数据网格 :DataGrid以表格形式展示数据,并提供了丰富的选择、排序、分组和编辑数据的功能支持常用属性①DataGrid属性:②列属性:formatter属性示例:columns:[[ { field:'operate', title:'操作', align: 'center', width : 100, f...

2020-03-09 21:33:38 82

原创 #千峰逆战班,拼搏永向前#

用easyUI写前端:1:比如在项目中用到了datagrid。如果界面比较简单,只有一个datagrid只需要把它的属性fit 设置为true就能实现自动适应窗体。如果在datagrid上方还有其他div的话,div 就会把datagrid挤压到窗体的下方。如果datagrid有分页控件,分页控件就看不到了。这个时候就应该用 easyui-layout来分隔窗体来使具体的内容放在easyui-l...

2020-03-07 21:37:58 52

原创 #千峰逆战班,拼搏永向前#

bootstrap和easyUI的区别首先我们来分别看看bootstrap和easyUI实现的页面效果bootstrap: easyUI:easyUI整体上看中规中矩,方方正正。在视觉上,谈不上美,也说不上丑。给人一种走进古时衙门的感觉,堂堂正正,大气得体。bootstrap实现效果图。整体上朴素简约,似水润肤。两者的区别easyUI属于jQuery-UI的一个前端UI组件库(比j...

2020-03-06 21:33:51 532

原创 #千锋逆战班,拼搏永向前#

实用图表工具ECharts介绍:ECharts 是一款由百度前端技术部开发的,基于 Javascript 的数据可视化图表库,提供直 观,生动,可交互,可个性化定制的数据可视化图表。环境:https://www.echartsjs.com/index.html案例:完成一个散点图1,导入echarts.js文件2,为 ECharts 准备一个具备高宽的DOM容器3,初始化一个echar...

2020-03-05 22:08:46 54

#千锋逆战班,拼搏永向前#

Ajax入门案例之get、post方式get步骤:a.创建异步的XMLHttpRequest对象。b.设置监听:监听对象的状态的变化,触发一个函数。c.打开链接。d.发送数据。代码:<head> <title>ajax的get请求</title> <script> function createX...

2020-03-04 23:07:24 63

原创 #千锋逆战班,拼搏永向前#

jQuery知识点:JQuery是一个JS的类库文件什么是JS类库文件?别人写好的JS代码,我们拿过来调用的这些JS代码 被称作JS库文件。Jquery的作用在JS的基础部分以及JS操作DOM和JS实现Ajax等过程中.暴漏了不少问题,例如 复杂的DOM操作 和烦冗的ajax操作等.为了简化JS的开发,各种JS库诞生了.各种JS库都封装了很多预定义的对象和 实用函数,能够帮助使用者建立非...

2020-03-03 23:10:08 81

原创 #千锋逆战班,拼搏永向前#

在千锋“逆战”学习第十七天,王金涛努力到无能为力,拼搏到感动自己!文件上传三要素:①表单提交方式为post②表单中需要文件上传项③enctype=multipart/form-data代码实现三部走:1,导入jar包:2.文件上传项3.编写Servlet创建磁盘文件项工厂对象DiskFileItemFactory创建核心解析类ServletFileUpload解析请求,获...

2020-03-02 23:01:30 90

原创 #千锋逆战班,拼搏永向前#

在千锋“逆战”学习第十六天,王金涛努力到无能为力,拼搏到感动自己!今天任务完成:①复习MVC的概念,通过MVC知识,练习一个页面表格的展示及删除功能。get√②再背背session和cookie工作原理get√③做毕业设计!!!!!!!!!(进行中)...

2020-02-29 19:19:13 89 1

原创 #千锋逆战班,拼搏永向前#

在千锋“逆战”学习第十五天,王金涛努力到无能为力,拼搏到感动自己!今日学习笔记:session的工作原理:1.当浏览器第一发送请求给服务器时,那么服务器会在内存中开辟一个对象(session),通过hash算法得到这个对象的内存地址(eac123456),此时服务器会new cookie对象(new Cookie("JsessionId","eac123456")),将cookie添加到r...

2020-02-28 23:10:46 85

原创 #千锋逆战班,拼搏永向前#

在千锋“逆战”学习第十四天,王金涛努力到无能为力,拼搏到感动自己!今日学习笔记:1、Cookie和Session的区别①session 在服务器端,cookie 在客户端(浏览器)②session 默认被存在在服务器的一个文件里(不是内存)③session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 cookie ...

2020-02-27 23:09:18 58

空空如也

空空如也

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

TA关注的人

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