自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mango

程序员日常

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

原创 【DailyQuestion-1】判空

1、String类的isEmpty()方法是判断字符串是否初始化的方法,返回值为Boolean注意:此方法容易出现空指针异常。因为“”和new 的时候系统都会为其分配内存,不管是否有值,当为null的时候,系统的不会为其分配内存,所以它是不存在的,如果调用isEmpty()方法时JDK根本不知道这是什么,因此会报空指针异常。所以使用该方法判断之前应先判断是否为null除了在使用该方法之前进行一个判空,那有没有一个方法可以帮我们解决这个空指针问题?2、工具类StringUtils的isEmpty()

2022-01-05 10:48:23 210

原创 SpringMVC_7-① 视图解析

12

2021-10-28 15:44:39 186

原创 在开发过程遇到xml与java对象相互转化的问题(调用三方webService接口)----JAXB

一、关于JAXBJAXB是干什么的?JAXB可以实现xml格式与对象之间的相互转换JAXB相关知识点1、JABX相关的类XmlType类:用于绑定java实体与XML之间的信息Marshaller接口:将Java实体序列化为XML数据Unmarshaller接口:将XML数据反序列化为Java对象java实体与XML之间的相互转换最重要的就是后面两个接口。2、JAXB相关注解@XmlType@XmlAccessorType@XmlAccessOrder@XmlJavaTyp

2021-10-28 15:42:52 767 3

原创 前后端交互之序列化、反序列化

一、反序列化—注解方式1、localDateTime若前端传参(Json格式)给后台,其中有一个参数是要用localDateTime接收,即需要反序列化为localDateTime类型。可使用注解的方式完成该过程。后台创建一个query类来接收前端传过来的参数,在对应反序列化的字段上添加 @JsonDeserialize(using = LocalDateTimeDeserializer.class) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") pr

2021-09-14 14:48:37 2279

原创 mybatis错误总结————Invalid bound statement (not found)

Invalid bound statement (not found)无效的绑定。即写的xml文件没有被springboot识别读取。在博客中对这个错误的说法解释有几篇讲得还不错,链接挂上Invalid bound statement (not found):的原因和解决方法[MyBatis]诡异的Invalid bound statement (not found)错误看完了这几篇后,若发现还不能解决问题所在,可以往下看:以上两篇博客讲到的我都是没有问题的。我报这个错误是因为自定义了一个myb

2021-09-01 15:27:42 320

原创 14-动态

多态多态是继封装、继承之后,面向对象的第三大特性。多态的前提:子父类的继承关系方法的重写父类引用指向子类对象:Animal a = new Cat()动态绑定:运行期间调用的方法,是根据其具体的类型多态成员的特点:成员变量:当子父类中出现同名的成员变量时,多态调用该变量时:编译时期:参考的是引用型变量所属的类中是否有被调用的成员变量。 没有,编译失败。运行时期:也是调用引用型变量所属的类中的成员变量。简单记:编译和运行都参考等号的左边。编译运行看左边。成员方法编译时

2021-07-29 21:45:56 54

原创 使用centos7出现的问题

1、在VMware内安装完centos7后,进入centos7页面,在使用的时候出现了以下错误:Loaded plugins:fastestmirrorYou need to be root to perform this command这是因为无权限的问题。解决办法:centos问题之Loaded plugins: fastestmirror, langpacks You need to be root to perform this command2、在使用yum指令进行查询或者安装某些插件

2021-03-21 23:56:16 2620

原创 Cestos8---root密码忘记了该如何找回?

centos8 修改root密码官方文档

2021-03-20 21:25:23 185 1

转载 SpringMVC_7-②视图解析之源码

点击hello发送hello请求作为研究视图解析的流程SpringMVC视图解析1、方法执行后的返回值会作为页面地址参考,转发或者重定向到页面2、视图解析器可能会进行页面地址的拼串;具体流程1、任何方法的返回值,最终都会被包装成ModelAndView对象2、processDispatchResult(processedRequest, response, mappedHandler, mv, dispatchException);来到页面的方法视图渲染流程:将域中的数据在页面展示;页面就是

2020-09-06 21:41:50 168

原创 SpringMVC_6SpringMVC源码解析(老版本)

1、前端控制器的架构?DispatcherServlet;2、doDispatch()详细细节:protected void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception { HttpServletRequest processedRequest = request; HandlerExecutionChain mappedHandler = n

2020-08-30 15:51:10 129

原创 SpringMVC_5 处理响应数据(数据输出)

SpringMVC 输出模型数据SpringMVC提供了以下几种途径输出模型数据:1)ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据2)Map 及 Model: 入参为 org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map 中的数据会自动添加到模型中。3)@SessionAttributes: 将模型中的某个

2020-08-30 15:34:32 378

原创 SpringMVC_4 请求处理

springmvc如何获取请求带来的各种参数1、默认方式获取请求方式:直接给方法入参上写一个和请求参数名相同的变量,这个变量就用来接受请求参数的值,传入的请求的参数可带可不带有带:有值 没带:null2、@RequestParam注解@RequestParam:获取请求参数,参数默认是必须带的@RequestParam(“user”)String username相当于:uername=request.getParamter(“user”)@RequestParam的参数属性value

2020-08-30 00:24:44 99

原创 SpringMVC_3 REST风格

REST 是什么1)REST:即 Representational State Transfer。(资源)表现层状态转化。是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用①资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。 可以用一个 URI(统一资源定位符)指向它,每种资源对应一个特定的 URI 。获取这个资源,访问它的 URI 就可以,因此

2020-08-23 22:50:11 101

原创 SpringMVC_2@RequestMapping注解

1、@RequestMapping映射请求注解、可标注的位置@RequestMapping 概念1)SpringMVC 使用@RequestMapping 注解为控制器指定可以处理哪些 URL 请求2)在控制器的类定义及方法定义处都可标注 @RequestMapping标记在类上:提供初步的请求映射信息。相对于 WEB 应用的根目录标记在方法上:提供进一步的细分映射信息。相对于标记在类上的 URL。若类上未标注 @RequestMapping,则方法处标记的 URL 相对于 WEB 应用的根目

2020-08-23 16:36:13 123

原创 SpringMVC_1 SpringMVC_简介、入门程序

SpringMVC架构Spring web mvc介绍Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来:Web MVCmvc设计模式在b/s系统下的应用流程:1、用户发起request请求至控制器(Controller)控制器接收用户请求的数据,委托给模型进行处理2、控制器通过模型(Model)处理数据并得到处理结果模型通常是指业务逻辑3、模型处理结果返回给控制器4、控制器将模型数据在试图中展示

2020-08-23 15:28:31 123

原创 mybatis_06---缓存

一级缓存

2020-08-21 14:39:58 71

原创 mybatis_05---动态sql:if、where、trim、choose、set

MyBatis 动态 SQL 简介1)动态 SQL 是 MyBatis 强大特性之一。极大的简化我们拼装 SQL 的操作2)动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似3)MyBatis 采用功能强大的基于 OGNL 的表达式来简化操作if:判断choose (when, otherwise) :分支选择(switch case)trim (where, set):字符段截取foreach4)OGNL( Object Graph Navigation

2020-08-19 23:54:31 293

原创 mybatis_04---映射文件③select、resultMap

select查询的集中情况1、查询单行数据返回单个对象public Employee getEmpById(Integer id);2、查询多行数据返回对象的集合public List<Employee> getEmpsByNameLike(String name);<!--如果返回的是一个集合,要挟集合中元素的类型--><select id="getEmpsByNameLike" resultType="dao.Employee"> select *

2020-08-18 23:16:59 208

原创 mybatis_04---映射文件②insert、参数传递(封装)

主键生成方式、获取主键值主键生成方式:1、支持主键自增的mysql数据库2、不支持主键自增的mysql数据库获取主键值1、若数据库支持自动生成主键的字段(比如 MySQL 和 SQL Server),则可以设置 useGeneratedKeys=”true”,然后再把 keyProperty 设置到目标属性上。useGenreatedKeys=“true”:使用自增主键获取主键值策略keyProperty:指定对应的主键属性,也就是mybatis获取到主键值后,将这个值封装给javaBean

2020-08-12 21:55:14 1220

原创 mybatis_04---映射文件①增删改查

映射文件的增删改查Employee.javapackage dao;public class Employee { private Integer id; private String name; private String email; private String sex; public Employee() { super(); } @Override public String toString() { return "Employee [id=" + id .

2020-08-12 20:51:32 120

原创 mybatis_03----全局配置文件标签

1、propertiesmybatis可以使用properties来引入外部properties配置文件的内容两个参数 resource:引入类路径下的配置文件 url:引入网络路径或磁盘路径下的配置文件dbconfig.propertiesjdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/baidu?useSSL=false&useUnicode=true&character

2020-08-09 22:32:40 93

原创 Redis高级_1 基于Linux系统下安装redis及启动

一、安装基于Centos安装过程是先编译再安装的过程二、启动Redis服务启动:1、默认配置启动redis-serverredis-server -port 6379redis-server -port 63802、指定配置文件启动redis-server redis.confredsi-server redis-6379.confredis-server redis-6380.conf....redis-server conf/redis-6379.conf

2020-08-06 15:46:36 95

原创 Redis基础_4-② jedis工具类制作

Jedis简易工具类开发基于连接池获取连接JedisPool:Jedis提供的连接池技术poolConfig :连接池配置对象host :redis服务地址port :redis服务端口号public JedisPool(GenericObjectPoolConfig poolConfig,String host,int port){ this(poolConfig,host,port,2000,(String)null,0,(String)null)}redis.properti

2020-08-05 20:52:27 118

原创 Redis基础_4-① Java操作Redis

Jedis简介编程语言与redisjava语言连接redis服务JedisSpringData RedisLettuceC、C++、C#、Erlang、Lua、Objective-C、Perl、PHP、Python、Ruby、Scala等语言都可使用JedisHelloWorld(jedis版)1、jar包导入:下载地址https://mvnrepository.com/artifact/redis.clients/jedis2、基于maven<dependency>

2020-08-05 17:52:02 138 1

原创 Redis基础_3通用操作指令

sss

2020-08-05 15:37:21 156

原创 Redis基础_2-⑦ 解决方案列表总结

2020-08-04 23:40:30 100

原创 Redis基础_2-⑥ 数据类型实践案例

123

2020-08-04 23:37:35 187

原创 Redis基础_2-⑤ 五种基本数据类型之sorted_set类型

sorted_set类型1、新的存储需求:数据排序有利于数据的有效展示,需要提供一种可以根据自身特征进行排序的方式2、需要的存储结构:新的存储结构i,可以保存可排序的数据3、sorted_set类型:在set的存储u结构基础上添加可排序字段sorted_set类型数据的基本操作添加数据zadd key score1 member1 [score2 member2]获取全部数据zrange key start stop [withscores] 从小到大排序zrevrange key

2020-08-03 23:08:30 988

原创 Redis基础_2-④ 五种基本数据类型之set

set类型新的存储需求:存储大量的数据,在查询方面提供更高的效率需要的存储结构:能够保存大量的数据,高效的内部存储机制,便于查询set类型:与hash存储结构完全相同,仅存储键,不存储值(nil),并且值是不允许重复的set类型数据的基本操作添加数据sadd key member1 [member2]获取全部数据smembers key 删除数据srem key member1 [member2]获取集合数据总量scard key 判断集合中是否包含指定数据sism

2020-08-03 21:40:45 325

原创 Redis基础_2-③ 五种基本数据类型之list

list类型数据存储需求:存储多个数据,并对数据先进性存储空间的顺序进行区分需要的存储结构:一个存储空间保存多个数据,且通过数据可以体现进入顺序list类型:保存多个数据,底层使用双向链表存储结构实现list类型数据基本操作添加/修改数据lpush key value1 [value2] ...从左边进rpush key value1 [value2] ..从右边进获取数据lrange key start stop( start、stop代表索引)lindex key index

2020-08-03 16:38:36 171

原创 Redis基础_2-②五种基本数据类型之hash

原先的存储将左边的主键合一,右边属性对应他们的值新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息需要的存储结构:一个存储空间保存多个键值对数据hash类型:底层使用哈希表结构实现数据存储hash存储结构优化如果field数量较少,存储结构优化为类数组结构如果field数量较多,存储结构使用HashMap结构hash类型数据的基本操作添加/修改数据hset key field value获取数据hget key fieldhgetall key删除

2020-08-03 15:38:17 167

原创 Redis基础_2-① 五种基本数据类型之string

数据存储类型介绍业务数据的特殊性一、作为缓存使用1、原始业务功能设计 秒杀、618活动、双11活动、排队购票2、运营平台监控到的突发高频访问数据 突发时政要闻,被强势关注围观3、高频、复杂的统计数据在线人数、投票排行榜二、附加功能系统功能优化或升级但服务器升级集群Session管理Token管理三、Redis数据类型(5种常用)String Stringhash HashMaplist LinkedList链表set HahSetsorted_

2020-08-03 13:24:34 174

原创 Redis基础_1 Nosql简介、Redis

网站崩溃问题现象:海量用户高并发罪魁祸首–关系数据库性能瓶颈:磁盘IO性能低下扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群解决思路:Nosql简介Nosql:即Not-Only SQL(泛指非数据型的数据库),作为关系型数据库的补充作用:用对基于海量用户和海量数据前提下的数据处理问题特征:可扩容,可伸缩大数据量下高性能灵活的数据模型高可用常见的Nosql数据库:RedismemcacheHBaseMongoDBRedis概念:Redis(RE

2020-08-02 16:36:20 103

原创 Java_24网络编程---④模拟用户登录案例

案例代码1需求:客户端:1.提示用户输入用户名和密码,将用户输入的用户名和密码发送给服务端2.接收服务端验证完用户名和密码的结果 服务端:1.接收客户端发送过来的用户名和密码 2.如果用户名不是itheima或者 密码不是123456,就向客户端写入”登录失败” 否则向客户端写入登录成功ClientTest.javaimport java.io.BufferedReader;import java.io.IOException;impo

2020-08-01 22:15:28 943

原创 Java_24网络编程---③TCP协议

TCP通信同UDP通信一样,都能实现两台计算机之间的通信,通信的两端都需要创建socket对象。区别在于,UDP中只有发送端和接收端,不区分客户端与服务器端,计算机之间可以任意地发送数据。而TCP通信是严格区分客户端与服务器端的,在通信时,必须先由客户端去连接服务器端才能实现通信,服务器端不可以主动连接客户端,并且服务器端程序需要事先启动,等待客户端的连接。在JDK中提供了两个类用于实现TCP程序,一个是ServerSocket类,用于表示服务器端,一个是Socket类,用于表示客户端。通信时,首先

2020-08-01 21:50:25 161

原创 Java_24网络编程---②UDP协议

1、UDP协议概述UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接。简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据,同样接收端在收到数据时,也不会向发送端反馈是否收到数据。由于使用UDP协议消耗资源小,通信效率高,所以通常都会用于音频、视频和普通数据的传输例如视频会议都使用UDP协议,因为这种情况即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。但是在使用UDP协议传送数据时,由于UDP的面向无连接性,不能保证数据的完整性,

2020-08-01 16:01:47 81

原创 Java_24网络编程---①网络编程概述

1、网络协议通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式、传输速率、传输步骤等做了统一规定,通信双方必须同时遵守才能完成数据交换。网络通信协议有很多种,目前应用最广泛的是TCP/IP协议(Transmission Control Protocal/Internet Protoal传输控制协议/英特网互联协议),它是一个包括T

2020-08-01 15:52:52 73

原创 Java_23 多线程

1、多线程概述A:进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。B:线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。C:简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程什么是多线程呢?即就是一个程序中有多个线程在同时执行。2、线程实现①实现线程一:继承Thread类该如何创建线程呢?通

2020-07-30 15:16:34 101

原创 Java_22 字符流与字节流(IO流)③Properties集合、编码表

222

2020-07-29 16:34:36 140

原创 Java_22 字符流与字节流(IO流)②对象操作流

1、概述用于从流中读取对象的ObjectInputStream 称为 反序列化流,利用输入流从文件中读取对象ObjectOutputStream 称为 序列化流,利用输出流向文件中写入对象特点:用于操作对象。可以将对象写入到文件中,也可以从文件中读取对象。/* * 对象操作流:可以用于读写任意类型的对象 * ObjectOutputStream * writeObject * ObjectOutputStream(OutputStream out) * Ob

2020-07-28 17:23:40 133

数据可存储过程和触发器定义和使用

数据库实验六:数据可存储过程和触发器定义和使用相关实验试题及代码

2018-11-26

空空如也

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

TA关注的人

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