IDE构建/运行操作委托给Maven控制台乱码问题
当不用Maven构建运行IDE时,此处有个数据库查询操作,一切正常
(1)不委托给maven:
查询操作如下:
1.测试类
2.查询方法
3.接口
4.mapper映射文件
5.数据库数据
6.查询结果(控制台显示正常,没有乱码)
(2)委托给Maven时:
控制台出现乱码:
解决办法:在下方输入: -Dfile.encoding=GBK,又是一个字符集问题
修改后再运行就不会乱码了:
JavaSE重要的图
1.Collection集合关系图(详细)
2.集合关系图(简略)
3.单列集合框架图
4.双列集合(Map)框架图
5.IO流结构图
6.线程生命周期关系图
哈希算法之 hashCode 为什么选择数字31作为优质乘子?
在hashCode()中,为什么一定要使用31来做乘法运算???public native int hashCode();作用: 根据对象在堆内存中的首地址来生成一个哈希值,返回哈希值是一个int类型的整数(返回的结果可能是一个负数)。
问题: 实例化出来的对象的地址值都不一样,则意味着实例化出来的对象调用hashCode()方法返回的结果都不相同。开发中,我们更多的是想通过对象的成员变量值来生成哈希值,那么该如何实现呢???
解决: Object类提供的hashCode()方法满足不了我们的需求,那么我们在子类中就重写hashCode()方法即可。也就是在hashCode()方法中,根据对象的成员变量值来生成对象的哈希值,建议使用“alt + insert”快捷键来生成哈希值。
结论: a)两个对象调用equals()方法返回的结果是true,则这两个对象调用hashCode()方法返回的结果相同。 –> 如果对象所对应的类没有重写equals()方法和hashCode()方法,则以上结论默认 ...
this()与super()面试
为什么“this(实参列表)”和“super(实参列表)“不能同时存在于同一个构造方法中?”核心:
在一个类中,不可能所有的构造方法中都存在“this(实参列表)”,因为构造方法不可递归。
也就意味着,在一个类中的所有构造方法中,肯定至少有一个构造方法中存在“super(实参列表)”。
super(实参列表)的作用:保证子类对象操作父类成员变量之前,就已经完成了对父类成员变量的初始化操作。
this(实参列表)的作用:保证父类初始化的唯一性。创建子类对象的过程中,子类构造方法中只会调用一次父类的构造方法。
父类:
123456789101112131415161718192021222324252627282930313233343536373839/** * 父类*/public class Person { private String name; private int age; public Person() { System.out.println("Person类的无参构造方法"); ...
Statement与PreparedStatement
对比1、Statement存在SQL注入问题,PreparedStatement解决了SQL注入问题;2、Statement是编译一次执行一次,PreparedStatement是编译一次,可执行N次,PreparedStatement效率较高一些;3、PreparedStatement会在编译阶段做类型的安全检查。4、综上所述:Preparedstatement使用较多,只有极少数的情况下需要使用Statement。比如业务方面要求必须支持SQL注入的时候(业务需要进行SQL语句拼接)。
必须使用Statement的例子用户输入desc或者asc,进行SQL语句拼接,表示降序或升序。(例如京东淘宝点击按价格升降序)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162import java.sql.*;import java.util.ResourceBundle;import java.util.Sca ...
Git笔记
Git的概念1.Git是什么?Git是⽬前最先进的分布式版本控制系统(没有之⼀)
2.Git的特点?高端大气上档次
3.版本控制系统概念word文档修改举例
集中式SVN和分布式Git版本控制1.集中式集中式版本控制系统,版本库是集中存放在中央服务器的,⽽⼲活的时候,⽤的都是⾃⼰的电脑,所以要先从中央服务器取得最新的版本,然后开始⼲活,⼲完活了,再把⾃⼰的活推送给中央服务器。
2.分布式分布式版本控制系统根本没有“中央服务器”,每个⼈的电脑上都是⼀个完整的版本库,这样,你⼯作的时候,就不需要联⽹了,因为版本库就在你⾃⼰的电脑上。协作⽅式?
3.二者区别
你的本地是否有完整的版本库历史!
假设SVN服务器没了,那你丢掉了所有历史信息,因为你的本地只有当前版本以及部分历史信息。
假设GitHub服务器没了,你不会丢掉任何git历史信息,因为你的本地有完整的版本库信息。你可以把本地的git库重新上传到另外的git服务商。
GIT的安装1.配置本地仓库信息Git是分布式版本控制系统,所以,每个机器都必须⾃报家⻔,其中 git config 命令的 –global 参数,⽤了 ...
时光就像潮水,它送来了一切,也会带走一切
詹皇终是老去,时代在更替 前几天有一丝清闲,打开了很久没看的NBA直播,看见詹姆斯累得无法回防,一个人落在后半场的时候;看见他无心突破,难以得分的时候;看见他失误频繁,毫无进攻欲望的时候。我真的心里一震,脑海里浮现出2007年躺在沙发看NBA的场景,那是我第一次认识詹姆斯,他杀入总决赛,却以0-4被如日中天的马刺GDP组合横扫,那年我8岁,他22岁,而今年我也即将步入22岁。 如果不是亲自经历过,你永远不会知道那几年以状元出身的他是多么的火爆并被寄予厚望。记得一次比赛暂停的间隙,有一段20秒左右的广告,前10秒是他各种花哨的突破扣篮与精准远射,而后十秒则出现一颗蓝色的星球,旁边出现一行字:”这个地球上,谁能战胜詹姆斯?”那时的联盟高手如云,他虽以状元身份进入NBA,却远远不是那些老油条的对手,他太过稚嫩,有太多值得学习的地方。随着邓肯的一句”未来联盟是你的”,他走上了漫长的历练之途。那时候,他需要的就是成长与机遇,时间则是他的一把利刃! 如果说只要肯做一丝改变就可能取得空前的成就与荣誉,我认为没有几个年轻人会对此说不, ...