Jave基础
leave417
这个作者很懒,什么都没留下…
展开
-
MAC修改文件为UTF-8+redis控制台设置数据
iconv -f UTF8 -t GB2312 源文件.csv >新文件.csv。为他设置过期时间(在这里我使用的是expireat unix时间戳以秒为单位)使用ttl 命令可以查看key的过期时间。文件从UTF8转化GB格式。原创 2023-02-06 17:20:30 · 291 阅读 · 0 评论 -
本地连接远程机器联调
远程联调原创 2022-11-15 16:10:11 · 189 阅读 · 0 评论 -
MAC修改jar包并打包
先把jar包后缀改为zip解压缩进行文件修改通过命令 将文件重新打成jar.cd emchat-ehealth-0.0.1jar cvf test.jar * 这个命令将当前文件夹下的所有文件,打成test.jar 。test.jar默认生成到当前目录,也可以指定目录。...原创 2022-03-17 17:40:23 · 3635 阅读 · 0 评论 -
JVM垃圾回收参数
4C8G推荐参数:-Xms6144m -Xmx6144m -Xmn3g -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=15 -XX:CMSInitiatingOccupancyFraction=60 -XX:CMSFullGCsBeforeCompaction=0 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSClas原创 2021-11-05 16:32:20 · 363 阅读 · 0 评论 -
JVM内存区域名词解释
JVM区域总体分两类,heap区和非heap区。heap区又分为:Eden Space(伊甸园)、Survivor Space(幸存者区)、Old Gen(老年代)。非heap区又分:Code Cache(代码缓存区);Perm Gen(永久代);Jvm Stack(java虚拟机栈);Local Method Statck(本地方法栈);...原创 2021-05-27 21:06:51 · 103 阅读 · 0 评论 -
Spring Boot AOP代理
AOP 代理的两种实现:jdk是代理接口,私有方法必然不会存在在接口里,所以就不会被拦截到;cglib是子类,private的方法照样不会出现在子类里,也不能被拦截。Java 动态代理。具体有如下四步骤:通过实现 InvocationHandler 接口创建自己的调用处理器;通过为 Proxy 类指定 ClassLoader 对象和一组 interface 来创建动态代理类;通过反射机制获得动态代理类的构造函数,其唯一参数类型是调用处理器接口类型;通过构造函数创建动态代理类实例,构造时调用处转载 2020-06-02 11:14:27 · 361 阅读 · 0 评论 -
BeanCopier工具类
public class BeanCopierUtils { /** * BeanCopier的缓存 */ static final ConcurrentHashMap<String, BeanCopier> BEAN_COPIER_CACHE = new ConcurrentHashMap<>(); /** * Be...原创 2020-04-28 18:55:41 · 315 阅读 · 0 评论 -
系统启动时,直接加载类和方法
一.在web.xml中配置spring监听器<!-- Spring容器启动监听器配置 --><listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><list...原创 2018-12-10 22:40:09 · 559 阅读 · 0 评论 -
IDEA使用MybatisGenerator插件
1.pom文件因为http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd引用报错添加&lt;dependency&gt; &lt;groupId&gt;org.mybatis.generator&lt;/groupId&gt; &lt;artifactId&gt;my原创 2019-01-02 18:21:13 · 941 阅读 · 0 评论 -
Json处理
一.json格式化手动递归遍历写出的格式./** * 返回格式化JSON字符串。 * * @param json 未格式化的JSON字符串。 * @return 格式化的JSON字符串。 */ private static String format(String json) { StringBuffer result ...转载 2019-01-24 20:28:42 · 168 阅读 · 0 评论 -
mysql查询某一个或几个条件重复
select 列名1,count(1) as count from 表名group by 列名1having count>1 and 其他条件select 列名1,列名2,count(1) as count from 表名group by 列名1,列名2 having count>1 and 其他条件原理:先按照要查询出现重复数据的列,进行分组查询。coun...转载 2019-01-31 15:02:57 · 2973 阅读 · 0 评论 -
多数据源统一事务
第一种,只有两个数据源数据源A和数据源B事务放在数据源A上,在该事务中调用数据源B方法,若B异常,数据源A回滚即可.第二种,数据源&gt;2若某个数据源失败,发出MQ,进行各个数据源的回滚操作.若MQ失败,可加入表记录,进行job轮询,直到发送成功,删除该记录...原创 2019-03-01 10:59:46 · 395 阅读 · 0 评论 -
redis分布式锁
一.redis相关命令setnx()命令:setnx的含义就是SET if Not Exists,其主要有两个参数 setnx(key, value)。该方法是原子的,如果key不存在,则设置当前key成功,返回1;如果当前key已经存在,则设置当前key失败,返回0。get()命令:get(key) 获取key的值,如果存在,则返回;如果不存在,则返回nil;getset()命令:这...原创 2019-08-15 19:06:39 · 226 阅读 · 0 评论 -
log4j2动态修改日志级别及拓展性使用
一、供参考的完整日志配置<?xml version="1.0" encoding="UTF-8"?><!-- 配置LoggerConfig,即Appenders的日志级别为WARN --><Configuration status="WARN"> <!-- 定义下面的引用名 --> <Properties> ...转载 2019-08-12 16:26:08 · 2988 阅读 · 0 评论 -
[springMVC]利用fastjson返回
原因:1.jackjson无法处理嵌套的entity关系;例:entity:A中包含entity:B,B中又有C;2.fastjson性能优越;3.把fastjson用于memached缓存对象数据;使用方法:一:配置文件<!-- 启用注解 --> <mvc:annotation-driven> <mvc:message-conve...原创 2019-10-09 19:05:42 · 241 阅读 · 0 评论 -
Map的操作工具类/方法
JDK1.6包路径:org.apache.commons.collections4.MapUtils<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <versi...原创 2018-12-14 17:35:57 · 2673 阅读 · 0 评论 -
删除 List 元素的三种正确方法
// 每次都会计算list.size()比较耗费性能 public static void remove1 (List < String > list, String target){ for (int i = list.size() - 1; i >= 0; i--) { String item = lis...转载 2018-12-13 11:08:35 · 35719 阅读 · 1 评论 -
Mybatis + Mysql 批量操作CURD
需要确认的问题:1.mybatis版本号是否在3.3.1及以上(JDK1.6支持3.3.1版本,否则不支持返回主键),具体请看https://github.com/mybatis/mybatis-3/pull/5472.Dao/Mapper层无需填入@Parma(“list”) 因为mybatis获取时,会直接读取为list3.foreach 的标签中为collection=“list"即可...原创 2018-11-22 10:26:49 · 400 阅读 · 0 评论 -
XML利用dom4j进行增删查改等方法
public class XMLUtil { // dom4j读取XML public static Document getDocutment(String inPath) { Document doc = null; try { doc = new SAXReader().read(new File(inPath));原创 2017-08-03 23:17:37 · 317 阅读 · 0 评论 -
ObjectOutputStream读取文件多个对象时报出EOFException问题
写入Student对象到Student.txtpublic class WriterStudent { public static void main(String[] args) { try { ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("Student.t原创 2017-08-04 21:08:20 · 659 阅读 · 0 评论 -
集合中线程安全的类回顾+更改为线程安全的方法
根据源码(Ctrl + Shift + T)中查找(Ctrl + O)增加元素的方法,判断是否有synchronized以此判断,是否线程安全Vector是线程安全的,ArrayList是线程不安全的;StringBuffer是线程安全的;StringBuilder是线程不安全的;HashTable是线程安全的;HashMap是线程不安全的可使用Collection转载 2017-07-28 20:55:27 · 203 阅读 · 0 评论 -
HTTP,TCP,UDP,Socket,WebSocket
七层模型五层模型四层模型应用层 表示层应用层应用层会话层 传输层传输层传输层网络层网络层网络层数据链路层数据链路层链接层/实体层物理层物理层 二、这些关键词之间具体有什么联系?1.TCP和UDPT转载 2017-08-14 20:42:00 · 523 阅读 · 0 评论 -
sql语句补充
select *,(select case authority when 1 then '超级管理员' when 2 then '管理员' else '普通用户' end as authority)auth from user limit 0,5; //查询用户表,将权限1,2,3分别显示中文,可以在性别中直接使用,减少内存.limit分页每页5个,第二页是5,5select count(原创 2017-09-15 16:39:00 · 250 阅读 · 0 评论 -
上传图片
//servletrequest.setCharacterEncoding("UTF-8");InputStream input = null;FileOutputStream output = null;// 创建磁盘工厂对象DiskFileItemFactory factory = new DiskFileItemFactory();// 对磁盘工厂对象的处理工具ServletFi原创 2017-09-15 21:26:58 · 176 阅读 · 0 评论 -
AJAX增添用户时-检查用户名是否重复
servlet:checkNamerequest.setCharacterEncoding("UTF-8");String name=request.getParameter("name");name = new String(name.getBytes("ISO-8859-1"),"UTF-8");User user=new UserDao().checkName(name);Print原创 2017-09-15 21:28:07 · 267 阅读 · 0 评论 -
单例模式五种方法
1.懒汉式-线程安全,但效率低,不使用public class Singleton { private static Singleton instance; private Singleton(){} public static synchronized Singleton getInstance(){ if(instance == null){转载 2017-09-26 20:12:27 · 181 阅读 · 0 评论 -
javascript 动态修改css样式方法+JQuery中操作Css样式的方法
JS 显示/隐藏 var img=document.getElementsByName("img"); function onclick1(){ for(var i=0;i<img.length;i++){ img[i].style="display:none"; }JS改变背景颜色等function changeStyle1() { var obj =转载 2017-09-01 20:03:27 · 901 阅读 · 0 评论 -
JDK1.5,1.6,1.7,1.8新增特性
JDK1.7新特性: 1,switch中可以使用字串了 String s = “test”; switch (s) { case “test” : System.out.println(“test”); case “test1” : System.out.println(“test1”); break ; default : System.o转载 2017-11-21 10:56:52 · 313 阅读 · 0 评论 -
MyBatis 传入单个基本类型参数所需要注意的问题
java.lang.NoSuchMethodException: Property 'name' has no getter method报错的问题,是由于mybatis引入参数的方法通过get方法取得,而基本数据类型无此方法,有三种解决办法.1.将参数修改为Map形式 SELECT * FROM t_auth_role r where 1=1 where r原创 2018-01-23 17:48:03 · 1749 阅读 · 0 评论 -
在IDEA中实战Git
场景一:小张创建项目并提交到远程Git仓库创建好项目,选择VCS - &gt; Import into Version Control -&gt; Create Git Repository接下来指定本地仓库的位置,按个人习惯指定即可,例如这里选择了项目源代码同目录点击OK后创建完成本地仓库,注意,这里仅仅是本地的。下面把项目源码添加到本地仓库。下图是Git与提交有关的三个...转载 2018-03-25 22:32:55 · 1172 阅读 · 0 评论 -
spring 注解 @ResponseBody 返回JSON 设置不返回为 null 的值
第一种方法,[参考链接](https://segmentfault.com/q/1010000002522525/a-1020000002522849)该方法未尝试,进行xml配置时提示错误.不建议使用<mvc:annotation-driven> <mvc:message-converters register-defaults="true"> ...转载 2018-03-26 11:12:44 · 2924 阅读 · 1 评论 -
FastJson常用API
astjson 是一个性能极好的用 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。主要特点:快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)零依赖(没有依赖其它任何类库除了JDK) 一 、生成Json:...转载 2018-04-24 21:26:24 · 627 阅读 · 0 评论 -
mysql查询今天、昨天、近7天、近30天、本月、上一月的SQL语句
mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法分析总结: 话说有一文章表article,存储文章的添加文章的时间是add_time字段,该字段为int(5)类型的,现需要查询今天添加的文章总数并且按照时间从大到小排序,则查询语句如下: select * from article where date_format(from_UNIXTIME(add_time),...转载 2018-05-03 14:11:10 · 784 阅读 · 0 评论 -
集合框架总结
集合框架CollectionList (存储有序,有索引,可以重复) ArrayList 底层是数组实现的,线程不安全,查找和修改快,增和删较慢 LinkedList 底层是链表实现的,现成不安全,增和删较快,查找和修改较慢 Vector 底层是数组实现的,现成安全,增删改查都较慢转载 2017-07-11 19:53:02 · 212 阅读 · 0 评论