Java学习笔记
miskss
这个作者很懒,什么都没留下…
展开
-
基于注解的方式封装一个通用的Excel下载输出工具类
1.首先引入Excel导出插件fastexcel文档地址,maven 依赖 <dependency> <groupId>org.dhatim</groupId> <artifactId>fastexcel</artifactId> <version>0.10.11</version> &...原创 2020-01-07 18:03:37 · 337 阅读 · 0 评论 -
Spring Cache
文章目录前言Redis安装在Springboot中引入缓存1.依赖2.配置缓存3.简单示例4.简单控制的示例根据方法的参数或结果来插入缓存的示例缓存的TTL(过期时间)1.全局的TTL设置2.对某些cacheNames进行定制使用缓存方法的注意事项源码地址前言最近新项目中要使用缓存,但是发现的之前的缓存知识忘的差不多了,所以又重新梳理了一下记录下来。Redis安装由于Redis官方目前没有...原创 2019-10-17 15:40:46 · 252 阅读 · 0 评论 -
Android 百度地图定位、显示用户当前位置的工具类
1、构建定位Option的工具类import com.baidu.location.LocationClientOption;/** * 建造 LocationClientOption 项 * * @author peter 2018-12-21 10:58 */public class LocationClientOptionBuilder { private Loca...原创 2018-12-21 18:07:21 · 1354 阅读 · 0 评论 -
Android Studio 报错 AAPT2 error: check logs for details
使用Gradle 的Debug模式可查到具体的错误信息和位置原创 2018-12-10 14:57:55 · 323 阅读 · 0 评论 -
AndroidStudio clean project 报 Unable to delete directory: ...\app\build\intermediates\res 错误
在Android Studio > File > Invalidate Caches / Restart…原创 2018-12-07 17:31:54 · 3387 阅读 · 0 评论 -
AndroidX Junit4 测试 依赖和Android Room 的依赖
AndroidX Test 依赖dependencies { // Core library androidTestImplementation 'androidx.test:core:1.0.0' // AndroidJUnitRunner and JUnit Rules androidTestImplementation 'androidx.test:runner:1.1....原创 2018-11-23 18:11:56 · 6038 阅读 · 0 评论 -
RestTemplate请求微信的接口时Could not extract response:
异常信息:org.springframework.web.client.RestClientException: Could not extract response: no suitable HttpMessageConverter found for response type [class com.yikesong.core.domain.customer.model.wx_mini_ap...原创 2018-10-31 17:37:56 · 1954 阅读 · 0 评论 -
Springboot (打成jar运行)上传图片到服务器,客户端可直接通过url访问
本地测试时,直接上传图片到resources/static 文件下没有问题,但是打成jar后,直接报错 @RequestMapping(value = &quot;/oldUploadImage&quot;,method = RequestMethod.POST) public void oldUploadImage(MultipartFile image) throws IOException { ...原创 2018-10-21 23:05:46 · 5783 阅读 · 15 评论 -
springboot 配置logback 根据日志级别进行分级保存
1、在resources包下新建logback-spring.xml 文件logback-spring.xml2、logback-spring.xml&lt;?xml version="1.0" encoding="utf-8" ?&gt;&lt;configuration&gt; &lt;!-- ConsoleAppender原创 2018-09-11 01:07:25 · 1269 阅读 · 0 评论 -
使用多线程来执行业务,降低方法的耗时
import org.junit.Test;import java.util.concurrent.*;/** * @author peter * 2019/1/4 16:58 */public class ThreadTest { @Test public void test() throws InterruptedException, ExecutionExce...原创 2019-01-04 19:00:55 · 573 阅读 · 0 评论 -
Android 百度地图两点画弧线
import android.support.annotation.NonNull;import com.baidu.mapapi.map.ArcOptions;import com.baidu.mapapi.map.OverlayOptions;import com.baidu.mapapi.model.LatLng;/** * * <a>http://lbsyun....原创 2019-01-07 10:59:53 · 2150 阅读 · 0 评论 -
SpringBoot 发布ApplicationEventPublisher和监听ApplicationEvent事件
实现方法自定义需要发布的事件类,需要继承ApplicationEvent类或PayloadApplicationEvent&amp;amp;amp;lt;T&amp;amp;amp;gt;(该类也仅仅是对ApplicationEvent的一层封装)使用@EventListener来监听事件使用ApplicationEventPublisher来发布自定义事件(@Autowired注入即可)/** * 自定义保存事件 * @aut...原创 2019-01-27 16:48:32 · 29849 阅读 · 0 评论 -
使用Maven 来搭建多模块(Module)的Springboot 项目
官方文档视频链接简单的模块结构project 项目└── repository 模块└── service 模块└── controller 模块其中 controller 依赖 service 和repository 模块,service 模块依赖 repository 模块。项目使用idea 来创建创建项目springboot 项目默认选择的是Maven Proje...原创 2019-04-29 12:54:42 · 1319 阅读 · 0 评论 -
SpringBoot异常处理机制及源码解析
SpringBoot 异常处理官方文档启动一个springboot 项目后,访问一个不存在的页面,浏览器则产生一个错误的白页,而使用客户端工具返回的是一个json格式的数据。常见的400/500错误也是如此。为什么同一个地址,不同的客户端访问会产生不同的响应呢?The BasicErrorController can be used as a base class for a cus...原创 2019-04-29 19:14:02 · 840 阅读 · 0 评论 -
中国城市名列表及code
爬取国家统计局发布的 2018年统计用区划代码和城乡划分代码(截止2018年10月31日)项目源码数据json文件json 数据[ { "code": null, "name": "新疆维吾尔自治区", "cities": [ { "code": "650100000000", "name": "乌鲁木齐市" ...原创 2019-06-19 10:41:40 · 5518 阅读 · 0 评论 -
Redis序列化 Java8的时间Instant、LocalDateTime、LocalDate
org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Cannot construct instance of java.time.Instant (no Creators, like default construct, exist): cannot deserialize ...原创 2019-06-18 10:45:24 · 2867 阅读 · 0 评论 -
获取上一周、上一个月的开始和结束日期
获取某个日期的上一周的开始和结束日期 /** * 获取 date 日期 的上一周的开始结束日期,即使给定的日期是周一 也会 计算上一周的日期 * * @param date 基准日期点 * @return [0]:上一周的开始日期;[1] 上一周的结束日期 */ public static LocalDate[] getLastWeek(...原创 2019-07-08 17:47:53 · 2378 阅读 · 0 评论 -
Java8 Stream 操作 Collectors.toMap()会出现NullPointerException异常
java.lang.NullPointerException at java.util.HashMap.merge(HashMap.java:1225) at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1320) at java.util.stream.ReduceOps$3ReducingSink.accept(...原创 2019-07-26 16:14:34 · 10291 阅读 · 1 评论 -
使用边界坐标来查找距某个纬经度一定范围内的点
原文地址:http://janmatuschek.de/LatitudeLongitudeBoundingCoordinates#RefBronstein使用边界坐标来查找距某个纬经度一定范围内的点摘要本文介绍如何有效地在数据库中查询与球面坐标(纬度和经度)中给出的点之间一定距离内的位置。该方法计算可用于数据库索引扫描的边界坐标 - 就像我们使用最小边界矩形来加速笛卡尔空间中的查询一样。它对...翻译 2019-09-18 18:04:44 · 1313 阅读 · 0 评论 -
Java 通过反射来获取对象的成员变量和其值的例子
/** * @author peter * 2018/9/4 19:04 */public class Reflect { private String name; private int age; private String cupSize; public Reflect(String name, int age, String cupSize) {...原创 2018-09-04 19:22:27 · 9296 阅读 · 0 评论 -
springboot 配置过滤器Filter及控制多个Filter的执行顺序
1、实现javax.servlet包下的Filter接口 2、@Component和@Order(可选,有多个过滤器时可添加)注解,@Order用于控制过滤器的级别,值越小级别越高 3、过滤的业务逻辑写在doFilter()方法中。备注:请求的编码格式设置建议直接写在application.yml配置中示例:跨域过滤器import org.springframework.core....原创 2018-08-10 10:52:10 · 18880 阅读 · 3 评论 -
spring boot log4j2配置(使用log4j2.yml文件)
转载自 :https://blog.csdn.net/clementad/article/details/514988641、pom文件的依赖配置中,去掉spring boot默认的log配置,引入log4j2依赖包: &lt;dependency&gt; &lt;!-- exclude掉spring-boot的默认log配置 --&gt; &lt;...转载 2018-08-09 15:58:30 · 1720 阅读 · 0 评论 -
Java中的传递机制
Java中的传递机制:值传递 1、基本数据类型:传递的是值 2、引用数据类型:传递的是内存地址public static void main(String[] args) { int a=8; TransferValue.method(a); System.out.println(a); int[] arr={8};原创 2017-03-09 16:58:56 · 269 阅读 · 0 评论 -
类的初始化过程及静态成员之间的执行顺序
一、类的初始化过程 public class Test01 { static { System.out.println("静态代码块"); } public static void method(){ System.out.println("静态方法。。"); } { System.原创 2017-03-09 15:45:12 · 573 阅读 · 0 评论 -
方法的递归算法
递归是一种方法(函数)自调用。 使用递归算法计算1+2+3的结果 public static void main(String[] args){ System.out.println(getSum(3)); } public static int getSum(int i){ if(i>0){ int su原创 2017-01-11 20:09:34 · 305 阅读 · 0 评论 -
编写99乘法表的两种方案
1、使用for循环嵌套 public static void main(String[] args){ for(int i=1;i<10;i++){ for(int j=1;j<=i;j++){ int a=i*j; System.out.print(j+"*"+i+"="+a+" ");原创 2017-01-17 20:57:32 · 647 阅读 · 0 评论 -
二维数组的排序
1、对二位数组直接排序,只对二维中的一维数组进行了排序,而不会改变一维数组中的值。 public static void main(String[] args){ int[][] arr={{12,45,7,8,9,565,45,6},{4,54,78,88,99,100},{65,66,88,11,20,30},{1,454,78,89,661,54,587,101,98}};原创 2017-01-11 12:55:48 · 2214 阅读 · 0 评论 -
冒泡排序、选择排序
1、冒泡排序 public static void replace(int[] arr,int i,int j){ int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp;}public static void print(int[] arr){ for(int i=0;i<arr.leng原创 2017-01-10 22:18:35 · 259 阅读 · 0 评论 -
this 和super 关键字的区别
属性的区别:this访问本类中的属性,如果本类没有此属性则从父类中继续查找。super访问父类中的属性。 方法的区别:this访问本类中的方法,如果本类没有此方法则从父类中继续查找。super访问父类中的方法。 构造的区别:this调用本类构造,必须放在构造方法的首行。super调用父类构造,必须放在子类构造方法首行。 其他区别:this表示当前对象。super不能表示当前对象 1、this原创 2017-01-09 16:12:59 · 10309 阅读 · 1 评论 -
Java中变量,对象,字符串等在内存中的存储区域
Java中变量,对象,字符串等在内存中的存储区域原创 2017-01-05 19:17:55 · 836 阅读 · 0 评论 -
方法的重载(Overload)和重写(Override)
1、方法的重载(Overload) 在同一个类中,方法名相同,参数列表不同,与返回值无关。 2、方法的重写(Override) 在继承(实现接口)的关系中,子类重写父类的方法,方法名相同,参数列表相同,返回值类型相同。注意点: 1)重写方法的权限修饰符的权限必须大于父类方法,且父类方法不能使用private 修饰; 2)重写方法的返回值类型和父类的方法要保持一致,但有一个特殊情况:当返回值原创 2017-03-14 16:09:32 · 395 阅读 · 0 评论 -
对象反序列化时,如果父类未实现序列化接口,则反序列出的对象会再次调用父类的构造函数来完成属于父类那部分内容的初始化
对象反序列化时,如果父类未实现序列化接口,则反序列出的对象会再次调用父类的构造函数来完成属于父类那部分内容的初始化。1、当将一个父类没有实现序列化的对象son使用ObjectOutputStream流写到本地文件中时,没有能将该对象中属于父类的部分写入到文件,因为ObjectOutputStream流不能将一个没有实现序列化的类的对象写入文件中。当将本地文件中保存的son对象通过ObjectInp原创 2017-04-20 20:43:39 · 1623 阅读 · 0 评论 -
springboot java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
报异常:java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)是database的配置写错了spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://1...原创 2018-09-25 17:36:31 · 5627 阅读 · 5 评论 -
springboot jpa 实现复杂的sql 如 A and (B or C)
在Jpa 查询,sql:SELECT *FROM table WHERE id =... AND (already_used = TRUE OR expire_date &amp;lt; ...) 原使用:findByIdAndAlreadUsedTrueOrExpireDateBefore()方法,发现jpa实现的是 where id =? and already_used = t...原创 2018-05-25 20:05:31 · 14336 阅读 · 4 评论 -
利用DateTimeFormatter 来格式化时间时,报DateTimeParseException异常
利用DateTimeFormatter 来格式化时间时,报 java.time.format.DateTimeParseException: Text ‘2018-3-15 00:00:00’ could not be parsed at index 5 异常Exception in thread "main" java.time.format.DateTimeParseException...原创 2018-03-28 22:46:37 · 44547 阅读 · 2 评论 -
SpringBoot jpa 使用懒加载时,报异常:session失效
报异常: could not initialize proxy - no Session1、在方法上加@Transactional 注解,失败 2、在application.yml 文件加上jpa.properties.open-in-view: true 失败 3、在ResourceServerApplication.java 启动文件中加上: @Bean ...原创 2018-03-12 21:03:33 · 6346 阅读 · 5 评论 -
问题小结
1、Bad Request 400 错误:一般都是前后台传人的参数的类型不匹配造成 2、在对集合使用clear()方法来清空时,同时内存中引用了该集合的地方也同时被清空;可使用new 集合来防止其他地方同时被清空;而对使用addAll方法来添加的则不会造成影响。public class Test { public static void main(String[] args) {原创 2017-11-06 15:57:26 · 143 阅读 · 0 评论 -
利用jxl 将数据从后台导出为excel
/** * 将数据写入到excel中 * * @param os * 创建Excel的输出流 * @param content * 要插入的数据源 * @param fileName * excel表头名称 */ public stat原创 2017-11-02 17:43:42 · 3726 阅读 · 0 评论 -
Hibernate 为懒加载的属性 调用时,抛出异常org.hibernate.LazyInitializationException
解决方法之一: 在service 层中使用`Hibernate.initialize(Object)` 方法来调用一次懒加载的属性原创 2017-10-18 14:55:09 · 501 阅读 · 0 评论 -
Java读取Excel和CSV文件
1、读取Excel 使用jxl jar包。 官网: http://jexcelapi.sourceforge.net/ API : http://jexcelapi.sourceforge.net/resources/javadocs/current/docs/从前台提交的表单中读取到Excel文件之后public static List<VehicleInfo> readExcel(Mult原创 2017-09-30 11:29:10 · 3848 阅读 · 0 评论