关闭
当前搜索:

设计模式之模板方法模式

定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。                       模板方法模式结构图: AbstractClass是抽象类,其实也就是一个抽象模板,定义并实现了一个模板方法。这个模板方法一般是一个具体方法。它给出了一个顶级逻辑的骨架,而逻辑的组成步骤在相应的抽象操作中,推迟到子类实现。...
阅读(67) 评论(0)

protected修饰符详解-源于Cloneable接口

Cloneable接口是一个空接口,仅用于标记对象,Cloneable接口里面是没有clone()方法,clone()方法是Object类里面的方法,默认实现是一个Native方法。今天在做对象拷贝的时候发现一个问题,某类实现Cloneable接口后,还要重新实现Object类中的clone()方法: 感觉有点奇怪,这个类里也没做什么特殊的操作啊,就是调用一下父类的clone方法: ...
阅读(97) 评论(0)

Java高级工程师面试题汇总(三)

1.catch Exception 和catch Throwable的区别  解析:Java的异常体系 Throwable: Java中所有异常和错误类的父类。只有这个类的实例(或者子类的实例)可以被虚拟机抛出或者被java的throw关键字抛出。同样,只有其或其子类可以出现在catch子句里面。 Error: Throwable的子类,表示严重的问题发生了,而且这种错误是不可恢复的。 E...
阅读(103) 评论(0)

Java高级工程师面试知识汇总(二)

1.java的内存管理  解析:Java的内存管理就是对象的分配和释放问题。通常我们定义一个基本数据类型的变量,一个对象的引用,还有就是函数调用的现场保存都使用内存中的栈空间;在Java中,内存的分配是由程序完成的,程序员需要通过关键字new 为每个对象申请内存空间 (基本类型除外),所有的对象都在堆(Heap)中分配空间。而内存的释放是由垃圾收集器(Garbage Collection,GC)...
阅读(244) 评论(0)

Java高级工程师面试知识汇总(一)

1.String、StringBuffer与StringBuilder的区别  解析:(1)String是字符串常量,StringBuffer是字符串变量,线程安全的,StringBuilder也是字符串变量,非线程安全的。(2)String和StringBufferd的主要性能区别在于String是不可变的对象,因此每次对String类型的值进行变更的时候就等同于生成了一个新的String对象...
阅读(307) 评论(0)

docker安装mysql、tomcat、nginx,应用部署

1.首先下载镜像   docker pull mysql, docker pull tomcat:8(这里我用的是tomcat8做演示)。 2.工程的sql脚本文件gznb_college.sql放在目录/usr/local/sql_scripts下,运行mysql的容器,   执行命令:docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -...
阅读(218) 评论(0)

nginx反向代理proxy_pass不配置URI引起的思考

反向代理proxy_pass的语法结构为proxy_pass URL,其中,URL为要设置的被代理服务器的地址,包含传输协议、主机名称或IP地址加端口号、URI等要素。    例如:proxy_pass http://www.myweb.com/uri;   1. 如果被代理服务器是一组服务器的话,可以使用upstream指令配置后端服务器组。    upstream proxy_svrs...
阅读(183) 评论(0)

git怎么从将在master分支上做的修改提交到develop分支

我们经常会有这样的需求,在某个分支上改的代码想提交到另一个分支,而当前修改的分支则不再push到远端。   假如我在master上修复了某个bug,但是master被锁定了,我想提交到dev分支,那么使用 cherry-pick可以满足我们的要求:       如图所示:在master上执行commit操作,   git log  查看提交的id,   然后切换到真正要提代码的分支,ch...
阅读(484) 评论(0)

mongodb后台运行

如果想在后台运行,启动时只需添加 --fork函数即可。 bin/mongodb  --fork --dbpath=//  --logpath=//  --logappend 如:./mongod --fork --logpath=/data/db/log.log...
阅读(80) 评论(0)

怎样将本地的代码提交到gitLab

1.登录gitLab,在相应的组下创建project  2. 远程仓库工程已经创建完成,接下来切换本地计算机工程目录,执行如下命令:     git  init     git remote add origin git@10.66.2.13:integrationDevTeam/gznb_college.git (gitLab刚刚创建的工程地址)     git add . (不...
阅读(100) 评论(0)

mybatis 拼接动态表名、字段名

今天在项目中遇到个需求是要动态的根据前台传入的字段名称和升降序条件在mybatis里动态拼接sql语句进行查询。现在对解决方法进行下总结,希望对遇到同样问题的伙伴有些帮助。   动态SQL是mybatis的强大特性之一,mybatis在对sql语句进行预编译之前,会对sql进行动态解析,解析为一个BoundSql对象,也是在此处对动态sql进行处理。        这里我们详细说下动态...
阅读(640) 评论(0)

java Long类型转为json后数据损失精度

最近在项目开发中,使用spring boot  +mybatis的架构,数据库设计主键id时定义为bigint类型,使用mybatis的自动生成代码后没注意,主键在pojo里的类型为Long。 查询时获取的对象列表取出的数值没有问题,但转为json传到前端后,id的数据始终不是数据库查出来的那个。   数据库表结构设计:   根据外键abum_id在数据库中查询的结果:...
阅读(2404) 评论(0)

mybatis 一对多分页查询数据条数不匹配解决

sql:SELECT abum.*,         summary.id AS summary_id,         summary.summary,         summary.type AS summary_type,         summary.compositor         from         `tp_abum` abum         left...
阅读(3466) 评论(4)

js正则表达式

1.正整数和小数位为1-2位的小数,不包括0,0.0,0.00等的格式 ^([1-9]\d*|[0]{1})(\.[0-9]{1,2})?$ 2.包含数字、字母和斜杠,并且不能以斜杠开头、结尾 ^(?!\/)(?!.*?\/$)[a-zA-Z0-9\/]+$...
阅读(134) 评论(0)

使用Ant给EJB项目编译、打包、发布

(1)在EJB项目下建立build.xml文件 (2)在文件中录入如下内容:                                                                                                                  todir="${jbo...
阅读(244) 评论(0)
17条 共2页1 2 下一页 尾页
    个人资料
    • 访问:11129次
    • 积分:266
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:2篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论