
Java
文章平均质量分 78
Jackson Xi
这个作者很懒,什么都没留下…
展开
-
诺瓦星河一面
(20分钟)1、自我介绍2、项目中遇到的问题,是怎么解决的?3、抽象类和接口的区别?4、HashMap和HashTable的区别,应用在什么场景?5、非关系型数据库与关系型数据库有什么区别,什么场景下我们会选用非关系型数据库?6、浏览器输入url到显示主页的过程?用到了哪一些协议?7、归并排序和快速排序的算法步骤,用在哪些场景下?8、有一个一万个数的整型数组,求出所有加起来为零的三元组?...原创 2021-08-08 17:15:33 · 304 阅读 · 0 评论 -
Java中的类加载机制
类加载机制1、我们自己编写的Java代码是如何在各种各样的操作系统上运行起来的?Java文件通过javac编译成class文件,这种中间码被称为字节码。然后由JVM加载字节码,运行时由解释器将字节码解释为一行行的机器码来执行。在程序运行期间,即时编译器会针对热点代码将该部分字节码编译成机器码以获得更高的执行效率。在整个运行时间,解释器和即时编译器的相互配合,使Java程序几乎能够达到和编译型语言一样的执行速度。大部分普通程序员可以接触到的应该是JVM加载字节码的这个过程,被称为类加载。2、类加载流原创 2021-07-23 10:27:45 · 255 阅读 · 2 评论 -
SSM框架整合支付宝沙箱(2021年6月)
SSM框架整合支付宝沙箱一、进入支付宝开放平台的管理中心的沙箱服务网址:https://open.alipay.com/二、设置RSA2(SHA256)密钥1、下载支付宝开发助手网址:https://opendocs.alipay.com/open/291/introduce2、生成密钥3、复制公钥到支付宝沙箱设置RSA2(SHA256)密钥4、保存生成的支付宝公钥三、在pom.xml中引入相关依赖<dependency> <groupId&g原创 2021-06-26 14:04:33 · 3469 阅读 · 10 评论 -
使用Git、Gitee及IDEA进行团队开发
一、安装Git二、在Gitee上注册一个账号如果没有绑定邮箱,需要绑定一个主邮箱。三、在本地电脑上设置本地仓库的用户名和邮箱最好都和Gitee上的保持一致,邮箱必须为有效的邮箱,不能自己胡乱写。随便一个文件夹,点击右键——Git Bash Heregit config --global user.name "这里写你的用户名" git config --global user.email "这里写你的邮箱"四、生成自己的SSH公钥ssh-keygen -t rsa -C "这里写你在原创 2021-03-30 21:09:45 · 795 阅读 · 0 评论 -
项目日记(在线办公项目)day2021/03/14
项目日记day0314一、账户冻结/解冻功能的实现现在,我们开始做账户冻结/解冻的功能。我们之前在数据库中的账户表(tbl_account)的用户状态字段(account_status)中定义了用户的几种状态,其中,如果用户状态字段的值为1表示用户被冻结,此时点击解冻按钮即可将其解冻;用户状态字段为0表示正常,此时点击冻结即可将这个账户冻结;用户字段为-1和2不可冻结也不可解冻。也就是说,我们实现该功能的关键要素是实现用户状态字段的改变。我们看一下如何实现这个功能:我们首先要从前端开始进行:添原创 2021-03-14 20:33:50 · 525 阅读 · 0 评论 -
项目日记(在线办公项目)day2021/03/02
项目日记day0302一、退出登录功能的实现1.对SpringScurity进行退出登录的相关配置此时要注意,因为退出登陆后凭证既销毁,所以要将"/login/logout"添加到不需要凭证可以访问的设置上,否则会报跨域错误。2.在登陆处理器中编写退出登录的方法/** * 退出登录 * @return */ @GetMapping("/logout") public Result logout(){ return Result.suc原创 2021-03-04 16:44:32 · 176 阅读 · 2 评论 -
项目日记(在线办公项目)day2021/03/03
项目日记day0303一、用户列表的生成1、编写查询用户列表的sql语句分析:这里我们需要的是以下几个信息:账户名(account_name):tbl_account员工姓名(emp_name):tbl_emp部门(dept_name):tbl_dept职位(post_name):tbl_post状态(account_status):tbl_account所以需要以上的几个表进行连接,需要进行sql语句的编写:(除了需要查询以上的信息,一般还需要查询账户ID进行原创 2021-03-04 16:38:43 · 118 阅读 · 2 评论 -
项目日记(在线办公项目)day2021/02/26
一、权限菜单的动态生成权限菜单应该根据当前登录者所拥有的权限显示菜单,以到达权限控制的目录权限菜单中显示的菜单为当前用户所拥有的权限权限菜单是根据数据库生成,数据库中有关权限菜单生成的有以下几张表:账户表(用户表):描述系统账户信息账户角色表:描述系统中不同账户所拥有的角色一个账户可以有多个角色,一个角色可以分配给不同的账户。账户表和角色表是多对多的关系。角色表:描述系统中角色信息(权限组)角色权限表:描述一个角色所拥有的权限一个角色可以有多个权限,一个权限可以分配不同原创 2021-02-26 18:25:31 · 145 阅读 · 0 评论 -
项目日记(在线办公项目)day2021/02/25
项目日记day0225一、登录视图跳转的改进方法一:使用响应拦截器我们可以这样做:在前端加一个响应拦截器,后端资源给的所有响应都会经过响应拦截器,可以只在响应拦截器中做一下"unlogin"字符串的判断,通过响应拦截器来做统一的视图跳转。响应拦截器是axios的一大特色之一。在前端项目中的main.js加入以下代码:// 添加响应拦截器Vue.prototype.$axios.interceptors.response.use(response => { let result =原创 2021-02-25 14:29:31 · 211 阅读 · 0 评论 -
项目日记(在线办公项目)day2021/02/24
项目日记day0224一、通过用户登录失败的异常信息来给用户进行提示登陆失败后,我们一般会通过不同的失败信息来提示用户,但目前如果登陆失败,无论是账户名错误或者密码错误都只会提示登陆失败。SpringScurity默认将登陆失败的异常封装到session对象中。我们知道,session对象是以键值对的方式存在的,现在我们来探究一下,登陆失败后的session中的全部的键。我们发现登陆失败后,session对象中存在有一个以SPRING_SECURITY_LAST_EXCEPTION为key的键值原创 2021-02-24 13:47:11 · 180 阅读 · 0 评论 -
项目日记(在线办公项目)day2021/02/23
项目日记day0223一、没有加入SpringSecurity前的跨域项目的环境搭建好之后,出现了各种各样的问题,我遇到的第一个问题便是跨域问题:因为是前后端分离的项目,所以跨域是必不可少的。项目开始之前,我分别在前端和后端进行跨域配置:前端跨域主要是对axios的原型中进行配置,在main.js中加入如下代码://将axios注册为Vue的一个原型属性Vue.prototype.$axios= axios.create({ baseURL: 'http://localhost/jiazh原创 2021-02-24 13:42:43 · 285 阅读 · 0 评论 -
详解Java中的枚举
枚举在很多的编程语言中,枚举是一种比较常见的原生类型,枚举是一种比较常见的原生类型,但是在Java里面,一直到 JDK 1.5 之后才正式引入了枚举结构,其主要的目的是进行多例设计模式的替换。提示:实际上,传统的多例设计模式是在进行Java开发的过程中,不得已而使用的一种设计结构,因为需要控制对象产生个数,而传统的多例设计模式需要通过一个具体的static方法来获取指定类型的实例化对象,可是在获得的时候必须传入一些标记,于是很多习惯于使用枚举结构的开发人员来说就表示严重的不习惯。但是对于一直从事J原创 2020-06-28 18:12:37 · 377 阅读 · 0 评论 -
举例说明Java中的多例设计模式
/** * 多例设计模式:类的能够实例化对象的个数是提前固定好的 * @author JIASHIXI * */class Sex{ private String value; public static final int MALE = 0; public static final int FAMALE = 1; private static final Sex MALE_INSTANCE = new Sex("男"); private static final Sex FAMALE_原创 2020-06-27 11:44:09 · 261 阅读 · 0 评论 -
举例说明Java中的单例设计模式
/** * 单例设计模式:在系统中,并不是所有的类都需要无限制的产生实例化对象, * 有一些工具类仅仅只需要一个实例化对象就可以了, * 那么这种情况下,就必须要通过单例结构来实现对象实例化个数的控制。 * 对象实例化个数控制住了,就可以减少无用的垃圾对象空间的产生,从而得到更好的处理性能。 * 从严格意义上来讲 ,单例设计模式分为懒汉式单例设计和饿汉式单例设计 * @author JIASHIXI * */class Singleton{ //饿汉式单例设计:无原创 2020-06-27 11:24:23 · 197 阅读 · 0 评论 -
对于Java中泛型的理解
对Java中泛型的理解在面向对象的开发过程之中,除了有面向对象的三大特征以外,实际上还留有一个最为重要的对象转型的概念,如果说现在要通过向上转型来编写程序,那么一般不会有太大的语法问题,但是反过来,如果说是要以向下转型为例,这个时候就有可能出现类型的转换异常(ClassCastException),如果想要彻底解决这个问题,在JDK 1.5之后就引出了泛型的概念。一、泛型问题的引出在Java编程之中,通过之前的一些列分析我们可以发现,Object类型可以实现任意数据类型的传递,于是,现在假设有这样的一原创 2020-06-25 20:57:50 · 204 阅读 · 0 评论 -
详解Java中的接口
文章目录一、接口的基本定义二、接口相关说明三、适配器设计模式(Adapter)四、工厂设计模式(Factory)五、代理设计模式(Proxy)六、定义接口标准七、接口定义加强八、抽象类与接口的区别一、接口的基本定义如果进行Java技术的学习和项目应用,不懂得接口的设计,那么基本上就等同于你不会Java,因为在整个程序设计之中,接口一直是一项最为重要的技术,同时随着JDK版本的更新,接口也会有一些新的特性出现。接口属于一种特殊的Java程序结构体,它最大的特殊之处在于其主要的组成就是全局常量和抽象方法(原创 2020-05-27 20:22:55 · 1398 阅读 · 0 评论 -
关于Java中对包装类的应用
关于Java中对包装类的应用一、为什么要引入包装类?我们知道,在Java之中所有引用数据类型都可以自动的向Object类对象进行向上转型,这样就可以通过Object实现参数的统一,但是这时我们就会发现一个问题:基本数据类型不属于引用类型,那么这个时候就会发现操作上的偏差,所有为了解决这个问题,早先提出的方案就是利用一自定义的类的形式实现基本数据类型的包装。范例:使用类结构包装基本数据类型class IntWrapper { // 做一个包装类 private int data ; // 保存整型数原创 2020-05-25 14:02:00 · 578 阅读 · 0 评论 -
关于在Java中对Object类的应用
关于对Object类的应用一、对于Object类的概述及其作用Object类是一个在Java之中内部所提供的一个系统类,在整个的程序设计与开发之中,Object类都有着非常重要的作用,他可以真正实现参数的统一。实际上在整个Java设计体系过程之中,几乎所有用户定义的类全部都是Object的子类(Object类是所有类的父类,包括系统类和用户自定义类),这样的概念就意味着以下的两种类定义的最终效果是完全相同的。class Book{}class Book extends Obje原创 2020-05-25 13:57:42 · 828 阅读 · 0 评论 -
Java中关于抽象类的深刻理解
Java中关于抽象类的深刻理解一、在学习抽象类之前的友情提示:1、关于抽象类的理解:如果仅仅只是学习Java基础知识,那么很难完全理解领悟抽象类的作用;随着学习的深入,会有专门的类库的Java系统类库的讲解,会有大量的抽象类出现,通过系统提供的抽象类的设计可以加深抽象类的概念;如果想真正的将抽象类运用到极致,就必须进行一些实际的项目演练或者进行更加深入的学习。2、考虑过为什么要使用抽象类吗?在整个面向对象程序设计之中,如果想扩充类的功能,最佳的做法是通过继承的方式来处理,但是对于普通类原创 2020-05-24 16:44:27 · 363 阅读 · 0 评论