自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringBoot项目如何用java将数据导出为Excel文件(提供全部源码)

第一步:导入依赖<!--数据导出依赖 excel--> <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId>

2020-11-19 17:49:01 22

原创 解决bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符

错误:在navicat里运行里是可以的,但是mybatis里运行报错解决:mybatis中sql语句粗心在结尾处有一个分号 “ ; ”,删除之后解决

2020-11-19 17:29:03 35

原创 Oracle数据库获取当前自然周,当前周的起始和结束日期

SELECT to_char(sysdate,'iw') from dual; --本周是第几个自然周 SELECT to_char(sysdate,'yyyy') into v_sbzq_nf from dual; -- 当前年份 SELECT to_char(TRUNC(TO_DATE(to_char(sysdate,'yyyy-MM-dd'),'yyyy-MM-dd'),'IW'),'yyyy-MM-dd') FROM DUAL;--本周的起始时间(本周周一日期) ..

2020-11-13 09:43:08 35

原创 记录使用map遇到的一些问题之内存泄露问题

今天写代码的时候有这样一个需求,需要对map进行自定义排序和删除map中一个指定的元素,从逻辑上讲先排后删和先删后排是没什么区别的,但是实际在代码运行中却出现了错误(根据日期排序)先排后删,结果:删除失败如图,key为‘2019/4’的数据没有被移除先删后排,结果:删除成功再使用HashMap与HashSet时,我们常常会自定义一个对象作为key。在自定义对象时如果使用对象内的属性来生成HashCode,则一定不要提供该对象的setter方法,也就是说key应该是不可变类,否则可能会造成内.

2020-11-06 17:54:28 61 2

原创 数据库常见20道面试题整理

进了互联网公司,整天也就是搬砖,等到了面试的时候,发现数据库方面,忘得一塌糊涂,抽时间整理了一些数据库方面的题。欢迎大家向我推荐你在面试过程中遇到的问题,我会把大家推荐的问题添加到下面的常用面试题清单中供大家参考。望各路大牛,发现不对的地方,不吝赐教,留言即可。事务四大特性(ACID)原子性、一致性、隔离性、持久性?事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?MySQL的MyISAM与

2020-11-03 14:00:10 146

原创 Oracle数据库之序列详解

序列是Oracle数据库中特有的一个对象,用来生成一组等间隔的数值。在Oracle中通常会使用序列生成一些唯一值(不重复的值),用来充当主键ID。一个普遍被遵循的最佳实践是不要使用任何业务逻辑字段作为主键。主键应该是一个对用户和商业逻辑无意义的数据,这将非常方便地进行数据库的迁移、融合、架构调整,或者适应需求规则的一些改变。最简单的创建序列的语法:create sequence 序列名;这样创建出来的序列,值默认从1开始,步长step为1。取出的值:1、2、3、4、5、6、7、8、9、10……

2020-10-30 16:08:25 14

原创 总结Oracle数据库与MySQL数据库中分页的实现

一.MySQL数据库先从MySQL数据库说起,MySQL数据库中实现分页相对简单,因为MySQL数据库中提供了非常好用的limit函数limit 使用语法:limit [a],[b]a:代表从第几个数开始向后查询(0对应的是数据库的第一行)b:代表每次查询返回的总条数一般来说a设置为(当前页数 - 1)* 单页数据大小b设置为 单页数据大小二.Oracle数据库Oracle数据库实现分页相对MySQL数据库较为繁琐,因为Oracle数据库不支持limit函数,所以我们使用row

2020-10-30 16:05:36 49

原创 今天在用mybatis的时候发的一个大坑,nested exception is org.apache.ibatis.type.TypeException: Could not set paramet

就是这个错误nested exception is org.apache.ibatis.type.TypeException: Could not set paramet(这个项目用的Oracle数据库)如图:解决:在使用mybatis时,sql语句中,字符串中添加参数不能使用预编译的#,而要使用 $,否则就会报这个错误将 # 改为 $ 之后即可解决!...

2020-10-30 15:26:19 39

原创 SVN中检出(check out) 和导出(export) 的区别

SVN中检出(check out) 和导出(export) 的区别观点一:SVN是常用的一种常见的版本控制软件。SVN中检出(check out) 和 导出(export) 的区别主要有如下几条:(1)check out跟check in对应,export跟import对应。(2)check out导出获得文件后,导出的文件仍处于SVN版本控制中,与版本库保持关联,比如你可以进行Svn Update或者Svn Commit操作。同时导出文件夹下有一个.svn的隐藏文件夹,存储着一些版本的元数据信息。

2020-10-27 18:43:55 9

原创 如何解决SecureCRT中中文乱码的问题

以下两步:1.远程linux机器。修改环境变量LANG。例如在~/.bash_profile里面添加export LANG=zh_CN.UTF8这里需要重新登录一下然后生效可以看到2.本地windows机器。修改SecureCRT的设置。找到“选项”->“会话选项”->“外观”:字符编码设置为utf-8。字体设置,选择中文字体,例如新宋体。注意:这里有一个坑,选上面的@新宋体中文是倒着的,在下面还有一个新宋体,这个是正常的...

2020-10-23 10:35:17 17

原创 如何通过navicat把.csv文件批量插入到数据库中

已有数据库表如下:1.点击导入,或者右键表选择“导入向导”2.选择CSV文件3.选择对应文件的路径和编码4.选用LF格式以行来划分5.选择对应的栏位名行,第一个行数据,最后一个行数据栏位名行:相当于数据库的字段名那一行对应在csv文件的第几行,我这里因为cvs里没有定义字段名,直接记录的数据所以直接选0第一个数据行:从哪一行进行插入数据最后一个数据行:到哪一行插入结束我这里因为需要插入1000行数据,所以选从1开始到10006.选择目标表7.选取数据库中各字段值对应在csv

2020-10-22 19:59:33 26

原创 在springboot项目中集成log4j日志输出

1.引入log4j依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j</artifactId> <version>1.3.8.RELEASE</version></dependency>此处有个注意点,就是关闭springboot自带的依赖:将sp

2020-10-22 10:42:24 16

原创 idea 启动本地tomcat访问localhost:8080 404错误

把tomcat安装目录下webapp下的的ROOT文件夹配置到idea中即可,注意修改application context为 /

2020-10-14 09:42:26 36

原创 Spring MVC框架详解

SpringMVC一、了解什么是MVCMVC模型:Model-View-Controller,模型-视图-控制器模式。MVC是一种架构型的模式,本身不引入新功能,只是帮助我们将开发的代码结构组织得更加合理。Model(模型)数据模型,提供要展示的数据,因此包含数据和行为,行为是用来处理这些数据的。不过现在一般都分离开来:Value Object(数据) 和 服务层(行为)。也就是数据由实体类或者javabean来提供,行为由service层来提供。View(视图)负责进行模型的展示

2020-10-12 09:59:17 76

原创 Spring之AOP

一、AOP概述1、什么是AOPOOP(Object-Oriented Programming),面向对象编程。AOP(Aspect-Oriented Programming),面向切面编程。在AOP中,“切面”是最为重要的一个概念。能否理解“切面”的概念,决定了是否能熟练掌握AOP技术。2、生活中的“面向切面”案例1)案例一 “丰巢”快递柜“丰巢”智能快递柜起源于2015年,是一种面向所有快递公司、电商物流使用的24小时自助开放平台。最初的出现是为了提供快递行业最后一公里方案服务。整个物品的

2020-10-04 23:32:02 90

原创 Spring_IoC控制反转、依赖注入详解

Spring_IoC一、IoC相关概念简介1、理解【控制】和【依赖】的概念IoC即控制反转、依赖注入 。—— OOAD依赖倒置【控制】和【依赖】都代表对象之间的关联关系,而且他们在Spring中是一对近义词,控制和依赖几乎是并存的。例如,现有如下需求:汽车的功能是行驶,司机的功能是驾驶汽车,令汽车行驶。我们可以通过代码描述上述关系:public class Car { // 汽车类 private String name; // 品牌 private Double price;

2020-09-30 08:45:19 79

原创 MyBatis中的缓存机制

MyBatis中存在两种缓存机制:一级缓存、二级缓存。一级缓存指的是MyBatis自带的基于SqlSession的缓存,自动生效,且无法关闭。当我们创建一个SqlSession并通过它从数据库中查询到一条数据时,这条数据会放在该SqlSession的缓存区中。如果使用同一个SqlSession再查询一次相同的内容,则直接从缓存区中返回数据。以此降低查数据库的次数。如果遇到以下四种情况,一级缓存会失效(无法命中):1、查询的内容和结果完全相同,使用的不是同一个SqlSession2、使用的是同一

2020-09-25 22:30:51 30

原创 MyBatis中动态sql拼接

if 标签if 标签通常用于 WHERE 语句、UPDATE 语句、INSERT 语句中,通过判断参数值来决定是否使用某个查询条件、判断是否更新某一个字段、判断是否插入某个字段的值。<if test="name != null and name != ''"> and NAME = #{name}</if>foreach 标签foreach 标签主要用于构建 in 条件,可在 sql 中对集合进行迭代。也常用到批量删除、添加等操作中。<!-- in查询所有

2020-09-25 21:22:59 32

原创 Java重写equals方法判断对象是否相等案例

public class HelloWorl{ public static void main(String[] args) { Data a = new Data(2017,7,28); Data c = new Data(2017,7,28); if(a.equals(c)) System.out.println("true"); else System.out.println("false"); Data d = a; if(a.equals(d)) Sys

2020-09-24 17:57:40 63

原创 MySQL正常启动报WARN: Establishing SSL connection without server‘s identity verification is not recommeded

WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn’t set. For compliance with existin

2020-09-24 09:07:22 5

原创 如何解决在数据库中删除了数据后导致之前设置的自增id有断层

1.在数据库中取消该列的自动增长,保存2.重新在数据库中设置该列的自动增长属性,保存

2020-09-22 21:36:15 38

原创 如何使用mybatis框架

1、导入依赖准备mybatis-x.x.x.jar,以及数据库驱动包。2、准备测试用表在Oracle数据库中创建下面的表并插入数据,SQL:create table student( id number primary key, name varchar2(30), age number, gender varchar2(30));insert into student values(1,'tom',22,'男');insert into student val

2020-09-22 20:24:53 16

原创 如何防止SQL注入

把字符串尽量转成数值类型设置用户合法请求输入的字符长度消息队列设置请求访问的峰值敏感判断,比如不允许请求中携带单引号采用预编译PreparedStatement执行SQL语句

2020-09-21 09:24:49 3

原创 javax.el.PropertyNotFoundException: Property ‘xxx‘ not found on type java.lang.String

今天写jsp页面的时出现了这个错误解决:后来发现是之前的${sessionScope.books}没有加“{}”,加上大括号之后页面成功显示

2020-09-17 08:22:18 8

原创 如何解决在Maven工程中写入了依赖可是没有下载对应的jar包

在windows里preferences选项中进入Maven看一下第二个选项确保第二个选项没有选中,如果选中了会无法自动下载jar包

2020-09-15 21:40:25 29

转载 如何解决创建Maven工程中webapp项目没有生成java目录和test目录

1.右键所选择的Maven工程,右键properties,选择Java Build Path2.把默认的jar包换为自定义的jar包3.这样在工程中就可以看到java文件夹和test文件夹了

2020-09-14 19:42:15 61

原创 两个链表有交点,如何在时间复杂度为O(n)空间复杂度为O(1)的情况下找出第一个交点

当两个链表产生交点时,此时数据结构大致呈Y字型此时,我们可以通过先遍历每一条链表,找出较长的那个比较短的多出了多少的长度然后,可以通过把较长链表的多出来的部分先截掉使得两条链表的长度相同,然后同时遍历两条链表,当节点数据相同时,就查出来了第一个交点的位置...

2020-09-11 22:11:11 10

原创 如何在Eclipse中提交gitee

1.需要在gitee中创建好需要提交到的仓库,此时会生成一个该仓库的地址2.在Eclipse中右键需要提交的项目3.选择team下的share project4.配置本地仓库5.此时就可以在项目右键中的team选项看到commit,点击commit把项目提交到本地仓库6.点击team下的remote,把本地仓库的内容push到远程仓库7.输入之前码云生成的仓库url,完成提交...

2020-09-11 21:27:43 30

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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