- 博客(19)
- 收藏
- 关注
原创 您好,JVM!
GC进行时,Eden区中所有存活的对象都会被复制到Survivor To区,而在Survivor From区中,仍存活的对象会根据它们的年龄值决定去向,年龄值达到年龄阀值(默认为15,新生代中的对象每熬过一轮垃圾回收,年龄值就加1,GC分代年龄存储在对象的Header中)的对象会被移到老年代中,没有达到阀值的对象会被复制到Survivor To区。Java 堆和方法区是线程共享的,在程序处于运行期才知道哪些对象会创建,这部分内存的分配和回收都是动态的,垃圾回收所关注的就是这部分内存。
2023-08-30 13:58:05
128
原创 java实体类为什么要实现序列化
将HttpSession对象保存到文件系统或数据库中,需要采用序列化的方式将HttpSession对象中的每个属性对象保存到文件系统或数据库中;将HttpSession对象从文件系统或数据库中装载到内存时,需要采用反序列化的方式,恢复HttpSession对象中的每个属性对象。所以存储在HttpSession对象中的每个属性对象必须实现Serializable接口。...
2023-04-03 17:13:05
214
原创 在项目中很多时候会遇见多租户的问题,在写SQL时每次拼装租户条件会很麻烦,下面分享mybatis-plus自动拼装租户条件
EnableTransactionManagement(proxyTargetClass = true)@Configuration@MapperScan("${mybatis-plus.mapperPackage}")public class MybatisPlusConfig { /** * 默认租户字段 */ private static final String TENANT_FIELD_NAME = "t_id"; /** * 租户1.
2023-04-03 17:11:55
921
原创 java List集合copy工具类
使用场景:Entity、Bo、Vo层数据的复制,因为BeanUtils.copyProperties只能给目标对象的属性赋值,却不能在List集合下循环赋值,因此添加该方法。* 如:List 赋值到 List ,List中的 AdminVo 属性都会被赋予到值。* S: 数据源类 ,T: 目标类::new(eg: AdminVo::new)
2023-04-03 17:11:28
1288
原创 在java中,要判断某个字符串是否以某字符串结尾
判断当前字符串是否以后缀suffix结尾,返回真或假,真表示以suffix结尾,假表示不以suffix结尾。在java中,要判断某个字符串是否以某字符串结尾,使用字符串的方法endsWith可实现。System.out.println("字符串不是World结尾");System.out.println("字符串以World结尾");输出结果为:字符串以World结尾。
2022-10-11 14:50:55
5473
原创 如何优雅的判断某个值是不是众多值中的一种?
1、枚举/** * @author 啵啵 * @date 2022/5/20 9:39 */@Getterpublic enum IotProductIdEnum implements CodeEnum { VINBEP(1, "Vi-NB-EP"), VINBJJ(4, "Vi-NB-JJ"), VINBDT(5, "Vi-NB-DT"), VIZIDT(17, "Vi-ZI-DT"), VILODT(19, "Vi-LO-DT"), V.
2022-05-20 11:02:41
401
原创 mybatis .xml中 判断集合是否为空
先看报错信息:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:### Error querying database. Cause: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Failed to process, Error SQL: SE..
2022-04-03 19:42:02
4730
原创 如果数据库中的某个字段或者sum为空 就设置为默认值
IFNULL(sum(column),0) 如果sum(column)为null ,那么就把值设为0COALESCE(SUM(col),0) 如果sum(column)为null ,那么就把值设为0一、IFNULL(expr1,expr2)用法:假如expr1不为NULL,,则 IFNULL()的返回值为exprt;否则其返回值为expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。二、ISNULL(expr)用法:如expr为null,那么isnull(
2022-03-29 21:18:12
2088
原创 同一设备返回不同类别的数量
SELECT mp.id, sum(CASE mp.work_type WHEN 0 THEN 1 ELSE 0 END) as maintain, sum(CASE mp.work_type WHEN 1 THEN 1 ELSE 0 END) as upkeep, sum(CASE mp.work_type WHEN 2 THEN 1 ELSE 0 END) as polling, sum(CASE mp.work_type WHEN 3 THEN 1 ELSE 0 EN...
2022-03-03 10:13:08
99
原创 记录一下咳咳咳咳
这两天收到一个接口任务,写之前没有整体去思考代码的可行性和消耗的资源,写了两个for循环,内循环里要和数据库建立了四五个连接,一来一回,查询数据出来已经是十几秒后了然后写了一个sql语句-- z最终 SELECT c.`id`,c.`name`,c.total_amount,c.total_quantity, emp.`money`,emp.`completed_money`,emp.`month`, ems.`checking_day` FROM employee_...
2021-12-16 16:08:46
448
原创 关于list集合中元素一致即元素出现覆盖的问题
问题:今天写代码的时候由于把new出来的实体类对象 放在了循环外围,导致list集合循环添加元素的时候,导致list集合元素一致解决:在循环内new对象,这样,每次添加的得元素都是全新的对象...
2021-12-13 16:55:02
444
原创 怎么查询数据库版本
废话不多说:1.win+R 输入cmd 如下:2.输入 mysql -uroot - p进入数据库(root为自己数据库名字)3.输入密码4输入 select version();如下图
2021-11-02 13:58:08
1103
转载 plus wrapper构造器
EntityWrapper是个很强大的玩意,支持多条件查询 EntityWrapper() wrapper= new EntityWrapper(); wrapper.between(column, val1, val2) wrapper.groupBy(columns) //对应sql中分组 wrapper.eq(column, params) //相当于where条件 wrapper.in(column, value) //sql中in wrapper.notIn(column, va..
2021-10-19 15:35:13
210
原创 Unsatisfied dependency expressed through field ‘XXXService‘原因
检查一下注解,@service、@mapper、@mapperscan
2021-10-19 14:25:00
1104
原创 为什么实体类要实现序列化
将HttpSession对象保存到文件系统或数据库中,需要采用序列化的方式将HttpSession对象中的每个属性对象保存到文件系统或数据库中;将HttpSession对象从文件系统或数据库中装载到内存时,需要采用反序列化的方式,恢复HttpSession对象中的每个属性对象。所以存储在HttpSession对象中的每个属性对象必须实现Serializable接口。...
2021-10-18 14:08:49
527
原创 什么是线程、程序和进程,以及他们的关系
线程:一个比进程更小的执行单位。一个进程在其执行的过程中可以产生多个线程。同类的多个线程共享同一块内存空间和一组系统资源,所以系统在产生一个线程,或是在各个线程之间作切换工作时,负担要比进程小得多,也正因为如此,线程也被称为轻量级进程。程序:含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,程序是静态的代码。进程:程序的一次执行过程,是系统运行程序的基本单位,系统运行一个程序即是一个进程从创建,运行到消亡的过程。每个进程都会占有某些系统资源如CPU时间,内存空间,文件,文件,输入输出设...
2021-10-18 11:47:12
1073
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人