开发相关
程序猿老曹
微博 同名~欢迎骚扰~~~~~
展开
-
java使用try和finally不使用catch的原因和场景
JDK并发工具包中,很多异常处理都使用了如下的结构,如AbstractExecutorService,即只有try和finally没有catch。class X { private final ReentrantLock lock = new ReentrantLock(); // ... public void m(){ lock.lock(); // block until c转载 2017-06-16 09:36:10 · 9627 阅读 · 0 评论 -
【详解】为什么选择Spring Boot作为微服务的入门级微框架
本文为普元云计算高级工程师许二虎在普元云计算架构设计群的微课堂分享。如需加入普元新一代数字化企业云平台研发设计群参与微课堂、架构设计与讨论直播,请直接回复此公众号:“加群 姓名 公司 职位 微信号”。1. Spring Boot是什么,解决哪些问题 1) Spring Boot使编码变简单 2) Spring Boot使配置变简单 3转载 2017-06-21 16:29:08 · 6271 阅读 · 0 评论 -
微服务架构的设计模式
前不久,Java Code Geeks发表了一篇文章,分析单体应用与微服务的优缺点。近日,该网站又发表了一篇文章,提供了六种微服务架构的设计模式。聚合器微服务设计模式这是一种最常用也最简单的设计模式,如下图所示:聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数据进行处理展示。它也可以是一个更高层次的组合微服务,对检索到的数据增加业转载 2017-06-21 16:27:09 · 6056 阅读 · 0 评论 -
Mysql 列转行统计查询 、行转列统计查询
-- ------------------------------ Table structure for `TabName`-- ----------------------------DROP TABLE IF EXISTS `TabName`;CREATE TABLE `TabName` ( `Id`int(11)NOT转载 2017-06-23 09:30:35 · 5383 阅读 · 0 评论 -
MySQL中concat函数(连接字符串)
MySQL中concat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。注意:如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式转载 2017-06-23 09:32:16 · 5758 阅读 · 0 评论 -
Spring 事务管理机制概述
摘要: 一般地,用户的每次请求都对应一个业务逻辑方法,而一个业务逻辑方法往往包括一系列数据库原子访问操作,并且这些数据库原子访问操作应该绑定成一个事务来执行。然而,在使用传统的事务编程策略时,程序代码必然和具体的事务操作代码耦合,而使用Spring事务管理策略恰好可以避免这种尴尬。Spring的事务管理提供了两种方式:编程式事务管理和声明式事务管理。本文通过在对Spring事务管理AP转载 2017-06-27 11:11:36 · 3939 阅读 · 0 评论 -
责任链模式综述(基础篇)
摘要: 本篇综述责任链模式的提出动机、原理结构、典型实现和应用场景,并结合具体实例展现了其灵活性、可插拔性和松耦合性。首先,结合我们日常生活中“打扑克”的例子引出了责任链模式产生动机,并揭示了其应用场景。紧接着,我们概述了责任链模式的内涵和结构,即通过建立一条责任链来组织请求的处理者,请求将沿着链进行传递,而请求发送者无须知道请求在何时、何处以及如何被处理,实现了请求发送者与处理者的解耦转载 2017-06-27 11:21:42 · 3822 阅读 · 0 评论 -
HttpSessionListener的用法
Session创建事件发生在每次一个新的session创建的时候,类似地Session失效事件发生在每次一个Session失效的时候。这个接口也只包含两个方法,分别对应于Session的创建和失效:# public void sessionCreated(HttpSessionEvent se); # public void sessionDestroyed(HttpSession转载 2017-07-06 10:40:43 · 2136 阅读 · 0 评论 -
springboot(十四):springboot整合shiro-登录认证和权限管理
这篇文章我们来学习如何使用Spring Boot集成Apache Shiro。安全应该是互联网公司的一道生命线,几乎任何的公司都会涉及到这方面的需求。在Java领域一般有Spring Security、Apache Shiro等安全框架,但是由于Spring Security过于庞大和复杂,大多数公司会选择Apache Shiro来使用,这篇文章会先介绍一下Apache Shiro,在结合Spri转载 2017-06-28 14:43:31 · 4778 阅读 · 0 评论 -
MySQL 处理重复数据
防止表中出现重复数据你可以在MySQL数据表中设置指定的字段为 PRIMARY KEY(主键) 或者 UNIQUE(唯一) 索引来保证数据的唯一性。让我们尝试一个实例:下表中无索引及主键,所以该表允许出现多条重复记录。CREATE TABLE person_tbl( first_name CHAR(20), last_name CHAR(20), se转载 2017-07-10 10:50:04 · 1838 阅读 · 0 评论 -
java List(分割)分批处理
public static void main(String[] args) { List dataList = new ArrayList(); for(int i=0;i<12888;i++) dataList.add(i); //分批处理 if(null!=dataList&&dataList.size()>0){ int pointsDataLimit = 1转载 2017-08-16 17:36:59 · 603 阅读 · 0 评论 -
windows下java项目cpu占用较高原因分析
在windows平台上要找出到底是哪个线程占用的cpu还不那么容易,linux用top就简单多了最后的解决方法:1.找到java进程对应的pid。找pid的方法是:打开任务管理器,然后点击 "查看" 菜单,然后点击 "选择列",把pid勾上,然后就可以在任务管理器里面看到所有进程的pid值了。(也可以用第三步中提到的工具直接查看)2.然后把java进程导转载 2017-06-21 11:02:13 · 6572 阅读 · 0 评论 -
面向接口编程详解(一)——思想基础
我想,对于各位使用面向对象编程语言的程序员来说,“接口”这个名词一定不陌生,但是不知各位有没有这样的疑惑:接口有什么用途?它和抽象类有什么区别?能不能用抽象类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是什么意思?有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问。1.面向接口编程和面向对象编程是什么关系首先,面向接口编程和面向对象编程并不是转载 2017-06-21 10:53:30 · 10971 阅读 · 0 评论 -
Java实现几种常见排序方法
日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。/** * 冒泡法排序 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为转载 2017-06-01 17:05:02 · 14886 阅读 · 1 评论 -
HTTP请求错误400、401、402、403、404、405、406、407、412、414、500、501、502解析
HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。 HTTP 错误 401 401.1 未授权:登录失败 此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。 请与 Web 服务器的管理员联系,以确认您是否具有访问所请求资源的权限。 401.2 未授权:服务器的配置导致登录失败 此错误表明转载 2017-06-16 09:45:44 · 11151 阅读 · 0 评论 -
java生成wsdl的客户端代码
jdk的bin目录下的wsimport.exe,可以根据 wsdl地址生成java的客户端代码。使用方法c:\Program Files\Java\jdk1.8.0_65\bin>wsimport -keep -d c:\class -s c:\source -p com.test -verbose http://127.0.0.1:8080/BaseInfoServic原创 2017-06-01 10:39:33 · 13082 阅读 · 0 评论 -
javascript 小数加减乘除 精度问题
在javascript中,当你使用小数进行加减乘除运算时,你会发现,所得到的结果有时后面带有长长的一段小数,使运算变得复杂,并且影响计算结果。上网查询了一下原因,大致如下:在javascript中,带小数的数据运算时总会出现好多位小数.这是因为在javascript中浮点数的计算是以2进制计算的。/** * 加法运算,避免数据相加小数点后产生多位数和计算精度损失。 * *转载 2017-06-01 10:31:26 · 12596 阅读 · 0 评论 -
Mysql 导入数据慢的解决方法
在导入MySQL 数据的时候,数据量较大的情况下 比较慢。。。尝试一下方式会提高导入速度找到 my.cnf 文件,添加以下两行skip_innodb_doublewriteinnodb_flush_log_at_trx_commit = 0重启Mysql,重新导入数据,见证奇迹。skip_innodb_doublewrite 禁原创 2017-05-31 11:57:42 · 20200 阅读 · 0 评论 -
增加Tomcat连接数
在tomcat配置文件server.xml中,找到<Connector port="8080" ...修改相关参数参数说明minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10 maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75 acceptCount:允许的最大连接数,应大于等于ma原创 2017-05-18 16:23:41 · 12290 阅读 · 0 评论 -
Eclipse Properties插件安装
3、安装,重启Eclipse即可4、安装后效果原创 2017-05-17 20:04:27 · 6238 阅读 · 0 评论 -
elasticsearch 初学入门
初学elasticsearch,查阅无数资料终得运行成功,本文环境基于Java、Windows。elasticsearch版本:5.0.1,下载ZIP包,地址:https://www.elastic.co/downloads/elasticsearch。下载后解压到C:\elasticsearch-5.0.1运行elasticsearch.bat,就在本机开启一个elast原创 2017-05-17 11:29:33 · 12316 阅读 · 0 评论 -
Selenium入门---JAVA搭建
1、本文环境基于windows,java,chrome。配置JDK环境,不再赘述。jar包下载地址:http://www.seleniumhq.org/download/2、安装谷歌浏览器。3、下载chromedriver.exe,下载完拷贝到C:\Windows\System32。下载地址:http://chromedriver.storage.googleapis.com/原创 2017-05-17 11:25:05 · 13306 阅读 · 0 评论 -
Ngnix 跨域访问
Ngnix 跨域访问添加红色部分即可server { listen 80; server_name www.test.com;add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Headers X-Requested-With; add原创 2015-04-02 15:59:33 · 12436 阅读 · 0 评论 -
JQuery 懒加载
$(function() { $('img.lazy').lazyload({ effect:'fadeIn', event: 'scrollstop' }); });原创 2015-04-02 15:57:47 · 12062 阅读 · 0 评论 -
Java 自定义注解实现网络访问重试
Java自定义注解实现网络访问重试import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.原创 2015-03-31 17:54:11 · 12793 阅读 · 0 评论 -
JAVA中的线程安全与非线程安全
原文:http://blog.csdn.net/xiao__gui/article/details/8934832ArrayList和Vector有什么区别?HashMap和HashTable有什么区别?StringBuilder和StringBuffer有什么区别?这些都是Java面试中常见的基础问题。面对这样的问题,回答是:ArrayList是非线程安全的,Vector是线程安全的;Has转载 2017-08-21 10:40:09 · 294 阅读 · 1 评论