![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【Java高级】
实战为基,理论为辅
渐暖°
才能这种东西 本来就是靠自己挖掘创造的 我也不是什么天才 我只是比任何人都拼命工作 一步一个脚印走过来了 等我回头一看 背后没有一个身影 那帮懒惰的人在山脚念叨着 谁叫那家伙是天才 开什么玩笑 我最讨厌悠哉悠哉长大的慢性子 比我有时间 有精力 感情丰富的人 为什么比我懒惰 那就给我啊 要把这些东西都浪费掉的话 就通通给我 我还有很多很多想创造的东西 给我啊--------摘自《legal high II》 与诸君共勉
展开
-
导出csv格式的文件
导出csv格式的文件原创 2022-10-22 21:31:39 · 1811 阅读 · 1 评论 -
【java】RTF转HTML或者TEXT
公司需要处理旧的数据,所以有了RTF转HTML和test的需求解决方案如下RTF转HTML工具类package com.croot.rims.utils;import io.netty.util.internal.StringUtil;import org.springframework.stereotype.Component;import javax.swing.text.BadLocationException;import javax.swing.text.DefaultStyl原创 2022-02-09 11:01:45 · 886 阅读 · 3 评论 -
除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效
第一种 <select id ="test" resultType="User">select * from t_user order by userId</select> <select id ="test_COUNT" resultType="Long">select count(0) from t_user</select>第二种TOP 100 PERCENT第三种OFFSET 10 ROWS...原创 2021-12-30 21:29:42 · 1014 阅读 · 0 评论 -
java代码中调用dao层查询接口,代码没有返回数据,打印出的sql查出了数据
记录一个神奇的错误今天新做的一个任务,查询接口代码运行截图:复制打印出的sql执行竟然查出了一条数据第一次遇见这种问题原创 2021-04-27 14:01:24 · 1048 阅读 · 1 评论 -
mybatis动态sql如何写between
<if test="beginDate != null and beginDate != ''"> AND jw.jobdate >= #{beginDate,jdbcType=VARCHAR} </if> <if test="endDate != null and endDate != ''"> AND jw.jobdate <= #{endDate,jdbcT.原创 2021-04-25 17:33:05 · 2203 阅读 · 0 评论 -
搭建公司wiki
安装httpd(apache) yum install -y httpd不行就执行下面的yum --disableexcludes=all install -y httpd启动apache systemctl status httpd systemctl start httpd开启端口firewall-cmd --add-port=80/tcp --permanentfirewall-cmd --reload查看端口状态netstat -ntpl切换端口cd /etc/ht原创 2021-04-20 12:08:42 · 262 阅读 · 0 评论 -
docker如何修改容器的配置文件
1、找到容器对应的ID使用docker ps命令找到对应的镜像id2、根据容器id进入到对应文件夹执行命令:docker exec -it 镜像id /bin/bash3、进入对应目录(以MySQL为例)执行命令cd /etc/mysql4、下载vim这里要下载vim,不然无法对文件进行修改具体执行如下两个命令:apt-get update、apt-get install vim5、对my.cnf文件进行修改执行vim my.cnf命令6、退出bash修改1)Ctrl + d 退出并原创 2021-04-16 16:39:02 · 3980 阅读 · 2 评论 -
C#程序启动后乱码(通过idea启动)
前端使用C#,后端使用java,软件开发工具idea现象有部分中文乱码了解决方案file->setting->File Encodings结果结果解决原创 2021-04-09 15:25:30 · 1268 阅读 · 1 评论 -
服务器时间不准确怎么办
编写同步服务*/1 * * * *ntpdate 192.168.1.115重启crondservice crond restart#相关命令date -s '2013/05/31 16:00:00' , 设置服务器时间clock --show 查看服务器硬件时间clock --set --date='2013/05/31 16:00:00' ,设置服务器硬件时间...原创 2021-04-01 10:07:20 · 1995 阅读 · 0 评论 -
linux如何设置服务自启
之前老大让做个服务自启,记录一下ntsysv上下键:可以在各个服务之间移动空格键:设置启动还是不启动,*进行设置即可Tab键:在方框、ok、cancle之间进行切换F1键:进行帮助文档,如下图:如果有服务直接自动启动即可注册服务编写自启动脚本cd /usr/lib/systemd/systemvim third.servicethird.service[Unit]Description=third.serviceAfter=syslog.target[Service]原创 2021-04-01 10:00:26 · 222 阅读 · 0 评论 -
线上服务假死排查
3月26号晚上9点上线之后,3月27早上服务假死,无法访问,暂时重启服务,3月29号下午3点服务再次假死,重启服务,3月30日上午8点左右查看服务假死,3月30号下午开始排查日志查询日志排查通过日志分析锁定了是这个sql导致的查询了3百万条数据,很可能就是这个问题导致服务假死通过分析sql,知道了是脚手架内嵌的monitor检测的模块,monotor数据库有13个G的数据,紧急解决方案就是暂时关闭monitor,清空monotor旧数据。具体问题仍在分析之中设置服务自启动...原创 2021-03-30 12:46:19 · 462 阅读 · 3 评论 -
线上问题排查日志实战
线上有一个凌晨执行的sql,查询300w条数据,导致每天凌晨服务崩溃日志检索1.关键字搜索cat 1.log | grep key 可以写为: grep key 1.log 2.时间搜索Linux 命令:sed -n '/开始时间/,/结束时间/p' logfile[日志文件名]例子sed -n '/2020-05-30 00:01:28/,/2020-05-30 00:05:50/p' croot_rims_origin-1.0.0-SNAPSHOT.log3.从多少行开始查看原创 2021-03-30 11:37:59 · 529 阅读 · 0 评论 -
springboot如何开启tomcat日志
server.port=8054#tomcat日志server.tomcat.basedir=/tmp/app/pmsserver.tomcat.accesslog.enabled=trueserver.tomcat.accesslog.pattern= '%h %l %u %t "%r" %s %b %D %{User-Agent}i'然后查看日志cd /tmp/app/pms/logs打开文件tail -200f access_log.2021-03-27.log...原创 2021-03-27 10:22:53 · 1489 阅读 · 0 评论 -
安装mysql和远程连接
//打开local文件cd /usr/local//建立mysql文件夹mkdir mysql//打开mysql文件cd mysql下载安装包wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm解压并且安装rpm -ivh mysql57-community-release-el7-8.noarch.rpm//安装mysqlserversudo yum install mysql-server启动m原创 2021-03-22 17:21:42 · 96 阅读 · 1 评论 -
服务器cpu 100%解决方案
ps -ef|grep 1085首先确定是哪个服务出了问题,因为一个服务器可能部署了多个服务,如果不是你负责的服务,及时联系相关负责人,确定问题如果是你负责的服务,那么继续top查看服务pid查看线程占用top -Hp 17038# 将线程号转为16进制;其中17045为线程号printf '%x\n' 17045# 17038为进程号,0x4295为最耗CPU线程的十六进制jstack 17038 | grep '0x4295' -C10 --color# 其中170.原创 2021-03-08 10:58:47 · 4044 阅读 · 0 评论 -
返回自增id
<insert id="addCustomerService" parameterType="com.croot.rims.entity.crm.CustomerServiceInfo" useGeneratedKeys="true" keyProperty="CSRecordID"> <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer"> SELECT @@IDENTIT原创 2021-02-25 17:05:32 · 125 阅读 · 0 评论 -
堆栈溢出排查
ps -ef|grep rimsjmap -histo:live 28972 | head -7启动程序时配置内存溢出时自动导出dump文件-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/d5000/eas/easDmSync/heapdump.hprof原创 2021-02-20 10:43:13 · 442 阅读 · 3 评论 -
使用IDEA进行服务器远程debug调试
有时候本地启动没有问题,测试环境没有问题,部署到生产就出现了问题,这时候如果可以debug生产环境的服务就可以解决很多问题启动jar包的时候使用nohup java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n -jar /app/project/croot_rims/package/webserver/origin/croot_rims_origin-1.0.0-SNAPSHOT.jar >>原创 2021-02-18 14:13:25 · 900 阅读 · 1 评论 -
【java基础】字符串String的基本处理集锦
String str = “a b c ddg ty”;String str2= str.replaceAll(" “,”\\");System.out.println(str2);原创 2021-02-03 10:05:17 · 165 阅读 · 0 评论 -
显示创建线程
new Thread(){@Overridepublic void run(){try {//这里面是需要执行的方法EmailUtil.sendEmail(emailUtilParam);} catch (Exception e) {}}}.start();原创 2021-02-02 15:33:41 · 252 阅读 · 0 评论 -
Swagger2异常:java.lang.NumberFormatException: For input string: ““
今天把公司其他人开发的模块导入到项目中,一启动就报错java.lang.NumberFormatException: For input string: “”java.lang.NumberFormatException: For input string: "" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Long.parseLong(Long.java:6原创 2021-01-22 15:11:05 · 430 阅读 · 2 评论 -
java 序列化替换字符和反序列化
序列化//序列化UserInfo user = new UserInfo();String json = new Gson().toJson(user); // ==> json is {"value1":1,"value2":"abc"}字符串替换json =json.replace("旧值","新值")反序列化//反序列化UserInfo user = new Gson().fromJson(json, UserInfo.class);...原创 2021-01-22 11:28:02 · 256 阅读 · 0 评论 -
sqlserver 修改表结构
因为我们公司所有对数据库的修改都要保留脚本,所以就不能直接手动改了脚本字段新增单个新增alter table productInfo add productStatus VARCHAR(2) NULL 批量新增ALTER TABLE prodSubsysInfo ADD collocation VARCHAR ( 4 ) NULL,releaseType VARCHAR ( 4 ) NULL,offerType VARCHAR ( 4 ) NULL,publicAttribute VA原创 2021-01-22 11:22:08 · 1313 阅读 · 0 评论 -
如何向svn添加新项目
确保电脑上已经安装了TortoiseSVN客户端,在之前已经从svn上checkout代码下来的文件夹中,点击右键 TortoiseSVN -> Repo-browser,得到svn服务器目录后,就可以自己在上面创建一个文件夹。在本地checkout自己刚创建的文件夹(鼠标右键 SVN Checkout)把自己code文件夹或文件复制到这里,右键>>tortoiseSVN>>Add,会在文件或目录上面显示了“+”号,右键>> “SVN Co原创 2021-01-20 09:24:44 · 5926 阅读 · 0 评论 -
如何获取数据库时间
private Date getDatabaseCurrentTime() { //查询数据库当前时间 DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); Project project2 = projectMapper.selectDatabaseTime(); String time = project2.getProjectName();原创 2021-01-04 15:58:53 · 1159 阅读 · 0 评论 -
【Stream流】Sort排序详解
很多时候由于需求的复杂性,很多直接从数据库查出的数据并不能直接返回前端,需要进行处理,处理之后又需要排序,这时候一般都会使用Stream流的Sort排序场景一:普通排序正序(升序)list=list.stream().sorted().collect(Collectors.toList());或者list.stream().sorted(Comparator.comparing(Student::getAge)) 倒序(降序)list.stream().sorted(Comparator.原创 2021-01-04 14:54:48 · 46624 阅读 · 7 评论 -
SVN 如何将分支代码合并回主干
进入主干目录,右键选择合并选择第一个合并一个版本范围测试合并OK了就点合并就行原创 2020-12-28 16:46:56 · 230 阅读 · 0 评论 -
object深复制
public static <T> List<T> deepCopy(List<T> src) throws IOException, ClassNotFoundException { ByteArrayOutputStream byteOut = new ByteArrayOutputStream(); ObjectOutputStream out = new ObjectOutputStream(byteOut); o.原创 2020-12-28 10:19:04 · 245 阅读 · 0 评论 -
SVN update拉取后撤回
项目经理要求把部分服务拆出来,删除完文件之后,手贱点了一个更新,删除的几千个文件又都回来了,一度崩溃、右键工程选中第一个选择撤回,就可以了原创 2020-12-21 14:36:47 · 1984 阅读 · 0 评论 -
List转Map(id为key,list为value)
Map<String, List<ProjectAuthority>> projectAuthorityMap = projectAuthorityList.stream() .collect(Collectors.toMap(projectAuthority -> projectAuthority.getProjectid(), projectAuthority -> Lists.newAr原创 2020-12-21 13:19:29 · 20928 阅读 · 4 评论 -
如何测试java代码运行时间
long startTime = System.currentTimeMillis(); //获取开始时间*********************; //测试的代码段long endTime = System.currentTimeMillis(); //获取结束时间System.out.println("程序运行时间:" + (endTime - startTime) + "ms"); //输出程序运行时间...原创 2020-12-21 13:18:27 · 1802 阅读 · 2 评论 -
判断对象中属性值是否全为空
/** * 判断对象中属性值是否全为空 * * @param object * @return */ public static boolean checkObjAllFieldsIsNull(Object object) { if (null == object) { return true; } try { for (Field f : object.原创 2020-12-17 14:56:37 · 2141 阅读 · 0 评论 -
list如何将自己实体的字段值赋给另外一个List实体中的相同字段
方法一import org.apache.commons.beanutils.BeanUtils;foreach(a){ foreach(b){//a复制给bBeanUtils.copyProperties(a, b);}}方法二List<Todo> list = new ArrayList<>();list.add(new Todo(1,1,"hh","ss",LocalDateTime.now()));list.add(new Todo(2,2,"hh"原创 2020-12-10 10:25:27 · 4070 阅读 · 8 评论 -
Cannot resolve method ‘builder()‘
因为没有下载lombok插件原创 2020-12-03 14:09:39 · 1982 阅读 · 0 评论 -
Method breakpoints may dramatically slow down debugging
单机取消对勾即可原创 2020-12-03 10:01:53 · 135 阅读 · 0 评论 -
一文搞懂BigDecimal
BigDecimal的加减乘除声明 BigDecimal count1= new BigDecimal(0); BigDecimal count2= new BigDecimal(0); BigDecimal count3= new BigDecimal(0);count3=count1.add(count2) //加法count3=count1.subtract(count2) // 减法count3=count1.multiply(count2) // 乘法count3=cou原创 2020-12-01 10:26:13 · 604 阅读 · 0 评论 -
Navicat查询哪些表有指定字段名
查询字段直接执行SELECT * FROM information_schema.COLUMNS WHERE COLUMN_NAME='字段名';表(按字段的内容查出表)在当前数据库的所有表中查含有指定字符串的字段(附带找出这些表)在数据库上右键——‘在数据库中查找’——‘查找’。输入你想要查找的字段内容。(只能查内容不能查字段,即按数据内容查出表而不是字段)SELECT column_name FROM information_schema.columns WHERE column_name原创 2020-12-01 10:15:40 · 551 阅读 · 0 评论 -
java 递归返回树形组织结构(附带树形菜单的搜索)
表结构create table Project (ID NUMBER not null,NAME VARCHAR2(50),PID NUMBER //父节点)实体public class Project implements Serializable {private String Id;private String pId;private List childrenProjectList;}从一级往下递归组树以下是Sqlserver的递归sql,mysql的话可以对应去查,原创 2020-12-01 10:11:49 · 3792 阅读 · 1 评论 -
List根据条件删除元素的几种方式
第一种:迭代器 Iterator<Project> it = projectList.iterator(); while(it.hasNext()){ Project p=it.next(); if (!allProjectMap.containsKey(p.getId())){ it.remove(); };原创 2020-11-27 14:47:11 · 7470 阅读 · 1 评论 -
Map存储两个key:Duplicate key 6
解决方案 Map<String, Integer> sumTimeMap = workTimeVoList.stream().collect(Collectors.toMap(WorkTimeVo::getUserAccount, WorkTimeVo::getSumUseTime);改为 Map<String, Integer> sumTimeMap = workTimeVoList.stream().collect(Col原创 2020-11-26 18:29:46 · 2551 阅读 · 1 评论