自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring整合MyBatis、声明式事务详解

文章目录整合MyBatis整合方式一整合MyBatisSpring整合MyBatis的步骤为:1、导入相关jar包:junit、mybatis、mysql数据库、Spring相关、AOP织入、mybatis-spring包【新的包】、Spring操作数据库需要一个Spring-jdbc的包;<dependencies> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->

2020-11-20 21:06:51 34

原创 注解开发、代理模式、AOP切面编程详解

文章目录使用注解开发衍生注解作用域XML与注解比较基于Java类配置Spring代理模式使用注解开发在Spring4之后,要使用注解开发,必须要保证导入aop的包;使用注解需要导入context约束,增加注解的支持;<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.

2020-11-19 22:58:16 94 2

原创 Spring创建对象以及bean的作用域、bean的自动装配、注解实现自动装配详解

文章目录HelloSpring再次理解控制反转和依赖注入ApplicationContext类HelloSpring编写一个Spring的程序,步骤如下:1、导入spring-mvc的依赖:<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --><dependency> <groupId>org.springframework</groupId&g

2020-11-18 18:12:04 107 1

原创 Spring框架概述与IoC思想

文章目录Spring简介Spring的优点Spring的组成IOC理论推导Spring简介Spring——春天:给软件行业带来了春天!它适用于任何Java应用,相当于一个模板存在,简化了服务器端的开发;2002年,首次推出了Spring框架的雏形:interface21框架!于2004年3月24日正式发布1.0版本;Spring的理念:使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架!两套组合框架:SSH组合:Struts2+Spring+HibernateSSM组合:

2020-11-17 19:55:24 102 2

原创 1034 有理数四则运算(Java实现)

有理数四则运算本题要求编写程序,计算 2 个有理数的和、差、积、商。输入格式:输入在一行中按照 a1/b1 a2/b2 的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只可能出现在分子前,分母不为 0。输出格式:分别在 4 行中按照 有理数1 运算符 有理数2 = 结果 的格式顺序输出 2 个有理数的和、差、积、商。注意输出的每个有理数必须是该有理数的最简形式 ...

2020-11-16 10:18:45 5

原创 1035 插入与归并Java实现

1035 插入与归并根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。归并排序进行如下迭代操作:首先将原始序列看成 N 个只包含 1 个元素的有序子序列,然后每次迭代归并两个相邻的有序子序列,直到最后只剩下 1 个有序的序列。现给定原始序列和由某排序算法产生的中...

2020-11-16 10:18:35 4

原创 选择题纠错:20201112

文章目录错题1错题2错题3错题4错题5错题6错题7错题8错题9错题10错题11错题12错题13错题14错题15错题16错题17错题18错题19错题1抽象类方法的访问权限默认都是public( )【抽象类】JDK 1.8以前,抽象类的方法默认访问权限为protected;JDK 1.8时,抽象类的方法默认访问权限变为default【接口】JDK 1.8以前,接口中的方法必须是public的;JDK 1.8时,接口中的方法可以是public的,也可以是default的;JDK 1

2020-11-12 20:37:14 19

原创 选择题纠错:20201106

文章目录错题1错题2错题3错题4错题5错题6错题7错题8错题9错题10错题11错题12错题13错题14错题15错题16错题17错题18错题19错题1面向对象方法的多态性是指()多态指的是:同类型的变量、调用同一个方法时呈现出多种不同的行为特征;错题2jdk1.8中,下面有关java 抽象类和接口的区别,说法错误的是?抽象类:1、抽象类中可以构造方法2、抽象类中可以存在普通属性,方法,静态属性和方法。3、抽象类中可以存在抽象方法。4、如果一个类中有一个抽象方法,那么当前类一定是抽象类

2020-11-12 19:27:47 17

原创 计算机网络中的数据链路层详解

文章目录数据链路层概述使用点对点信道的数据链路层数据链路和帧三个基本问题封装成帧透明传输差错控制点对点协议PPPPPP协议的特点PPP协议的帧格式使用广播信道的数据链路层局域网的数据链路层以太网适配器的作用CSMA/CD协议使用集线器的星型拓扑以太网的信道利用率以太网的MAC层扩展以太网高速以太网数据链路层概述数据链路层使用的信道主要有以下两种类型:1、点到点信道:这种信道使用一对一的点对点通信方式;2、广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因

2020-11-11 15:47:34 880 5

原创 计算机网络中的物理层详解

文章目录1、物理层概述2、数据通信的基础知识1、物理层概述物理层考虑的是怎样才能在各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体;现在的计算机网络中的硬件设备和传输媒体的种类非常繁多,而通信手段也有许多不同的方式,物理层的作用正是尽可能的屏蔽掉这些传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异,这样就可使数据链路层只需要考虑如何完成本层的协议和服务,而不必考虑网络的具体的传输媒介和通信手段是什么;2、数据通信的基础知识一个数据通信系统可划分为三大部分

2020-11-10 09:59:35 21

原创 计算机网络概述

文章目录1、互联网概述2、互联网的组成3、计算机网络的性能4、计算机网络的体系结构1、互联网概述计算机网络:计算机网络由若干节点和连接这些结点的链路组成;网络中的节点可以是计算机、集线器、交换机或路由器等;互联网:网络之间可以通过路由器连接起来,这就构成了一个覆盖范围更大的计算机网络,这样的网络称为互联网;也就是说,网络把许多计算机连接在一起,而互联网则把许多网络通过路由器连接在一起,与网络相连的计算机称为主机;互联网发展的3个阶段:1、第一个阶段是从单个网络ARPANET向互联网发展的过程

2020-11-05 18:02:01 43 1

原创 20201030:算法题

文章目录算法题一:实现strStr()算法题二:有多少小于当前数字的数字算法题一:实现strStr()自己的解法:class Solution { public int strStr(String haystack, String needle) { if (haystack.length() < needle.length()) { return -1; } if (haystack.length() == ne

2020-10-30 21:34:45 36

原创 20201030:选择题纠错

文章目录错题一错题二错题三错题四错题五错题六错题七错题一1、静态方法本身属于类,因此可以通过类名直接调用;2、静态代码块只在类加载时执行一次;3、static块和static方法中不能出现this或者super关键字;4、引用静态方法时,可以用类名.方法名或者对象名.方法名的形式,但是不可以用this.方法名的形式;错题二这里看了一位网友的解答:观察可以发现,每次进入循环之后,x本身都在以x^2的速度进行增长,也就是进入循环t次,最终的x就变成了2^t,只有当x>=n/2的时候

2020-10-30 11:40:13 31 2

原创 20201023:算法题

文章目录算法题一:移除元素算法题二:回文链表算法题一:移除元素1、给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。2、不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元

2020-10-23 16:46:44 13

原创 20201022:算法题+选择题

文章目录错题一错题二错题三错题四错题五错题六错题七错题八错题九错题十错题十一算法题一:长键按入算法题二:删除排序数组中的重复项算法三:比较含退格的字符串错题一下面程序的运行结果()Object obj=new Object();List aList=new ArrayList();List bList=new LinkedList();long t1=System.currentTimeMillis();for(int i=0;i<50000;i++){ aList.add

2020-10-22 18:19:08 49

原创 20201018:笔试题+算法题

文章目录错题一错题二错题三错题四错题五算法一算法二错题一What will happen when you attempt to compile and run the following code?public class Test{static{ int x=5;}static int x,y;public static void main(String args[]){ x--; myMethod(); System.out.println(x+y+ ++x

2020-10-18 21:35:01 39 2

原创 20201016:算法题+笔试题

文章目录错题一错题二错题三错题四错题五1、错题一1、错题一1、错题一错题一选项中哪一行代码可以替换 //add code here 而不产生编译错误:public abstract class MyClass { public int constInt = 5; //add code here public void method() { } }1、抽象类不一定有抽象方法,有抽象方法的类一定是抽象类2、抽象类中可以有构造方法,抽象类不能进行实例化

2020-10-16 17:47:15 68

原创 Spring AOP增强介绍、Spring与MyBatis整合

文章目录1、增强异常抛出增强最终增强环绕增强2、注解3、使用注解解决切面问题4、Spring与MyBatis整合1、增强异常抛出增强异常抛出增强的特点:在目标方法抛出异常时织入增强处理可拔插的异常处理方案<aop:after-throwing>元素:定义异常抛出增强代码:/*** * 异常增强 目标方法的类名、方法名、参数列表 * @param jp * @param e 异常信息 */public void afterThrowing(JoinPoint jp,

2020-10-15 14:38:13 31

原创 20201014:算法题+笔试题

文章目录错题一错题二错题三题目四错题五算法题一算法题二错题一以下哪一项正则能正确的匹配网址: http://www.bilibili.com/video/av21061574()正则表达式的规则:规则字符在java.util.regex Pattern类中A:字符 x 字符 x。举例:'a'表示字符a \\ 反斜线字符。 \n 新行(换行)符 ('\u000A') \r 回车符 ('\u000D')B:字符类 [abc] a、b 或 c(简单类) [^abc] 任何字符,除

2020-10-14 17:19:53 216 1

原创 Spring框架入门

文章目录1、Spring框架概述2、Spring入门案例1、Spring框架概述什么是spring框架spring是J2EE应用程序框架,是一个兴起于2003年左右的开源框架,是轻量级的IoC和AOP的容器框架,主要是针对javaBean的生命周期进行管理的轻量级容器,可以单独使用,也可以和Struts框架,ibatis框架等组合使用;IoC和AOP是什么首先Spring框架是基于Bean编程的,Spring框架会将所有的对象都集中起来管理,这个操作就是使用了IoC思想;IOC不

2020-09-30 15:48:11 120 1

原创 MyBatis中的缓存机制

文章目录1、批量操作2、关于MySQL中check约束3、代码生成方式1——官方提供方式2——IDEA中的插件4、分页插件PageHelper1、批量操作我们在进行增删改查等操作的时候,有的时候数据量太大,不是简单地一两条,这时使用之前的代码会浪费大量内存,因此原生JDBC采用了批处理的操作,简单来说,就是将这些大量的SQL语句先存储起来,然后一次性进行操作;比如读取一份数据文件,如果使用循环读取数据,然后写入数据库中,每次插入数据都需要获取连接对象,与数据库多次交互,效率很低;批量操作的实现:

2020-09-25 09:57:06 54 1

原创 算法题20200923

文章目录1、整数反转1、整数反转给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。输入: 123输出: 321输入: -123输出: -321输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−2^31, 2^31 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。我的代码:public static int reverse(int x) { //思路: /* *

2020-09-23 17:59:18 29

原创 深入学习MyBatis框架(4)

多表关联查询多对多准备SQL脚本:-- 商品信息 CREATE TABLE `goods` ( `gid` int(11) NOT NULL auto_increment COMMENT '商品编号', `gname` varchar(50) NOT NULL COMMENT '商品名称', `gcount` int NOT NULL COMMENT '商品库存数量', `gprice` FLOAT NULL COMMENT '商品售价', `gdes` va

2020-09-16 20:28:58 29

原创 深入学习MyBatis框架(3)

文章目录1、再解输入和输出映射1、再解输入和输出映射需要注意的是,设计表之后,尽量不要修改列名,如果修改列名,则整个Java实体类 model 和 mapper 映射文件都要改。还要注意,我们在后面使用生成代码的方式,一旦代码生成,不要随意修改代码目录结构,因为引用关系之前已经设置好了。使用实体类中的属性和方法区分:在mybatis的映射文件中 ,表达式中所编写的内容在查找的时候,是通过方法关联,而非属性关联,当然绝大部分情况属性和方法是一致的,这涉及到OGNL知识点;private

2020-09-13 02:16:11 28

原创 深入学习MyBatis框架(2)

文章目录1、#{}与${}的区别1、#{}与${}的区别当参数是简单类型的时候,#{}中的值可以随意编写,mybatis在运行的时候也会将值设置到SQL语句当中,mybatis会自动根据列的数据类型增加单引号完成;如果参数是自定义Java类型,那么只能编写类的属性,但要注意大小写,比如#{anikename}与#{anikeName}是不一样的结果;${}在mybatis-config.xml中表示读取配置文件中的内容,${}还可以用在mapper.xml中;${}必须要慎用;[]:表示拼接S

2020-09-10 13:39:43 31

原创 深入学习MyBatis框架(1)

文章目录1、MVC开发模式中的service层2、重要组件运行流程读取核心配置文件:构建SqlSessionFactory工厂现阶段dao层开发3、优化开发1、MVC开发模式中的service层MVC框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面;MVC模式是web开发中的基础模式,采用的是分层设计,各层之间职责分明。然而时间一长我们就会发现controller层的代码要完成的工作太多了,它不仅要解析view传

2020-09-04 21:55:18 60

原创 入门MyBatis框架

文章目录1、回顾JDBC存在问题2、框架前言名词辨析各个服务器的介绍框架概述3、ORM的介绍4、MyBatis的CRUD1、回顾JDBC存在问题程序主要处理的就是数据,数据通常被存储在数据库(MySQL、Oracle)或内存中;Java操作数据库是使用Sun公司的这套JDBC API,具体的接口实现类(数据库驱动)由各个数据库厂商进行实现;传统JDBC怎么操作数据库呢?1、加载驱动2、创建连接3、创建执行对象4、进行CRUD操作——>解析数据5、释放资源数据库访问,连接一

2020-09-02 15:02:49 209

原创 Maven项目管理工具详解

文章目录1、Maven是什么1、Maven是什么首先在了解Maven之前,我们可以发现之前的Web项目,使用到了很多的jar包,比如数据库连接的、第三方工具类等,这都需要我们自己手动下载好对应的jar包之后,放在项目下的lib目录中,并手动依赖;这些工作难度不大,但是非常琐碎且耗时。如果每一个项目都自己搞一套配置,肯定会一团糟。我们需要的是一个标准化的Java项目管理和构建工具。maven 翻译为"专家",“内行”。Maven是Apache下的一个纯java开发的开源项目,它是一个项目管理工具,使用

2020-09-02 07:23:48 28

原创 Java web文件的上传和下载、注解

文章目录1、文件上传2、文件下载3、用户登陆注册时的显示头像1、文件上传文件上传:将客户端的文件,保存到服务器端,比如在用户注册的时候要求用户上传一张图片作为该账号的头像;对表单限制:1、提交方式method必须为post ;2、表单的属性enctype必须为:multipart/form-dataenctype:指表单发送数据的编码方式;application/x-www-form-urlencoded:数据进行URL编码text/plain:纯文本发送multipart/for

2020-09-01 10:34:34 68

原创 JSP详解与MVC开发模式介绍

文章目录1、JSP的3大指令2、JSP的6个动作标签3、JSP的9个内置对象4、EL表达式5、JSTL介绍6、页面域对象7、MVC开发模式8、单元测试1、JSP的3大指令在上一期会话技术的学习中,我 详细介绍了JSP是如何出现以及它的本质,JSP本质是一个servlet,它的出现是为了简化响应页面的书写,这篇文章中我总结了JSP是如何简化书写页面的;指令:配置JSP页面的属性或者导入一些额外的内容格式:<%@ 指令名称 属性名="属性值" %>分类:page:配置JSP页

2020-08-24 12:28:27 103

原创 会话技术学习

文章目录1、自定义MD5工具类加密2、JSP简介JSP早期的3种脚本3、会话技术简介4、客户端会话技术Cookie记住用户名和密码5、服务端会话技术Session6、JSP的3个内置指令7、登陆注册案例完善1、自定义MD5工具类加密什么是MD5算法之前学习MySQL数据库的时候,接触到了MD5加密,所谓的MD5加密,简单来说,就是将用户输入的明文密码加密为密文,并且这样的加密是不可逆的,也就是不能通过密文得到明文,针对这个转换的过程有一套专门的算法——MD5算法;什么是加盐加密对于同一密码,

2020-08-22 07:09:14 52

原创 servlet 深入学习

文章目录1、请求对象与响应对象介绍2、响应对象详解1、普通项目怎么转为web工程1、请求对象与响应对象介绍用户在客户端输入网址(虚拟路径)时,开始发送一个HTTP请求(请求行、请求头、请求体)至服务器。服务器内的Tomcat引擎会解析请求的地址,去找XML文件,然后根据虚拟路径找Servlet的真实路径,真实的Servlet会将请求的信息封装成request(请求)对象,然后再创建一个response(响应)对象,(此时的response内是空的)同时创建servlet对象,并调用service方法(

2020-08-20 07:13:42 103

原创 MySQL学习(1)基础详解

文章目录1、了解SQL2、使用MySQL3、创建数据库和操纵表4、检索数据5、创建计算字段6、使用数据处理函数7、分组数据8、使用子查询9、插入数据10、更新和删除数据11、使用视图12、使用存储过程13、使用触发器14、管理事务处理15、数据库维护与管理1、了解SQL什么是数据库?数据库是数据存储的仓库,用于存储和管理数据;常见数据库产品:Oracle:oracle公司,大型的关系型数据库,收费的DB2:IBM公司,大型的关系型数据库,收费的MySQL:MySQL公司,中小型关系型数

2020-08-17 21:21:45 54

原创 733 图像渲染

有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录的像素点的颜色值改为新的颜色值。最后返回经过上色渲染后的图像。

2020-08-17 12:19:53 23

原创 servlet 介绍详解

文章目录1、什么是Servlet2、Servlet入门代码3、Servlet的生命周期4、Servlet的重点对象——ServletConfig5、创建Servlet对象的几种方式6、前后台交互——表单验证7、Servlet虚拟路径的配置问题8、四大域对象9、访问Web工程下资源的路径问题10、请求对象与响应对象1、什么是ServletServlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于 交互式地浏览和修改

2020-08-16 21:34:20 59

原创 无重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。请注意,你的答案必须是子串的长度,"pwke" 是一个子序列,不是子串。给出官方的解.

2020-08-15 23:58:17 18

原创 常见的数据库连接池、IDEA与数据库的连接、HTTP协议、tomcat服务器启动的方式Servlet入门

文章目录1、常见的数据库连接池数据库连接池引入DBCP连接池C3P0连接池1、常见的数据库连接池数据库连接池引入最原始的数据库使用就是 打开一个连接并进行使用,使用过后一定要关闭连接释放资源。由于频繁的打开和关闭连接对JVM包括数据库都有一定的资源负荷,尤其应用压力较大时资源占用比较多容易产生性能问题。由此使用连接池的作用就显现出来,它的原理其实不复杂:先打开一定数量的数据库连接,当使用的时候分配给调用者,调用完毕后返回给连接池,注意返回给连接池后这些连接并不会关闭,而是准备给下一个调用者进行分配

2020-08-14 23:42:17 69

原创 详解JDBC

文章目录1、JDBC概念2、连接数据库代码解析3、封装结果集4、模拟用户登录5、SQL注入6、优化连接数据库的代码7、批处理操作8、使用Java代码调用存储过程和函数9、获取自增长键的值10、模拟用户登录注册练习1、JDBC概念在没有JDBC之前,java开发人员针对每一种数据库的不同,写一套对应的驱动程序,这就需要java开发人员去维护数据库的驱动程序,一旦数据库的底层实现改变,驱动程序可能会随之改变,显得很麻烦;为此,Sun公司设计了一套通用的java语言操作不同数据库的接口——JDBC,即 J

2020-08-13 07:31:28 50

原创 Vue学习

文章目录1、Vue介绍2、Vue的指令1、Vue介绍Vue是一个渐进式 JavaScript 框架,作用: 动态构建用户界面;为什么说Vue是渐进式的框架?首先由于使用原生js处理一些功能很吃力,代码的可维护性也很低。因此就有了框架的出现,在核心库的基础上,Vue现在已经有了一套完整的生态系统,我们可以添加Vuex,可以添加Vue-router,可以添加任何你想添加的第三方库,这些都是互相独立的;所以我们也可以说Vue是轻量型的,是渐进型的,你可以在现有的程序上使用Vue,你也可以使用Vue

2020-08-07 18:47:11 77

原创 面试题+算法题

文章目录面试题算法题——打家劫舍面试题1、不考虑反射,String类型变量所指向内存空间中的内容是不能被改变的(√)原文在此首先我们来看一下什么是不可变对象?如果一个对象在创建之后就不能再改变它的状态,那么这个对象是不可变的;不能改变状态的意思是,不能改变对象内的 成员变量,包括基本数据类型变量的值不能改变,引用类型的变量不能指向其他的对象,引用类型指向的对象的状态也不能改变。final关键字的作用:如果要创建一个不可变对象,关键一步就是要将所有的成员变量声明为final类型。所

2020-08-05 16:39:20 47

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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