自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

夏安的博客

杭州某公司的一个小白程序员

  • 博客(112)
  • 收藏
  • 关注

原创 2019 阿里系 BTA JAVA 面试题

一、Java基础什么是字符串常量池? String为什么是不可变的? String s = new String("xyz");究竟产生了几个对象,从JVM角度谈谈? String拼接字符串效率低,你知道原因吗? 你真的了解String的常见API吗? Java中的subString()真的会引起内存泄露么? 浅析Java中的final关键字? 浅析Java中的static关键字...

2019-11-20 14:40:02 575 2

原创 Java String对象的问题 String s=“a“+“b“+“c“+“d“ 变态问题

Java String对象的问题 String s="a"+"b"+"c"+"d"1, String s="a"+"b"+"c"+"d"创建了几个对象(假设之前串池是空的)2,StringBuilder sb = new StringBuilder();String a = "a";String b = "b";String c = "c";String d = "d...

2019-11-21 17:55:52 1002

原创 JVM 对 Java 的原生锁做了哪些优化?

自旋锁在 Java 6 之前,Monitor 的实现完全依赖底层操作系统的互斥锁来实现。由于 Java 层面的线程与操作系统的原生线程有映射关系,如果要将一个线程进行阻塞或唤起都需要操作系统的协助,这就需要从用户态切换到内核态来执行,这种切换代价十分昂贵,很耗处理器时间,现代 JDK 中做了大量的优化。一种优化是使用自旋锁,即在把线程进行阻塞操作之前先让线程自旋等待一段时间,可能在等待期间...

2019-11-20 16:51:49 1854

原创 什么是可重入性,为什么说 Synchronized 是可重入锁?

什么是可重入性,为什么说 Synchronized 是可重入锁?可重入性是锁的一个基本要求,是为了解决自己锁死自己的情况。一个类中的同步方法调用另一个同步方法,假如 Synchronized 不支持重入,进入 method2 方法时当前线程获得锁,method2 方法里面执行 method1 时当前线程又要去尝试获取锁,对 Synchronized 来说,可重入性是显而易见的,刚才提到,在执...

2019-11-20 14:56:58 3897

原创 Synchronized 原理是什么? 2019 java 后端面试

Synchronized 是由 JVM 实现的一种实现互斥同步的一种方式,如果你查看被 Synchronized 修饰过的程序块编译后的字节码,会发现,被 Synchronized 修饰过的程序块,在编译前后被编译器生成了 monitorenter [ˈmɒnɪtə(r)] [ˈentə(r)] 和 monitorexit 两个字节码指令。这两个指令是什么意思呢?在虚拟机执行到 moni...

2019-11-20 14:52:34 175

原创 为什么Java不支持运算符重载

操作符重载增加了复杂性,这与JAVA最初的设计思想不符,它并不实用,反而增加了程序的阅读性。

2019-11-14 10:55:37 173

转载 为什么wait 和 notify 在 Object 类而不在 Thread 中声明?

1) wait 和 notify 不仅仅是普通方法或同步工具,更重要的是它们是 Java 中两个线程之间的通信机制。对语言设计者而言, 如果不能通过 Java 关键字(例如 synchronized)实现通信此机制,同时又要确保这个机制对每个对象可用, 那么 Object 类则是的正确声明位置。记住同步和等待通知是两个不同的领域,不要把它们看成是相同的或相关的。同步是提供互斥并确保 Java 类的...

2019-11-14 09:42:18 1137

原创 前端传入代码 带 html 文本,需要用 该方法进行处理

前端传入代码 带 html 文本,需要用 该方法进行处理String jsonData = StringEscapeUtils.unescapeHtml(getRequest().getParameter("jsonData")); List<PyfakcxxModel> modelList = JSON.parseArray(jsonData, Pyf...

2019-08-28 17:03:44 391

原创 Oralce 增加 删除 主键 索引

declarev_key varchar2(500);v_sql varchar2(500);begin select max(cu.constraint_name) into v_key from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_nam...

2019-08-23 16:46:26 187

原创 JAVA 开发 工程师 面经 大厂 2019

#一面1.写出知道的所有单例模式的写法首先我们先了解一下什么是单例?答:单例模式是一种设计模式,是指一个类仅仅能有一个实例。我们平常用到的都是原型,原型指的是一个类可以有多个实例,称为原型。单例有三种写法:/** * *@类名称:ZooKeeperProSync.java *@类描述:双重锁 双重锁写法用到了两个synchronized, * ...

2019-08-20 17:10:59 248

原创 List 去重复 面试题 含有 jdk1.8 方法

面试中经常被问到的list如何去重,一般是口述,不需要代码体现,这个时候,思维一定要清晰,可以罗列出集中去重的方法,以展现你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固 下面,我就将五种方法逐一展现 新建一个list数组: List list = new ArrayList(); list.add(26); list.add(39); list.add(5...

2019-08-14 20:34:43 369

转载 SpringCache与redis集成,优雅的缓存解决方案

转载:https://www.cnblogs.com/chenkeyu/p/8028781.html 缓存可以说是加速服务响应速度的一种非常有效并且简单的方式。在缓存领域,有很多知名的框架,如EhCache、Guava、HazelCast等。Redis作为key-value型数据库,由于他的这一特性,Redis也成为一种流行的数据缓存工具。  在传统方式下对于缓存的处理代码是非常臃...

2019-08-12 14:17:41 112

原创 Excel java 输出 并打包

js 请求 //登记表输出 $("#btn_djbsc").click(function() { debugger; var keys = $("#GzlxstjRwTabGrid").getKeys(); if(keys.length == 0){ $.alert("请至少选择一条数据!"); }else{ //构建form ...

2019-08-07 14:40:03 215

原创 BigDecimal 超过16位有效位的数进行精确运算

Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算...

2019-08-05 14:06:59 5045

原创 input 数值上限 下限 验证 , 验证保留 几位小数 ,验证只能输入数值类型

赶紧 谢谢我。<div class="input-group" style="margin-left:20px"><span style="line-height: 25px;padding: 2px;" class="pull-left">下限</span><input type="text" id="fsdxx_'+index+'"...

2019-07-26 17:59:52 673

原创 input 框补小数点

首先在input 中加入onblur 这个参数<input type="text" id="fsdxx_'+index+'" name="fsdxx_'+index+'" onblur="supplementDecimalPoint(this)" onkeydown="onlyNum(event)" validate="{required:true,checkNumber:true,...

2019-07-26 17:55:23 468

原创 java 写 pdf 方式

jsp 页面<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib prefix="s" uri="/struts-tags"%><!doctype html><html><head><%@ include file...

2019-07-04 17:11:39 218

原创 js 使用递归 发生 空值 undefined

undefined,原因是在递归函数内部没有对递归函数进行return,外层函数无法看到返回值。//判断当前位置的 字母时候被使用function judgeHasBeenUsed(location){ debugger; //当前要使用的英文字母 下标开关 var flag = UsedFlagArr[location]; if(flag ==0){ UsedFlag...

2019-06-28 11:26:40 1825

原创 JS 截取字符串 简单

例如一串 字符串 “qwerqwer&123123” var ids = "qwerqwer&123123"; //直接获取这个截取的特殊字符 的位置var idsLocal = ids.lastIndexOf("&"); //直接截取就好了啊,从0 开始,到特殊字符的位置。 ids = ids.slice(0,idsLoc...

2019-06-27 11:07:02 218

原创 oracle 忘记 用户名密码 解决办法

首先按下 键盘win+R 输入cmd 打开命令窗口修改用户名密码 :在cmd命令窗口中,输入sqlplus/ as sysdba,回车,进入sql>输入 alter user system identified by admin;行代码的意思就是修改用户名system密码为admin,记得代码末尾要加上分号“;”,不然修改失败...

2019-06-15 13:53:22 441

原创 oracle中 in 和 exists

一般来说,这两个是用来做两张(或更多)表联合查询用的,in是把外表和内表作hash 连接,而exists 是对外表作loop 循环,假设有A、B两个表,使用时是这样的:1、select * from A where id in (select id from B)--使用in2、select * from A where exists(select B.id from B where B....

2019-06-14 09:52:03 548

转载 Java Utils工具类 设计

源码和jar见:https://github.com/evil0ps/utils#Java Utils---封装了一些常用Java操作方法,便于重复开发利用.另外希望身为Java牛牛的你们一起测试和完善,欢迎入群263641914 一起封装和完成常用的Java代码。节约撸码时间以方便有更多的时间去把妹子~#开发环境 Win7x64 JDK1.7 ID...

2019-05-23 14:27:25 842

原创 获取当天是星期几

/** * *@描述:获取当天是星期几 *@创建人:kwy *@创建时间:Aug 22, 20181:38:55 PM *@修改人: *@修改时间: *@修改描述: *@return */ private String getDayOfWeek(){ int index = Calendar.getInstance().get(Calendar.DA...

2019-05-22 11:48:37 311

原创 java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For i

java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "</"提交内容存在HTML 文本的时候 提交表单会报错 ,需要用工具修复一下String jsonData = StringEscape...

2019-05-22 11:47:23 1097

原创 JqGrid 改变 列名 称

       loadComplete:function(){            if ($("#dm").val() == '10248') {                    $("#tabGrid").hideCol("jsjg");                    $("#tabGrid").setLabel("cs","初审",'','');      

2019-01-16 16:22:37 1529

原创 MyBatis——mapper.xml 需要注意的地方和一些官方规则

映射文件是以&lt;mapper&gt;作为根节点,在根节点中支持9个元素,分别为insert、update、delete、select(增删改查);cache、cache-ref、resultMap、parameterMap、sql。配置文件如下&lt;?xml version="1.0" encoding="UTF-8" ?&gt; &lt;!DOCTYPE mapper ...

2019-01-16 09:52:09 1434

原创 解决 com.alibaba.fastjson.JSONException: illegal identifier : 问题

问题还原:在js 中 使用var jsonArray=[];obj.test= $(item).attr("test");jsonArray.push(obj);jsonData=JSON.stringify(jsonArray);传入后端进行解析String jsonData = StringEscapeUtils.unescapeHtml(getRequest()....

2019-01-16 09:51:55 38081 2

原创 发起Ajax判断

//判断审批业务是否配置过审批流程 function checkExist(ywdm){ var flag;//true为已配置过 false为未配置过 jQuery.ajaxSetup({async:false}); $.post(_path + '/query/query_cxSpYwdmExist.html',{"ywdm":ywdm},function(data){fl...

2018-12-05 09:54:37 145

原创 关于Form 表单标签内书写的注意事项

加上theme="simple" 后,form中的每个单元元素不会自动换行如果出现二级页面无法提交 问题,请查看form 中 是否忘记写name 属性 如果必要最好用 role="form" 强标识一下onsubmit="return false;" 此属性 防止只有一个input 框时按“Enter”候自动提交表单,建议所有的form 必须加上...

2018-12-05 09:54:28 384

原创 JSP 关于内置表控制 个位、 十位、百位控制项的书写模式

&lt;s:if test="(xtnz % 1000)/100 == 1"&gt; 百位&lt;/s:if&gt;&lt;s:if test="(xtnz % 100)/10 == 1"&gt; 十位&lt;/s:if&gt;&lt;s:if test="xtnz % 10 == 1"&gt; 个位&lt;/s:if&gt; 

2018-12-05 09:54:23 158

原创 Js 圆角 渐进色

/* border-radius:8px; *//* 圆角 */style="background: linear-gradient(to right,rgb(255, 255, 255) 5%, '+mainsb+' 65%,'+mainsb+' 30%); width:'+item.rateList[index]+';" 

2018-12-05 09:54:19 196

原创 js 使用迭代器 判断 重复

// 校验重复 var jcs=[]; $("#tabGrid4").find("tr.jqgrow ").each(function(i, item){ jcs.push($(item).find("input.jcmc").val()+"_"+$(item).find("input.jczz").val()+"_"+$(item).find("input.cbs&q

2018-12-05 09:54:15 302

原创 JqGrid 关于获取总共行数 问题

需要在grid 参数中填写                   rownumbers:true,//行数         iewrecords : true, // 是否显示行数                   ndex = jQuery("#xgTabGrid").getGridParam("records")+1;或者 直接 使用  这个var count = $("#...

2018-12-05 09:54:09 7351 8

原创 滚动条参数

&lt;div style="height: 200px; margin-bottom: 20px; overflow-y: scroll; overflow-x: hidden;"&gt;overflow-y: scroll; overflow-x: hidden;" 

2018-12-04 14:55:13 287

原创 Grid 列 超出界面 的问题

 

2018-12-04 14:54:23 3341

原创 jQuery没有reset() 方法 只能使用原生进行 重置表单

document.getElementById("glzhForm").reset();

2018-12-04 14:52:48 431

原创 jQuery 的 change函数

仅仅适用于,&lt;input&gt;、&lt;textarea&gt;、&lt;select&gt;三种标签。JavaScript(或者jQuery框架)对标签的操作,都是操作的内存,而不是操作的你看到的html页面上的东西,是对内存中的DOM树的操作...

2018-12-04 14:51:48 755

原创 model 中直接调取 时间 方法

private String year; //年 private String month; //月 private String day; //日/** * *@描述:返回当前中文日期 二○一八年十月三十日 *@创建人:kwy *@创建时间:2018-12-03 下午01:52:56 *@...

2018-12-04 10:28:58 503

原创 java.sql.SQLException: ORA-00918: 未明确定义列ORA-00918

 java.sql.SQLException: ORA-00918: 未明确定义列ORA-00918意思就是sql查询出来有两个或者多个相同的列,Oracle MyBatis 它不知道怎么办(resultType),所以就报这个异常。小蠢蛋,这回解决了吧。...

2018-12-04 10:25:19 8944 2

原创 按照时间 查找数据库历史存储内容

--按照时间 查找数据库历史存储内容select * from jw_jg_jzgxxb as of timestamp to_timestamp('2018-09-27 18:00:00', 'yyyy-mm-dd hh24:mi:ss') where 1=1;

2018-12-04 10:25:13 527

空空如也

空空如也

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

TA关注的人

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