分类 Java 下的文章
- 首页
- Java
JdbcTemplate 通过 batchUpdate 批量执行 sql 语句并实现事务及回滚
JdbcTemplate 的 batchUpdate() 方法默认是不在事务中执行的,batchupdate 中的每一条记录都会自动的 commit,如果有异常,则只有异常的数据执行失败,其他数据不会 rollback 回滚,并且后续的数据可以继续执行。如果需要将 batchUpdate() 执行的所有 sql 放在一个事务中执行需要用到 TransactionTemplate,代码如下。J...
JdbcTemplate 一次执行多个 select 语句返回多个数据集
我能不能先抱怨一下:习惯了使用C#的DataSet、DataTable处理数据,真是的相当的好用,转到Java真的是非常的不习惯,一会List<Map<String,Object>,一个List<List<Map<String,Object>>好痛苦。这不现在为了一次执行多个select获取多个结果表让我好为难,不过最终还是解决了。JdbcTe...
IDEA 实现 visual studio 的 region 区域注释功能
用习惯了 vs 真是换其它开发工具都不太适应,vs 中有个功能非常好用就是#region区域注释,可以将一段代码包裹起来并收缩,这样代码多个看起来结构也会非常清晰,其实 idea 也支持 region 注释。//region ========== 这里是注释内容 ========== //这里是代码 //endregion效果展示效果1:效果2:代码片段为了方便输入,可以定制代码片段,以...
Spring Boot:Shiro 类型转换异常 model.User cannot be cast to model.User
这个坑真是不小,看着报错的异常信息都想吐:model.User cannot be cast to model.User问题代码如图:解决方案一不使用spring-boot-devtools热部署,问题是ClassLoader类加载器的不同导致的类型转换异常,项目启动时加载项目中的类使用的加载器都是org.springframework.boot.devtools.restart.class...
Spring Boot:整合 Redis 缓存及封装操作工具类
本文转载自:https://www.cnblogs.com/zeng1994/p/03303c805731afc9aa9c60dbbd32a323.html感谢原作者。SpringBoot 整合Redis的博客很多,但是很多都不是我想要的结果。因为我只需要整合完成后,可以操作 Redis 就可以了,并不需要配合缓存相关的注解使用(如@Cacheable)。看了很多博客后,我成功的整合了,并写...
Spring Boot:无法捕获 Thymeleaf 模板渲染异常
网上太多关于通过 @ControllerAdvice 处理全局异常的文章,但这种方式只能捕获 Controller 层的异常,如果是模板渲染发生异常(如模板文件不存在)则不会被 @ControllerAdvice 捕获到,查了一下资料没有找到理想的方法,临时只能先通过自定义 error.html 显示一下了。有没有高手有好方法。@ControllerAdvice annotation can...
Thymeleaf 排除标签(不写在标签中)直接显示内容
一般情况下 Thymeleaf 模板要输出变量需要在某个标签中(如<div>、<span>)写th:text等属性来实现。但有时我们希望想不写在标签中,直接输出变量的值,比如在 <title> 标签中直接显示变量 msg 的值,而不需要包含在 <span> 等标签中。解决方案一:使用 th:block<title><th:bl...
Java 常用模板引擎推荐
做 Web 开发离不开模板引擎,想十多年前微酷那时热衷于下载各类网站 CMS 管理系统,第一时间就是看模板支持哪些标签,那时认为内置支持的模板标越多就越牛B,谁让那时不会编程只是个苦逼的草根伪站长呢。当时就认为动易是最牛逼的 CMS,织梦也很流行但感觉 PHP 好难模板改起来也好复杂...扯远了,今天的正题是分享下 Java 比较流行的模板引擎,先说下微酷一个也没用过,因为这个月刚开始转研究...
Spring Boot Gradle 瘦身打包 thinJar,分离 lib jar 依赖
需求背景:srping boot 2.0+ 打包生产的 fat jar 虽然部署起来很方便,但将所有依赖都打包到一个 jar 包中使得体积也不小(40M+),第一次部署还没问题,之后的更新就很痛苦了,每次发布更新时一般都是自己项目的业务代码发生变化,依赖一般不会变化除非升级或增加了项目依赖。我们期望的场景是每次更新只上传我们自己的业务模块 jar 包,大小可能只有几十K,这就是今天要讲的 t...
Spring Boot 多模块开发全局异常 @RestControllerAdvice 不起作用没效果
环境介绍微酷搭建了多模块框架开发 spring boot,三个模块分别为my-commonmy-frameworkmy-web其中my-web是启动模块,依赖另外两个模块。问题在my-framework模块中编写的全局异常处理类@RestControllerAdvice没有效果,idea编辑器也显示灰色提示没有用到。解决方案对比其它人写的项目好久也没发现哪里有问题,无意中发现spring 官...
[转]关于 java 中用 get() 和 set() 方法而不用 public 的一点总结
在很多程序中,都喜欢定义一个privata变量,然后为这个私有变量加上get(),set()方法。那为什么不直接定义一个public变量呢?这样做到底有什么好处和意义呢?难道真的仅仅只是为了代码规范?别逗了,不管你信不信,反正我是不信!带着这个问题我在网上寻找答案,真是众说纷纭啊,每个人都能说出一点点道理,但是却都不足以说服我!(所以在这里做一些总结,和大家分享,我们共同学习,共同进步。如果...
Spring Boot 连接 sqlserver 数据库
现在微酷不管研究什么框架,第一时间是将默认的Mysql连接改成SqlServer,因为公司的ERP都是跑在微软的平台上的。Spring Boot 连接 sqlserver 数据库添加依赖pom.xml 文件添加依赖<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc --> <d...
Shiro 自定义 Session 过期超时时间+登录后指定时间强制 session 过期
提前说下 Session 过期时间是不发起请求持续一定时间后 session 过期,shiro 默认是 30 分钟。shiro 设置 session 超时时间Shiro 的 Session接口有一个 setTimeout() 方法,登录后,可以用如下方式取得 sessionSecurityUtils.getSubject().getSession().setTimeout(1800000);...
Spring Boot 无法捕捉 404 异常问题
系统做了一个全局异常,对各种异常进行封装,统一返回。@ExceptionHandler(NoHandlerFoundException.class) @ResponseStatus(value = HttpStatus.NOT_FOUND) @ResponseBody public ResponseEntity<ErrorResponse> handle404(NoHandler...
Spring Boot Shiro Redis 缓存 Key 乱码
最近搭建的Spring boot+shiro+redis模板项目到了配置缓存了,发现写入的key前面有一部分是乱码。\xac\xed\x00\x05t\x00shiro:cache:admin解决方案自动注入的redisTemplate进行以下设置:redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTempla...