java常用方法
为了生活
一片星空~
毕业l来北京快一年的菜鸟
展开
-
java的反射到底是有什么用处?
明明我自己能直接new一个对象,为什么它要绕一个圈子,先拿到Class对象,再调用Class对象的方法来创建对象呢,这不是多余吗?为什么需要反射:我现在认为用反射主要有两个原因:提高程序的灵活性屏蔽掉实现的细节,让使用者更加方便好用列举两个例子:1.连接数据库时,加载数据库相关配置是,配置都是在配置文件中配置的,程序其实是通过反射获取的,代码中不想写死:例如://获取配置文件的信息driver = properties.getProperty("driver");url = proper原创 2022-01-04 11:22:29 · 998 阅读 · 0 评论 -
java 遍历Map 和 根据Map的值(value)取键(key)
public static void main(String[] args) {// Map<String, Object> map = new HashMap<String, Object>(); Map<String, Object> map = new LinkedHashMap<String, Object>(); map.put("username","zhaokuo"); map.put("password", "123456").转载 2021-03-14 14:36:11 · 1255 阅读 · 0 评论 -
理论--MySql主从数据库和读写分离
什么是主从数据库?主从数据库, 主要是主数据库将数据通过二进制的日志文件同步到从库。在大型的互联网项目中,通常数据库操作都是一个瓶颈,频繁的数据库操作,导致数据库处理不过来。这其中一个原因都是因为server是集群的,而数据库还是单台,所以导致两边处理能力相差甚远。许多的国内外大型互联网项目架构体系中,均采用了MySQL的主从数据库配置来实现查询负载、增强数据库处理能力。主从数据库是主库一旦有操作,就会记日志,从库通过监听日志,实现和主库的数据同步。可以一主多从。主从数据库是主库进行写操作,从库转载 2020-09-07 18:03:19 · 316 阅读 · 0 评论 -
java 中返回状态码
10状态码定义每个状态代码如下所述,包括可以遵循哪些方法以及响应中需要的任何元信息的描述。10.1信息1xx此类状态码表示临时响应,仅由状态行和可选标头组成,并由空行终止。此类状态代码没有必需的标题。由于HTTP / 1.0没有定义任何1xx状态代码,因此除实验条件外,服务器不得向HTTP / 1.0客户端发送1xx响应。客户端必须准备在定期响应之前接受一个或多个1xx状态响应,即使客户端不期望100(继续)状态消息。意外的1xx状态响应可能被用户代理忽略。代理必须转发1xx响应,除非代理与其客户转载 2020-09-07 18:01:01 · 3632 阅读 · 0 评论 -
BigDecimal常用方法
add(BigDecimal)BigDecimal对象中的值相加,返回BigDecimal对象subtract(BigDecimal)BigDecimal对象中的值相减,返回BigDecimal对象multiply(BigDecimal)BigDecimal对象中的值相乘,返回BigDecimal对象divide(BigDecimal)BigDecimal对象中的值相除,返回BigDecimal对象toString()将BigDecimal对象中的值转换成字符串doubleValue()原创 2020-11-27 13:08:43 · 299 阅读 · 0 评论 -
拼接字符串的四种方式
总结:直接相加、String中的concat方法、StringBuilder与StringBuffer。其中:直接相加和String类concat方法会产生很多对象,会开辟很多内存空间,性能比较低。而StringBuilder与StringBuffer不会重复产生新的对象,不会开辟内存空间,直接追加到字符串后面,但是StringBuffer性能比较低(保证了线程的安全),所以用StringBuilder会更好。4种方式:String str="";for(int i=0;i<10;i++)原创 2020-06-29 14:20:09 · 3693 阅读 · 0 评论 -
BigDecimal 和 String 的相互转换
BigDecimal 和 String 的相互转换一:string 转BigDecimalpublic class Test{public static void main(String[] arg) {String str1=“2.30”;BigDecimal bd=new BigDecimal(str1);System.out.println(bd);}}直接new 就行了。二:BigDecimal转String情况:数据库中存储格式decimal//引用工具类Decimal原创 2020-06-29 14:14:42 · 8821 阅读 · 0 评论 -
Java获取当前日期的前一个月,前一天的时间
引用Calendar工具类,当时也是做定时,所遇到了这种情况,找到的这种方法Calendar中有个核心的方法:add(int field,int amount);一:获取一个月前一天到一个月前的时间,//过去一月SimpleDateFormat format = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);Calendar c = Calendar.getInstance();c.setTime(new Date());c.add(Calendar.原创 2020-06-29 14:39:15 · 2782 阅读 · 0 评论 -
关于SimpleDateFormat安全的时间格式化线程安全问题
想必大家对SimpleDateFormat并不陌生。SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调试的问题,因为 DateFormat 和 SimpleDateFormat 类不都是线程安全的,在多线程环境下调用 format() 和 parse() 方法应该使用同步代码来避免问题。下面我们通过一个具体的场景来一步步的深入学习和理解SimpleDateFormat类。一.引子 我们都是优秀的程序员,我转载 2020-06-29 14:28:42 · 201 阅读 · 0 评论 -
生成短8位唯一字符ID
引包:org.apache.commons.lang.RandomStringUtils相关方法:random(int count);randomAscii(int count);randomAlphabetic(int count);randomAlphanumeric(int count);randomNumeric(int count);random(int count, boolean letters, boolean numbers);random(int count, int转载 2020-10-22 18:29:27 · 1250 阅读 · 0 评论 -
xml和json对象互转
xml和json互转原创 2020-10-10 17:39:30 · 2028 阅读 · 0 评论 -
汉字拼音转首字母
汉字转拼音首字母的java实现工作中经常会遇到的一些排序问题,比如 按汉字的拼音首字母排序,比如人名排序等,就要用到下面的方法了,思路:获得汉字将汉字转换成首字母,并记录下(必要时保存到数据库)按首字母进行排序并展示控制台输出演示:汉字转首字母演示,请输入汉字: 4654*&&^_FDSF你i好3啊>?>?>(*33P{}{直接转换convertTo: 4654*&&^_F转载 2020-08-20 18:49:07 · 1057 阅读 · 0 评论 -
list和map的常规使用
1.List、Map、SetList以特定索引来存取元素,可以有重复元素。Set不能存放重复元素(用对象的equals()方法来区分元素是否重复)。Map保存键值对(key-valuepair)映射,映射关系可以是一对一或多对一。Set和Map容器都有基于哈希存储和排序树的两种实现版本,基于哈希存储的版本理论存取时间复杂度为O(1),而基于排序树版本的实现在插入或删除元素时会按照元素或元素的键(key)构成排序树从而达到排序和去重的效果。2.ArrayList、Vector、LinkedList的存储性原创 2020-07-30 16:13:02 · 524 阅读 · 0 评论 -
输出某种编码的字符
Public String translate (String str) {String tempStr = “”;try {tempStr = new String(str.getBytes(“ISO-8859-1″), “GBK”);tempStr = tempStr.trim();}catch (Exception e) {System.err.println(e.getMessage());}return tempStr;}希望能够帮助到你们...原创 2020-07-30 11:53:51 · 184 阅读 · 0 评论 -
springmvc-生成二维码
package com.jd.controller;import java.awt.BasicStroke;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Image;import java.awt.Shape;import java.awt.geom.RoundRectangle2D;import java.awt.image.BufferedImage;import java.io.File;im原创 2020-07-26 14:12:23 · 235 阅读 · 0 评论 -
java判断是否包含某字符串
判断字符串包含的3种方法startsWith()contains方法indexOf方法public boolean startsWith(String prefix, int toffset)orpublic boolean startsWith(String prefix)prefix – 要匹配的字符toffset – 从哪里开始匹配返回值为true和false String Str = "J004399"; System.out.print("Return Value :"原创 2020-07-09 17:52:30 · 1851 阅读 · 0 评论 -
使用反射访问成员变量的值、入参对象
反射操作属性,以及类入参原创 2020-07-03 14:04:18 · 2156 阅读 · 0 评论 -
反射获取泛型信息
一 点睛获得了Field对象后,就可以很容易地获得该Field的数据类型,即使用如下代码即可获得指定Field的类型://获取Field对象f的类型Class<?> a = f.getType();通过这种方式只对普通类型的Field有效。但如果该Field的类型是有泛型限制的类型,如Map<String , Integer>类型,则不能准确的得到该Field的泛型参数。为了获得指定Field的泛型类型,应先使用如下方法来获取指定Field的泛型类型://获得F原创 2020-07-03 14:02:59 · 2592 阅读 · 0 评论 -
泛型的优势
1.在使用范型时.就规定了只有某种类型的数据才能放进集合里.你在集合中取数据时就不用进行强制转换.这样就提高了程序的性能2.泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。希望能够帮助到你们....原创 2020-07-03 13:53:26 · 380 阅读 · 0 评论 -
区分电脑端和手机端
package com.actions;import java.util.regex.Matcher;import java.util.regex.Pattern;import java.io.IOException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com转载 2020-07-03 11:22:40 · 214 阅读 · 0 评论 -
xml报文转map
XML报文转Mapimport java.io.ByteArrayInputStream;import java.io.IOException;import java.io.InputStream;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.jdom.Document;import org.jdom.Element;impo转载 2020-07-03 11:21:34 · 969 阅读 · 0 评论 -
list的四种去重方式
List集合相信大家在开发过程中几乎都会用到。有时候难免会遇到集合里的数据是重复的,需要进行去除。然而,去重方式有好几种方式,你用的是哪种方式呢?去重方式效率是否是最高效、最优的呢?今天就给大家讲解一下List集合去重的常见及常用的四种方式。01实现思路:使用两个for循环遍历集合所有元素,然后进行判断是否有相同元素,如果有,则去除。这种方式是大部分最先想到的,也是最简单的实现方式。其中,这种方式可以保证List集合原来的顺序不变。代码实现:/**notes:使用两个for循环实现List去重转载 2020-07-03 11:14:59 · 2953 阅读 · 0 评论 -
JSON树节点的增删查改
最近了解到使用json字符串存到数据库的一种存储方式,取出来的json字符串可以进行相应的节点操作故借此机会练习下递归,完成对json节点操作对应的工具类。介绍一下我使用的依赖复制代码 com.alibabafastjson1.2.49复制代码主要使用JSONObject和JSONArray的API进行相关操作,这里附上这两个类的代码JSONObjectJSONArray一些数据转换的APIJSONArray.parseArray(“json树字符串”)--------转载 2020-07-03 11:13:08 · 496 阅读 · 0 评论 -
字符串大小写转换
字符串函数–startsWith–endsWith–toLowerCase–toUpperCase学习2013年08月06日 ⁄ 综合 ⁄ 共 776字 ⁄ 字号 小 中 大 ⁄ 评论关闭package four;public class StringDemo {public static void main(String args[]) { String sour="第23届中国电影节获奖名单.txt"; String head="第"; String tail=".txt"; if(原创 2020-07-02 17:59:54 · 425 阅读 · 0 评论 -
保留两位小数
在平时做项目时,可能有这样的业务需求:页面或界面上展示的数据保留小数点后两位。为了达到这样的展示效果,本文列举了几个方法:使用java.math.BigDecimal使用java.text.DecimalFormat使用java.text.NumberFormat使用java.util.Formatter使用String.format… … 另外可以自己实现或者借用封装好的类库来实现,在这篇文章中就不一一列举了。本文给出上述5种方法的简单实现。代码如下:Java代码 收藏代码im转载 2020-07-02 17:57:26 · 1937 阅读 · 0 评论 -
java 常用工具类以及方法使用
下面是常用的工具类:1. 数组a) 作用是一种容器,可以在其中放置对象或基本类型数据。从而,实现使用数组管理一组对象。b) 优势是一种简单的线性序列,可以快速的访问数组元素,效率高。如果从效率和类型检查的角度讲,数组是最好的。c)转载 2020-07-02 17:28:00 · 706 阅读 · 0 评论 -
list实现类的区别
1、ArrayList非线程安全基于对象数组get(int index)不需要遍历数组,速度快;iterator()方法中调用了get(int index),所以速度也快set(int index, E e)不需要遍历数组,速度快add方法需要考虑扩容与数组复制问题,速度慢remove(Object o)需要遍历数组,并复制数组元素,速度慢remove(int index)不需要遍历数组,需要复制数组元素,但不常用contain(E)需要遍历数组2、LinkedList非线程安全基于转载 2020-07-02 17:15:30 · 437 阅读 · 0 评论 -
map不同实现类的区别
Map集合有很多的实现子类,包括HashMap、LinkedHashMap、Hashtable、TreeMap,那么它们之间有什么区别呢,看下面的代码:package com.repair.work.action;import java.util.HashMap;import java.util.Hashtable;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Map;import java.转载 2020-07-02 17:13:37 · 364 阅读 · 0 评论