
Java
从程序到猿
这个作者很懒,什么都没留下…
展开
-
一、策略模式的使用
策略模式的使用原创 2023-03-06 10:03:45 · 1210 阅读 · 1 评论 -
Java 集合常见的高级操作
Java Map集合常见的高级操作原创 2023-02-16 10:16:47 · 569 阅读 · 0 评论 -
HashMap中的computeIfAbsent() 方法的使用
HashMap中的computeIfAbsent() 方法的使用。原创 2022-08-08 09:51:09 · 370 阅读 · 0 评论 -
Md5加密
package com.yj.md5;import org.springframework.security.crypto.codec.Hex;import org.springframework.util.DigestUtils;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class Md5Test { public static void mai原创 2021-08-05 14:33:04 · 96 阅读 · 0 评论 -
BigDecimal 的使用场景
1. ROUND_DOWN(直接省略掉指定位数后的内容)BigDecimal bigDecimal = new BigDecimal(“2.125456”).setScale(2, BigDecimal.ROUND_DOWN);System.out.println(bigDecimal ); //结果:2.122. ROUND_UP(直接对指定位数后的内容做进一位处理)BigDecimal bigDecimal = new BigDecimal(“2.125456”).setScale(2, Bi原创 2021-08-04 16:36:20 · 299 阅读 · 0 评论 -
查看运行的java程序的几种方式
windows任务管理器可以查看进程和线程数,也可以用来杀死进程tasklist 查看进程tasklist 杀死进程linuxps -ef 查看所有进程ps -ft -p 查看某个进程(PID)的所有线程kill 杀死进程top 按照大写H切换是否显示线程top -H -p 查看某个进程(PID)的所有线程Javajps 命令查看所有Java进程jstack 查看某个Java 进程某一刻(PID)的所有线程状态jconsole 来查看某个Java 进程中线程的运行情原创 2021-05-06 17:15:15 · 3813 阅读 · 0 评论 -
学习中遇到的递归查询所有菜单的案例
数据库表设计一共五张表菜单表权限表用户表菜单权限表用户权限表数据库表之间的关系//测试代码//查询出全部的数据,tree显示import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.yj.aclservice.entity.Permission;import com.yj.aclservice.service.PermissionService;import org.junit.原创 2021-04-11 18:57:26 · 273 阅读 · 0 评论 -
JAVA,字符串首字母转大写(高效率)
对于将字符串的首字母转成大写,首先想到的应该是截取,转换再拼接,但是这种处理效率比较低,通过查资料(http://blog.youkuaiyun.com/zhurhyme/article/details/27951099)找到一个移动ASCII的方式来处理,这种方式的效率很高。/** * 将字符串的首字母转大写 * @param str 需要转换的字符串 * @return */ private static String captureName(String str)转载 2021-04-08 10:21:51 · 657 阅读 · 0 评论 -
获取当前时间的前一天 java
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date=new Date(); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.DAY_OF_MONTH, -1); date = calendar.getTime(); System.out.println(s原创 2021-04-08 08:46:14 · 268 阅读 · 0 评论 -
Java上机题一
import org.springframework.util.StringUtils;import java.util.*;import java.util.stream.Stream;public class Test02 { public static void main(String[] args) { int sum = test(6); System.out.println(sum); String str = "thisis原创 2021-02-03 21:50:32 · 255 阅读 · 0 评论 -
Java8 Stream 常用操作Api
import org.junit.Test;import java.util.*;import java.util.stream.Collectors;public class TestStream { //中间操作符 /** * filter:过滤出想要的元素 */ @Test public void filter(){ List<String> list = Arrays.asList("qw", "yijian原创 2021-01-30 15:21:32 · 162 阅读 · 0 评论 -
BIO、NIO、AIO总结
BIO、NIO、AIO:BIO:同步并阻塞,服务器实现模式为一个连接一个线程。即客户端有连接请求时服务端就要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。NIO:同步非阻塞,服务器实现模式为一个请求一个线程。即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。AiO(NIO.2):异步非阻塞,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处原创 2021-01-18 11:36:59 · 97 阅读 · 0 评论 -
使用redis 缓存策略
查询数据时:先查看redis 缓存中有没有数据,如果有从redis中取。如果没有查询数据库并设置到redis中。更新数据时:先更新数据库,再删除redis中数据。 //使用redis 缓存 //1.优先从缓冲中取值 public User getCache(int userId){ String redisKey = RedisKeyUtils.getUserKey(userId); User user = (User) redisTemplate原创 2020-12-28 16:08:11 · 236 阅读 · 0 评论 -
统一异常处理
@ControllerAdvice(annotations = Controller.class)@Slf4jpublic class ExceptionAdvice { @ExceptionHandler({Exception.class}) public void handleException(Exception e, HttpServletRequest request, HttpServletResponse response) throws IOException {原创 2020-12-21 11:55:49 · 123 阅读 · 0 评论 -
FastJson的简单使用
public static String getJsonString(int code, String msg, Map<String,Object> map){ JSONObject json = new JSONObject(); json.put("code", code); json.put("msg", msg); if(map!=null){ for (String key : map.keySe原创 2020-12-21 11:28:40 · 147 阅读 · 0 评论 -
spring编程式事务、redis编程式事务
// 编程式事务 @Autowired private TransactionTemplate transactionTemplate; @Autowired private RedisTemplate redisTemplate; // spring 编程式事务 @Test public Object test(){ transactionTemplate.setIsolationLevel(TransactionDefinition.原创 2020-12-20 18:52:40 · 294 阅读 · 0 评论 -
图片上传
@Autowired private HostHolder hostHolder; @Autowired private UserMapper userMapper; @Value("${community.path.domain}") private String domain; @Value("${server.servlet.context-path}") private String contextPath; @Valu...原创 2020-12-19 15:32:55 · 184 阅读 · 1 评论 -
ThreadLocal
ThreadLocal的作用提供线程一个局部变量,不同的线程之间不会相互干扰。这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或组件之间一些公共变量传递的复杂度。总结:1、线程并发:在多线程并发情况下2、传递数据:可以通过ThreadLocal 在同一线程,不同组件中传递公共变量3、线程隔离:每个线程的变量都是独立的,不会互相影响基本使用常用方法方法名描述ThreadLocal()创建ThreadLocal对象public void set(T val转载 2020-11-28 11:50:20 · 116 阅读 · 0 评论 -
模拟spring IOC DI 的底层代码实现
模拟Spring IOC DI 的底层代码实现github代码地址原创 2020-10-16 20:43:40 · 173 阅读 · 0 评论 -
Java中的数据结构
数据结构学习栈先入后出,后入先出队列先入先出数组查询快数组的地址是连续的,可以通过数据的首地址找到数组,通过数组的索引可以快速查找某一个元素。增删慢数据的长度是固定的,想要增加、删除一个元素,必须创建一个新的数组,把源数组的数据复制过来。链表查询慢链表中地址不是连续的,每次查询元素,都必须从头开始查询。增删快链表结构,增加、删除一个元素,对链表整体结构没有影响,所以删除快。二叉树类似于生活中树的结构,每一个节点上最多只能有两个子节点二叉树每个节点最多有两个子树的树结构,顶上原创 2020-06-05 00:28:13 · 189 阅读 · 0 评论 -
Spring MVC使用jstl标签无效
详细可参考该文章转载 2020-04-18 18:36:00 · 276 阅读 · 0 评论 -
继承父类子类
1.什么是继承?什么是父类,什么是子类?继承是一种由已有的类创建新类的机制。继承的类是子类,被继承的类为父类2.默认的父类是什么?object类3.子类可以有多个父类吗?一个子类只能有一个父类。4.如果子类和父类不在同一个包中,子类可以继承父类的哪些成员?可以继承父类中被public,protected 修饰的成员变量和成员方法。(继承的成员变量或方法的访问权限不变)如果在同一个...原创 2019-04-24 21:49:32 · 1709 阅读 · 0 评论 -
类和对象
1.什么是类?什么是对象?类与对象的区别与联系?(举个例子说明)类是Java语言中一个“数据类型”;类声明的对象被称作对象(类是来创建对象的);A a = new A();//A 是一个类名,a 是通过类创建的对象名;2.类的结构?class 类名{类体;}2.1 类由哪两部分组成?类名和类体;2.2 类体包含了哪两部分?属性和方法3.成员变量是什么?类体中变量定义部分所...原创 2019-04-24 20:28:06 · 219 阅读 · 0 评论 -
基本数据类型与数组
§1.1基本数据类型与数组主要内容标识符与关键字常量与变量基本数据类型类型转换运算输入、输出数据数组重点和难点重点:标示符、Java语言的数据类型、数组难点:基本数据类型的精度和数组§2.1 标识符与关键字标识符用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符,简单地说,标识符就是一个名字 。标识符的组成标识符由字母、下划线、美元符...原创 2019-04-06 19:30:27 · 1309 阅读 · 0 评论 -
Java入门
Java入门Java 入门主要内容Java的地位Java诞生Java的特点安装JDK简单的Java应用程序重点与难点:重点:Java平台无关性、Java程序的结构。难点:Java程序的开发过程。Java之父与Java的诞生Java是1995年6月由Sun公司引进到我们这个世界的革命性的编程语言。1990年Sun公司成立了由James Gosling领导的开发小组,开始致力于...原创 2019-04-06 18:54:50 · 8707 阅读 · 3 评论