Java
文章平均质量分 88
JayInnn
玉不琢,不成器;人不学,不知道
展开
-
JIT编译器技术理解
参考链接:https://blog.csdn.net/liaodehong/article/details/51605457https://www.cnblogs.com/insistence/p/5901457.htmlJust In Time编译器(一)Hot Spot 编译在主流商用JVM(HotSpot、J9)中,Java程序一开始是通过解释器(Interpreter)进行解释执行的。当J...原创 2018-07-10 20:38:05 · 603 阅读 · 0 评论 -
Date类型与String类型的相关问题
今天完成boss交代的任务时,遇到Date类型与String类型的相关问题,参考了网上的一些例子,并且自己写了demo,现在记录下了总结一下:(一)判断一个字符串是不是合法的日期格式public boolean StringisValidDate(String str) { boolean convertSuccess=true; // 指定日期格式为四位...原创 2018-08-16 18:04:25 · 1648 阅读 · 0 评论 -
基于Mybatis实现一个查库的接口
基本功能就是写一个接口,该接口的主要功能是根据给的条件查询特定表;先通过Workbench来看一下在给定条件下的查询的结果,先给出最终的结果查询的表以及查询的条件: 也就是该接口实现在image_table中实现end_time的范围查找; 接口形式: 接口中的请求的数据对象:其中继承的AbstractSignRequest是基础数据,用来验证http链接的,在这里可以...原创 2018-08-16 18:36:00 · 355 阅读 · 0 评论 -
AOP理解
AOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散布在所有对象层次中,而与它对...原创 2018-08-22 17:15:58 · 226 阅读 · 0 评论 -
IoC理解
IoC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们来深入分析一下: ●谁控制谁,控制什么:传统Java...原创 2018-08-22 17:28:38 · 189 阅读 · 0 评论 -
Quartz理解与实现
记录关于Quartz定时调度任务的知识点,知识点主要分为两个部分,第一个部分介绍Quartz,第二部分使用Quartz+Spring来配置使用Quartz的实际操作。(一)Quartz知识点Quartz是完全由java开发的一个开源的任务日程管理系统,“任务进度管理器”就是一个在预先确定的时间到达时,负责执行(或者通知)其他组件的系统。 一句话概括:Quartz框架的核心就是调度器;...原创 2018-08-22 18:02:47 · 420 阅读 · 0 评论 -
mybatis中的mapper接口文件以及selectByExample类的实例函数详解
记录分为两个部分,第一部分主要关注selectByExample类的实例函数的实现;第二部分讨论Mybatis框架下基本的实例函数。(一)selectByExample类的实例函数的实现当你启动项目,并且打算查询相应的数据库中的相应的表时: 接着跟踪进去: 然后查询过程就交给了Mybatis框架处理了,那么还有一个问题,我们知道selectByExample实例函数的参...原创 2018-08-17 10:48:26 · 12042 阅读 · 1 评论 -
Mybatis中int insertSelective()的相关问题
1、selective的意思是:选择性2、insertSelective--选择性保存数据;比如User里面有三个字段:id,name,age,password但是我只设置了一个字段;User u=new user();u.setName("张三");insertSelective(u);3、insertSelective执行对应的sql语句的时候,只插入对应的name字段;(主键是...原创 2018-08-27 14:15:25 · 4823 阅读 · 0 评论 -
MyBatis中mybatis-generator代码生成的一般过程
MyBatis框架的使用,可以参考我的文章:https://blog.csdn.net/JayInnn/article/details/81746571(基于Mybatis实现一个查库的接口)https://blog.csdn.net/JayInnn/article/details/81773073(mapper接口文件以及selectByExample类的实例函数详解) 为了深入...原创 2018-08-20 16:46:02 · 330 阅读 · 0 评论 -
Spring AOP实现Mysql数据库主从切换(一主多从)
设置数据库主从切换的原因:数据库中经常发生的是“读多写少”,这样读操作对数据库压力比较大,通过采用数据库集群方案, 一个数据库是主库,负责写;其他为从库,负责读,从而实现读写分离增大数据库的容错率。 那么,对数据库的要求是: 1. 读库和写库的数据一致; 2. 写数据必须写到写库; 3. 读数据必须到读库; Spring AOP实现Mysql数据库主从切换的过程:在进入Servi...原创 2018-08-27 18:31:24 · 886 阅读 · 0 评论 -
AutoMatic merge failed;fix conflicts and then commit the result.解决方法
意思是:冲突内容:合并冲突在 XXXX.DS_Store文件中自动合并失败;修改冲突然后提交修改后的结果。 <<<<<<<< HEAD 你写的代码=============== 别人写的代码>>>>>>>>&原创 2018-08-13 14:15:45 · 17079 阅读 · 0 评论 -
SSM框架中各层作用
SSM是sping+springMVC+mybatis集成的框架。MVC即model view controller。model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。service层。存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法中需要导入mapper层,mapper层是直接跟数据库...原创 2018-08-15 16:25:22 · 6283 阅读 · 0 评论 -
Spring中添加新的配置表,并对新的配置表进行处理
实习过程中boss交代的任务(签了保密协议的原因,以下出现的代码以及数据只能给出小部分)目的:Spring中添加新的配置表,并对新的配置表进行处理;替换的新的配置表要友好,同时保证替换前后功能不能发生变化。 需要处理的配置表数据:很明显,原配置表中的数据都是以Json的格式给出的,那么很容易在处理的过程中出现错误,现在需要将配置表换成一个友好的格式,同时保证使用Postman调...原创 2018-08-07 18:37:36 · 401 阅读 · 0 评论 -
深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
1、内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接。 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。 2、外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM子句中指定外联接时,可以由下列几组关键字中的一...转载 2018-07-23 10:32:10 · 487 阅读 · 0 评论 -
Spring配置表友好性优化思路
Spring配置表需要尽量保证对程序员的友好性,一下提供一种优化思路。中途未保存,心态炸了,只贴图了,fuuuuuuuuuuuuuck 第一种(最烂,最不友好):以Json的格式保存在配置表中,程序员易出错,只有有一个符号缺失或者出错,程序就不会正常运行,具体如下 第二种(较友好):比较友好,但是当增加新的信息时,必须同时修改name,isNotEdit与service_...原创 2018-08-09 18:14:34 · 267 阅读 · 0 评论 -
windows下如何通过git bash获取gitlab ssh公钥
Gitlab1. 安装git,从程序目录打开 "Git Bash" 2. 键入命令:ssh-keygen -t rsa -C "[email protected]" "[email protected]"是gitlab账号 3. 提醒你输入key的名称,输入如id_rsa 4. 在C:\Users\Administrator\.ssh下产生两个文件:id_rsa和id_rsa.pub 5....原创 2018-08-01 13:09:19 · 874 阅读 · 0 评论 -
IntelliJ IDEA的调试方法
快捷键F9 resume programe 恢复程序Alt+F10 show execution point 显示执行断点F8 Step Over 相当于eclipse的f6 跳到下一步F7 Step Into 相当于eclipse的f5就是 进入到代码...原创 2018-08-06 10:51:17 · 524 阅读 · 0 评论 -
IntelliJ IDEA调试方法补充
基本用法&快捷键1、首先说第一组按钮,共8个按钮,从左到右依次如下: > Show Execution Point (Alt + F10):如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前代码执行的行。> Step Over (F8):步过,一行一行地往下走,如果这一行上有方法不会进入方法。> Step Into (F7):步入,如果当前行...转载 2018-08-06 14:27:01 · 181 阅读 · 0 评论 -
重写TreeMap的compare方法处理配置表
需要处理的配置表如下:接上一篇的优化,接着优化,优化代码如下: 这段代码的关键在于重写TreeMap的compare方法。 关于如何重写TreeMap的compare方法,以及返回值代表的意义,可以参考源码,以下给出简单的结论:...原创 2018-08-10 17:16:58 · 1812 阅读 · 0 评论 -
关于StringUtils的常用方法
StringUtils.split(String, char)* <pre>* StringUtils.split(null, *) = null* StringUtils.split("", *) = []* StringUtils.split("a.b.c", '.') = ["a", "b", "c"]* Strin原创 2018-08-10 17:31:16 · 254 阅读 · 0 评论 -
ERROR: java.lang.NullPointerException的一种情况
java.lang.NullPointerException错误,错误原因就是以下六条没配置完:1.JAVA环境配置正确。2.源码里面的包没有与tomcat的包冲突。3.把数据库文件给导入到了SQL SERVER(或者其它数据库系统)里面。并且数据库系统正在运行。4.添加了数据源。5.数据库源文件的系统类型匹配(不匹配重新建立数据库,源码里面一般含有数据库的表结构及内容。),且数据库的...原创 2018-08-14 16:51:16 · 4124 阅读 · 0 评论 -
Spring中加载配置文件,报错找不到shopServicesConfig符号的问题
文件中需要引用的Spring容器内容的代码:调试后,报错情况为:原因是在需要使用一下代码时,Spring没有完成自动装载的过程,所以报错找不到符号List<String> serviceIdList = shopServicesConfig.getShopServicesInfo();解决方法:通过在调用该方法的类的成员变量出添加一下代码,使得在使用配置文件时...原创 2018-08-07 17:46:37 · 201 阅读 · 0 评论 -
主从数据库读写分离知识
(一)为什么要实现读写分离?为了服务器承载更多的用户?提升了网站的响应速度?分摊数据库服务器的压力?就是为了双机热备又不想浪费备份服务器?上面这些回答,我认为都不是错误的,但也都不是完全正确的。「读写分离」并不是多么神奇的东西,也带不来多么大的性能提升,也许更多的作用的就是数据安全的备份吧。从一个库到读写分离,从理论上对服务器压力来说是会带来一倍的性能提升,但你仔细思考一下,你的应用服务器真的...原创 2018-08-28 10:31:44 · 378 阅读 · 0 评论