- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 spring的事务
1、手动回滚事务数据平台二期项目时修改一条任务时要同时调用删除原定时任务和添加新定时任务的方法,这俩方法返回的都是布尔值,即使在修改方法上加上了@Transactional注解,这俩方法如果发生了非RuntimeException异常或者操作失败返回false,也不会回滚前边修改的数据库。所以,需要添加手动回滚代码。手动回滚spring事务的方法1、TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();如果返回.
2021-06-09 16:42:24
891
原创 数据平台二期记录
一、quartz定时任务1、配置相关1.配置文件quartz.properties,里面配置了表的前缀 QRTZ,是否加入集群,线程数,线程的优先级为5等等#调度表示名,集群中每一个实例都使用相同的名字org.quartz.scheduler.instanceName = ClusterQuartz#id设置为自动获取,集群中的每一个必须不同org.quartz.scheduler.instanceId = AUTO2.一个配置类指定了数据库连接使用项目的ds1数据库连接Scheduler
2021-06-04 17:09:46
149
原创 java的定时任务们
1、Timer和TimerTask*该方法是单线程的,基于绝对时间,对系统时间严重依赖,不会捕获异常,如果抛出未受查异常则线程终止,后面的也不会再执行。 *TimerTask是具体的执行逻辑,Timer来调TimerTask,Timer有四种方法1、设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time) public static void timer1() { Timer timer = new Timer();
2021-06-03 15:53:36
224
原创 小技巧们啊
自己做一个小demo,启动时报错,系统找不到指定路径Capture agent: unable to read settingsjava.io.FileNotFoundException: C:\Users\ÁÁ\AppData\Local\Temp\capture1.props (系统找不到指定的路径。)查资料感觉是ÁÁ这个玩意导致的,因为我系统的路径是下面这样带中文的C:\Users\亮\AppData\Local\Temp这个亮应该是被解析成ÁÁ了所以找不到报错,而且这个亮还不能重命名,所以
2021-04-28 09:51:12
342
原创 技能提升
怎样判断一个数组里是否包含某个值方法一、使用list变成list后再用containspublic static boolean useList(String[] arr, String targetValue) { return Arrays.asList(arr).contains(targetValue);}方法二、使用Setset里的元素是不能重复的,也是调contains方法public static boolean useSet(String[] arr, String
2021-04-26 15:14:21
56
原创 面试题每日三问
1、找厂商开发了一个系统,给了数据库脚本、包只有class文件,部署完成后想要监测价格表里商品价格变化,货物上下架情况等,怎样在不找原厂商的情况下做到?答:监测数据表数据变化情况,短时间内用快照。长期的可以给这张表建立触发器,如果有变化时把变化的数据存到另外的表里。这是我查到的,有补充的没有?2、springboot怎样读取配置文件的,比如我想加载另外的数据源就要读取单独的数据库配置文件?先说点其他的。如果是默认的application.propreties里,想要在javabean里绑定里面值
2021-01-12 12:29:53
172
原创 北漂易项目笔记
2020.08.05项目是创建的maven项目,pom里加入springboot的相关依赖,但是不熟springboot推荐的thymeleaf,还是想用jsp,根据网上查的建了目录webapp/WEB-INF/jsp,pom里导入几个依赖,注意注释里的文字,因为这个scope没有注释导致总是报404找不到jsp,但是好像注释掉部署项目的时候又会报别的错,已经收藏了那篇文章,以后再出问题回来再看吧。<!-- servlet依赖. --> <dependency>
2020-08-07 09:24:09
187
原创 由intern方法聊聊虚拟机内存划分
上图是在jdk1.6里的运行结果上图是在jdk8中的运行结果先说原因:1.6中,intern()方法会把首次遇到的字符串实例复制到永久代的字符串常量池 中存储,返回的也是永久代里面这个字符串实例的引用,而由StringBuilder创建的字符串对象实例在 Java堆上,所以必然不可能是同一个引用,结果将返回false。1.6中还有永久代(就是方法区)这个东西,但是到了8没有了。原来的方法区会存放类的信息(如类名、类的版本、访问修饰符、字段描述、方法描述等)、常量池、静态变量等,常量池就包含字符串常量.
2020-06-18 15:17:24
124
原创 代码示例
多线程间通信蚂蚁课堂java第三期0004这是一个消费者一个生产者之间的多线程间通信问题,给变量加上volatile关键字没用,volatile关键字在下面这种同一个方法获取共享变量时加上volatile关键字能保证实时可见性。class Res { public String userSex; public String userName; //线程通讯标识 public boolean flag = false;}class IntThrad extends Thread { p
2020-05-24 11:24:45
410
原创 IO相关
File类三个构造方法:public File(String pathname)public File(String parent, String child)public File(File parent, String child)获取功能的方法public String getAbsolutePath() :返回此File的绝对路径名字符串。public String getP...
2020-04-26 17:22:52
118
原创 Exception相关
异常体系Java异常处理的五个关键字:try、catch、finally、throw、throwsThrowable中的常用方法:public void printStackTrace() :打印异常的详细信息。包含了异常的类型,异常的原因,还包括异常出现的位置,在开发和调试阶段,都得使用printStackTrace。public String getMessage() :获取发生异...
2020-04-10 16:54:14
154
原创 数据库相关
mysql1、mysql的共享锁和排它锁共享锁,也叫读锁,多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。排它锁,也叫写锁,就是不能与其他锁并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享锁和排他锁,但是获取排他锁的事务是可以对数据进行读取和修改。mysql InnoDB引擎默认的修改数据语句,update,delete,inse...
2020-03-27 09:46:24
151
1
原创 面试题
1、SOA架构和微服务架构的区别微服务的发明者说SOA是微服务的超集*微服务是细粒度的,SOA是粒度粗一点的。*SOA:有企业服务总线,公用DB*微服务:原有的单个业务系统会拆分为多个可以独立开发,设计,运行和运维的小应用。这些小应用之间通过服务完成交互和集成。每个小应用从前端web ui,到控制层,逻辑层,数据库访问,数据库都完全是独立的一套。微服务:互联网公司快速迭代,每周甚至每天都...
2020-03-17 11:30:31
74
原创 有事没事看看
1、2、常见的运行时异常:ArrayStoreException 试图将错误类型的对象存储到一个对象数组时抛出的异常ClassCastException 试图将对象强制转换为不是实例的子类时,抛出该异常IllegalArgumentException 抛出的异常表明向方法传递了一个不合法或不正确的参数Inde...
2020-03-17 09:58:40
123
原创 Redis
Redis的优点以下是 Redis 的一些优点:异常快 - Redis 非常快,每秒可执行大约 110000 次的设置(SET)操作,每秒大约可执行 81000 次的读取/获取(GET)操作。支持丰富的数据类型 - Redis 支持开发人员常用的大多数数据类型,例如列表,集合,排序集和散列等等。这使得 Redis 很容易被用来解决各种问题,因为我们知道哪些问题可以更好使用地哪些数据类型来处理...
2020-03-04 18:59:30
90
原创 nginx笔记
通过端口区分不同主机通过域名区分不同虚拟主机如果都想暴露80端口呢,就通过域名区分一个域名只对应一个ip,一个ip可以绑定多个域名能通过域名访问网站是通过dns服务器将域名和ip的绑定关系一一映射dns就和windos系统的hosts文件一样,修改了本地的hosts文件就不走dns了。位置:C:\Windows\System32\drivers\etc\hosts通过上图的配置,输...
2020-02-29 21:02:17
170
原创 多线程相关
进程和线程的区别进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。进程是系统进行资源分配和调度的一个独立单位,每个进程都有自己单独的地址空间。如图每一个程序都是一个进程线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线...
2020-02-03 18:45:54
104
原创 java的lambda表达式
lambda表达式的格式以->分隔,前边是参数列表,后边是表达式体也就是具体要执行得到逻辑。根据参数列表的个数有无返回值等可以分为6种形式,这个不必多说。lambda表达式依赖函数式接口lambda表达式依赖于函数式接口,即只有一个抽象方法的接口。个人理解表达式体就是实现那个唯一抽象方法的。也就是创建了一个实现这个接口的一个对象。需要注意的是,若 Lambda 表达式抛出一个受检异常...
2020-01-20 17:10:36
671
1
转载 读取dbf文档
Java解析DBF文件,其中遇到的些问题及解决办法博客分类: java编程基础Java最近要做一个程序,数据源是DBF的文件,我用Java解析它,首先需要下载个Java专用jar包javadbf-0.4.0.jar,这个是最新版的。解析代码如下:public static void main(String[] args) { try{ Object[] obj=nu...
2020-01-08 20:40:17
212
原创 记一个js校验只能输入数字的bug
记一个js校验只能输入数字的bug问题前台输入100a这样的数字js校验拦不住,导致后台保存的时候出错。js代码为function isNum(str,name)var reg = /^\d*$/;if(reg.test(str)){ return true;}udesk.shouwarning(name+"必须为数字");return false;之所以拦不住是因为js里先...
2020-01-08 20:39:08
301
1
原创 mybatis问题
同事说的插入一个number类型的数据,要求应该是不要插入0,如果xml文件里写了if test=’’,就拦不住零了,导致可以插入数据库。
2020-01-08 20:38:54
118
原创 笔记(基础面试题)
2020年一月份笔记201001071、Arraylist:底层是基于动态数组,查找快,增删慢,因为比如要在第一个位置插入一个元素后面所有的元素都要向前移动1位,即使在最后插入一个元素速度也比Linkedlist慢Linkedlist基于链表的动态数组,增删快,查找慢。数据添加删除效率高,只需要改变指针指向即可,但是访问数据的平均效率低,需要对链表进行遍历。Java 常见面试题之“Arra...
2020-01-07 16:46:36
188
原创 docker启动镜像报错iptables failed: iptables --wait -t nat -A DOCKER -p tcp
docker启动镜像报错iptables failed: iptables --wait -t nat -A DOCKER -p tcp昨天下午docker启动rabbitmq镜像报错,查了好多资料搞不定,最后重启docker搞定了,所以,遇到不明所以的问题先重启试试(前提是代价不要太大)。另外rabbitmq要pull带management的才是带web管理界面的,命令要这样写docker...
2019-10-10 09:59:13
1887
原创 centos7安装redis docker镜像
centos7安装redis docker镜像看springboot教程讲到了缓存,发现是用docker镜像的方式安装redis,于是也想玩玩。1、docker安装要redis内核版本3.10以上,发现虚拟机里的是centos6.5,内核版本是2.4,于是一顿升级操作yum update变成了2.6,完球,不知道怎么搞了。于是去centos官网下iso,整了个centos8,立马在vmware...
2019-10-09 11:03:35
527
翻译 springboot自动配置原理
看了springboot的视频教程,大概知道了springboot的自动配置原理,但是老师讲的很快,也没有跟着点开那些注解看源码,导致过了没几天就开始懵逼了所以参考着别的文章自己写下来,希望加深印象,以后忘了还可以再来查看。第一层:@SpringBootApplicationpublic class SpringBoot02ConfigAutoconfigApplication {publ...
2019-09-17 14:50:55
130
原创 记sql错误
sql报错 Column ‘typ_id’ in field list is ambiguous报这个错误是因为连表查询给表起了别名,但是字段没有用别名,如SELECT typ_id, typ_nameFROM tb_cm_integral_type aLEFT JOIN tb_cm_integral_type bon a.typ_id = b.pare_typ_id应该写成SEL...
2019-09-04 20:32:37
144
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人