- Java开发者必备:5个提升编码效率的实用技巧
Java鼠鼠吖
开发语言java
导语在日常开发中,巧妙运用语言特性可以大幅提升代码质量和开发效率。本文分享5个经过验证的Java实用技巧,涵盖资源管理、集合操作和API设计等场景,附可直接复用的代码模板,帮助您写出更优雅健壮的代码。免费获取Java学习资料一、自动化资源管理技巧场景:传统try-finally代码冗长且易遗漏关闭操作改进方案://传统写法(易出错)FileInputStreamfis=null;try{fis=n
- 关于电商秒杀系统中防超卖、以及高性能下单的处理方案简述
Java鼠鼠吖
java
秒杀抢购系统的成功平稳运行,有一些需要注意的知识点。1高并发,以及刷接口等黑客请求对服务端的负载冲击2高并发时带来的超卖,即商品数量的控制3高负载下,下单的速度和成功率的保证4其他以秒杀单品为例,如抢小米手机。解决方案探讨:第一步限制前端发来的请求量免费领取Java学习资料譬如定在了周二10点开启抢购,那么在之前的一周时间内,都会有预约通知,或者普通的用户浏览。通过预约量、浏览量等数据分析,大概能
- Kubernetes微服务发布治理与Java容器化终极实践指南
ivwdcwso
运维与云原生kubernetes微服务javak8s容器云原生
从镜像瘦身到零宕机发布,构建高可用云原生架构引言:云原生时代的挑战在微服务架构中,服务实例的动态管理、版本发布的安全可控、资源的精细化利用成为核心挑战。Kubernetes作为容器编排的事实标准,结合Java生态的容器化优化,能有效解决这些问题。本文将系统化拆解关键实践。一、Java容器化:从臃肿到极致优化1.镜像瘦身三大利器问题:传统JDK镜像(>300MB)导致节点资源浪费,部署密度低。解决方
- docker 命令模版 java容器
study-100
dockerjava容器
创建启动dockerdockerrun-d-p9087:9085--restartalways--nameauth-sys--restartalways-v/home/mvsoft/jenkins/auth/:/data/java:8java-jar/data/api.jar
- 闭环变更管理:从拦截到回滚的全链路实践
ivwdcwso
运维与云原生变更管理ecsaws发布全链路
在AWSECS上构建Java容器化应用的坚不可摧发布体系引言:为什么变更管理需要闭环?生产环境的一次变更如同一场精密的外科手术——需要术前检查(拦截风险)、术中监护(监控预警)、渐进治疗(灰度发布)和应急预案(回滚机制)。本文将揭示如何在AWSECS上为Java容器化应用构建全闭环变更管理体系,实现变更零事故的核心目标。一、事前拦截:构建发布防火墙拦截点1:代码质量闸门graphLRA[GitPu
- JAVA容器
hqxstudying
java链表b树
在Java里,容器类的底层实现机制和设计思想十分复杂,下面将从多个维度深入剖析:一、Collection接口体系1.List接口ArrayList动态扩容机制:当数组容量不足时,会重新创建一个容量为原数组1.5倍的新数组,并把原数组的内容复制过去。比如,初始容量为10,添加第11个元素时,就会触发扩容操作,新容量变为15。Fail-Fast机制:在使用迭代器遍历ArrayList时,如果发现集合的
- JAVA基础——集合知识点整理
溯堂夜话
javapython开发语言
一、集合概述1.1集合概念集合、数组都是对多个数据进行存储操作的结构,简称Java容器。说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)1.2数组在存储多个数据方面的特点:一旦初始化以后,其长度就确定了。数组一旦定义好,其元素的类型也就确定了。我们也就只能操作指定类型的数据了。1.3数组在存储多个数据方面的缺点:一旦初始化以后,其长度就不可
- Java学习——Day11:java集合
Glücklich
Java学习笔记java后端
四、java集合4.1Java集合框架概述一方面,面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。另一方面,使用Array存储对象方面具有一些弊端,而Java集合就像一种容器,可以动态地把多个对象的引用放入容器中。集合、数组都是对多个数据进行存储操作的结构,简称Java容器。数组在内存存储方面的特点:数组初始化以后,长度就确定了。数组声明的类型,就决定了进行
- JAVA面试宝典(纯享版)
爱技术的大龄码农
java面试开发语言设计模式
一、Java基础1、Java开发平台都有什么Ee:webSe:客户端Me:嵌入式应用开发2、Jdk和jre的区别Jdk是开发人员使用Jre是java程序运行平台3、list、set、map的区别List和set是conllection的子类Java容器分为Collection和Map两大类,Collection集合的子接口有Set、List、Queue三种子接口。我们比较常用的是Set、List,
- java实习生面试题_java实习生面试题(含答案)
11先生
java实习生面试题
1.Java容器框架有哪些?Java容器框架中有两个名称分别为Collection和Set的接口2.list,map,set,array,它们有什么区别(推荐学习:java实习生面试题)List接口主要有三个实现类:LinkedList,ArrayList,Vector.LinkedList:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址ArrayLis
- java 数据结构常见面试题
m0_74824592
面试学习路线阿里巴巴java数据结构开发语言
1、Collection和Collections有什么区别?java容器分为两大类,集合序列和键值对。其中Collection是所有集合继承的最顶层接口,其中声明的方法有对集合的操作的增删改查等,所有具体的集合类都继承这个接口。例如ArrayList,HashSet等。Collections是包装类,,其中包含很多静态方法,理解为操作集合的工具类。例如:add()sort()等。2、List、Se
- java容器 LIst、set、Map
大丈夫在世当日食一鲲
个人java学习小结javalist开发语言
Java容器中的List、Set、Map是核心数据结构,各自适用于不同的场景一、List(有序、可重复)List接口代表有序集合,允许元素重复和通过索引访问,主要实现类包括:ArrayList底层结构:动态数组实现。特点:支持快速随机访问(时间复杂度O(1)),但插入/删除元素时需要移动数组,效率较低(时间复杂度O(n))。适用场景:读多写少,需频繁按索引查询的场景,如数据缓存。LinkedLis
- JuShaTa: 模块化Java容器的实战指南
农鸽望
JuShaTa:模块化Java容器的实战指南JuShaTaJuShaTa是一个Java容器,提供模块隔离及模块热加载能力。项目地址:https://gitcode.com/gh_mirrors/ju/JuShaTa项目介绍JuShaTa是一个高度灵活的Java容器框架,旨在提供模块间的隔离和热加载能力。它特别适合大型团队协作、微服务整合以及敏捷开发环境。基于SpringBoot构建的JuShaTa
- Java容器异常分析与恢复实战指南
ivwdcwso
运维java开发语言容器
引言在云原生时代,Java应用的容器化部署已成为主流。然而,容器环境下的异常处理相比传统部署模式更为复杂,特别是在处理内存溢出(OOM)、资源限制和服务恢复等方面面临新的挑战。本文将结合实战经验,系统讲解Java容器异常的分析方法、恢复策略与最佳实践。一、容器化Java异常的分类与特点©ivwdcwso(ID:u012172506)1.1内存相关异常Java堆内存溢出java.lang.OutOf
- java容器
练习时长两年半1
java开发语言java
List在Java中,List是一个非常重要的容器接口,它继承自Collection接口,用于存储有序、可重复的元素集合。以下将从基本概念、常用实现类、基本操作、遍历方式以及性能特点等方面详细介绍Java的List容器。基本概念List接口代表一个有序的元素序列,用户可以精确控制每个元素的插入位置,并且可以通过索引访问元素。List允许存储重复的元素,这与Set接口不同,Set不允许存储重复元素。
- 不得不知道的一些Java学习资料
念君思宁
java要笑着学javajvmservlet
Java学习资料下面是我们花费大量精力整理出来的Java学习资料,这套Java学习资料由Java书籍和Java视频两大部分组成,我们会根据Java学习路线,按照由浅至深的顺序进行推荐。您可以根据自身的学习进度和学习情况,自行选择合适的资料进行学习。一、Java书籍1.Java基础书名适读人群描述《HeadFirstJava(中文版)》Java初学者本书文笔十分轻松,采用对话的形式来讲解Java编程
- Java容器化环境一致性:3大绝招教你告别“薛定谔的Bug”!从踩坑到闭眼部署的终极指南
墨瑾轩
Java乐园bug
关注墨瑾轩,带你探索编程的奥秘!超萌技术攻略,轻松晋级编程高手技术宝库已备好,就等你来挖掘订阅墨瑾轩,智趣学习不孤单即刻启航,编程之旅更有趣第一章:为什么你的Java容器像薛定谔的猫?“本地跑得好好的,一上容器就翻车?”“测试环境稳如狗,生产环境秒变脆皮鸭?”这都是环境一致性在作妖!容器化本为解决环境差异而生,但如果连Dockerfile都写得像抽盲盒…(摇头)第二章:容器化环境三大杀手️♀️杀手
- 深入解析 JVM vs JDK vs JRE:三者区别与联系详解
李老头探索
jvmjava开发语言
深入解析JVMvsJDKvsJRE:三者区别与联系详解在学习Java的过程中,JVM、JDK和JRE是最常提到的三个术语。然而,很多初学者甚至有经验的开发者对它们之间的区别和联系常常感到困惑。本文将从基础概念、组成结构和使用场景等方面详细讲解,帮助你彻底搞清楚JVM、JDK和JRE。点击获取2024Java学习资料1.什么是JVM?定义:JVM(JavaVirtualMachine,Java虚拟机
- 【无标题】docker-compose一键部署项目,haproxy容器代理多个web或java容器
m0_68739559
linux
#创建脚本,可以在java环境中运行任何的jar包或者war包 #!/bin/bash /usr/local/jdk/bin/java-jar/java/src/*.?ar一、思路分析:(1)nginx1、下载镜像,将本地的dist项目的目录挂载在容器的/usr/share/nginx/html/2、启动容器3、该项目是一个前后端分离的项目,并非所有的请求都是来自同一个位置,设置请求的时候还是需要
- Java 分布式与微服务架构:现代企业应用开发的新范式
来恩1003
Java从入门到精通架构java分布式
Java学习资料Java学习资料Java学习资料一、引言在当今数字化时代,企业应用面临着越来越高的性能、可扩展性和灵活性要求。传统的单体架构在应对大规模用户访问、复杂业务逻辑和频繁的功能迭代时,逐渐暴露出诸多问题。Java分布式与微服务架构应运而生,为解决这些问题提供了有效的方案。它们使得企业能够构建出更加高效、灵活和可维护的应用系统。二、分布式架构基础2.1分布式架构的概念分布式架构是将一个完整
- Spring MVC 框架:构建高效 Java Web 应用的利器
来恩1003
Java从入门到精通javaspringmvc
Java学习资料Java学习资料Java学习资料一、引言在JavaWeb开发领域,SpringMVC框架是一颗耀眼的明星。它作为Spring框架家族的重要成员,为开发者提供了一套强大而灵活的解决方案,用于构建Web应用程序。SpringMVC遵循模型-视图-控制器(MVC)设计模式,将业务逻辑、数据展示和用户交互进行了有效的分离,使得代码结构清晰、易于维护和扩展。二、MVC设计模式概述2.1基本概
- Java 性能优化与新特性
来恩1003
Java从入门到精通java
Java学习资料Java学习资料Java学习资料一、引言Java作为一门广泛应用于企业级开发、移动应用、大数据等多个领域的编程语言,其性能和特性一直是开发者关注的重点。随着软件系统的规模和复杂度不断增加,对Java程序性能的要求也越来越高。同时,Java语言也在不断发展,每个版本都引入了许多新特性,这些新特性不仅提高了开发效率,还改善了代码的可读性和可维护性。本文将分别介绍Java性能优化的方法和
- Spring 框架:Java 开发的基石
来恩1003
Java从入门到精通javaspring后端
Java学习资料Java学习资料Java学习资料一、引言在Java企业级开发的广阔天地中,Spring框架犹如一颗璀璨的明星,占据着举足轻重的地位。它以其强大的功能、高度的灵活性和卓越的可扩展性,成为众多开发者构建复杂企业应用的首选。Spring框架的出现,极大地简化了Java开发过程,帮助开发者更高效地应对各种业务需求。二、Spring框架概述2.1核心概念Spring是一个轻量级的Java开发
- Java 封装与继承:面向对象编程的两大支柱
来恩1003
Java从入门到精通java开发语言
Java学习资料Java学习资料Java学习资料引言在Java的面向对象编程(OOP)体系里,封装和继承是极为关键的概念。它们不仅是构建复杂软件系统的基础,也为代码的设计、维护与扩展提供了强大助力。接下来,我们将深入探究这两大支柱的内涵、实现方式及其在实际开发中的价值。封装封装的定义封装是把对象的属性和操作这些属性的方法捆绑在一起,形成一个独立的单元,并尽可能隐藏对象的内部实现细节,只向外部提供必
- docker 指定配置文件运行springboot项目
梅川酷子哥21岁
dockerlinuxspringbootdockerspringbootjava
1、将项目上传服务器2、使用jdk1.8创建java容器dockerrun-it-d--name=wx--net=host-v/root/wx:/root/wxjdk83、进入容器运行java项目1、dockerexec-itwxbash2、进入目录cd/root/wx3、使用指定配置文件运行项目nohupjava-jar-Dfile.encoding=utf-8wx.jar--spring.pr
- 使⽤docker部署project-exam-system(2)
冬冬的狼外婆
docker容器运维
制作docker-compose.yml⽂件,实现⼀键部署步骤:1.启动nginxdockerrun-itd-p80:80-v/root/pes/web/src/dist/:/usr/share/nginx/html/nginx:latest2.启动java容器3.启动mysql配置⾼可⽤的项⽬1.先创建三个前段nginx容器1.端⼝不能映射80dockerrun-itd-v/root/pes/w
- timsort java_Java TimSort算法 源码 笔记
汪汪汪汪妄想症
timsortjava
本来准备看Java容器源码的。但是看到一开始发现Arrays这个类我不是很熟,就顺便把Arrays这个类给看了。Arrays类没有什么架构与难点,但Arrays涉及到的两个排序算法似乎很有意思。那顺便把TimSort算法和双指针快速排序也研究一下吧。首先强调一下,这是个稳定的排序算法看过代码之后觉得这个算法没有想象的那么难。逻辑很清晰,整个算法最大的特点就是充分利用数组中已经存在顺序。在归并的过程
- Java SE基础——Java集合
原来是帅亮亮呀
java
JavaSE基础——Java集合Java集合框架概述Java容器:集合与数组(1)面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。集合,数组都是对多个数据进行存储操作的结构说明:此时的存储,主要指的是内存的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)(2)数组在存储多个数据方面的特点:一旦初始化以后,其长度就确定了。数组一旦定义好,其
- Java ArrayDeque源码剖析
洒水水儿
Java常用类的源码剖析java开发语言
LinkedList实现了队列接口Queue和双端队列接口Deque,Java容器类中还有一个双端队列的实现类ArrayDeque,它是基于数组实现的。我们知道,一般而言,由于需要移动元素,数组的插入和删除效率比较低,但ArrayDeque的效率却非常高,它是怎么实现的呢?本文就来详细探讨。实现原理ArrayDeque内部主要有如下实例变量:privatetransientE[]elements;
- 列表容器ArrayList学习——基于Java8
java
概述ArrayList是jdk提供的非线程安全的基于数组的列表容器,是最频繁使用的Java容器之一。本文主要介绍一下ArrayList的内部结构和运行机制。继承与实现publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cloneable,java.io.SerializableArrayList继承了Abstract
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s