- 博客(36)
- 资源 (4)
- 收藏
- 关注
原创 JPA动态数据源实现多数据源切换数据源失败
遇到一个问题配置动态数据源之后,同一个请求,不同事务无法多次切换数据源解决方案:spring.jpa.open-in-view=false原因:spring.jpa.open-in-view(默认为true),JPA方法执行完成之后,并没有释放数据库连接(需要等到Controller方法执行完成才会释放)这里还有一点要注意数据源的切换是通过AbstractRoutingDataSource 的 determineCurrentLookupKey()实现,数据库建立连接时getConnecti
2022-04-08 15:43:17
2661
3
原创 Hibernate jpa 乐观锁 save方法 更新数据
以下代码中 参数sPartsStock,是从页面上传过来的。1 现象一这段代码,执行完,提交事务的时候,数据库里的值 WareHouseId 会被更新,但是代码里并没有写save或者update方法原因:库里查出的对象 sPartsStock123 是 托管状态 会自动同步到数据库,不会验证乐观锁,执行flush操作2 现象二代码执行前,手动把数据库里的version字段+1,也就是说sPartsStock 中的version为 100,sPartsStock123 中的v...
2020-09-01 17:34:05
1467
原创 activiti 撤销
要实现:用户发起任务后在审批完之前可以手动撤销实现: 1.查询出当前流程,我用的根据businesskey查询ProcessInstance processInstance = runtimeService.createProcessInstanceQuery(). processInstanceBusinessKey(objId).includeProces...
2019-05-27 10:20:00
4744
原创 redis + aop 限制方法频率,防止重复提交
项目在运行时期,访问时会因为网络卡顿等原因造成重复点击,多次提交的问题。尝试在前端做过限制,之后觉得使用redis 更为简单。1. redis 可以 设置过期时间,符合需求2.使用spring aop,只需要配置第一次,之后不需要更改实现思路,用户10秒内不能执行第二次新增方法,以用户ID 作为 key。AOP@Aspect@Componentpublic clas...
2019-05-09 15:02:51
1025
原创 javamail linux 发送邮件遇到的问题
window 本地邮件正常发送,Linux邮件发送失败原因:linux 无法解析域名 (smtp.ym.163.com)办法:/etc/hosts 文件中添加 ip 域名 如:111.1.1.1 smtp.ym.163.com ip获取 window 下 pingsmtp.ym.163.com 可以获取ip邮件发送成功,...
2019-04-30 16:42:42
1112
原创 Shiro+Cas+Spring+Vue 前后端分离单点登录实现
要实现单点登录的重点其实就是将 账号密码的验证 给独立出来当做一个独立的项目,只需要在此项目上一次通过验证即可。而此项目不需要自己从头来写,已经有很多开源的实现。这里使用的是CAS使用 CAS+Shiro 之前一定要,搞明白运行原理,可以少出和解决问题去网上下载 cas-server-webapp-4.2.6.war 这个war(版本随意,4.2后配置文件可能有差别),修改为cas....
2018-12-29 17:16:56
9978
3
原创 SpringBoot + Shiro 前后端分离权限
shiro 验证通过后的信息保存在session 中,而ajax 每次传的都是不同的sessionid ,所以主要的区别就是需要修改shiro获取sessionid的方式。这里使用的是登录后将后台的sessionid 传到前端然后存放到 cookie(这个存放的地方视情况而定),然后每次请求后端时在Header中携带此信息,这里起名为Authorizationshiro 中 默认获取Sessi...
2018-12-29 16:28:50
686
原创 Vue 使用 axios 访问后台
1.vue中使用mock 可以模拟请求数据。 但是axios中使用真实地址时需要禁用mock,否则axiox 正常访问地址。 2.后台数据需要跨域访问时需要在后台允许跨域访问。 spring boot 为例@Configurationpublic class CorsConfig { private CorsConfiguration buildConfig() ...
2018-12-19 12:55:01
673
原创 java 发送邮件 带附件或者表格
package com.sub.utils;import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail.internet.*;import java...
2018-12-10 14:58:05
5099
1
原创 Spring 注入实现类报错问题
在使用spring 时,假如在controller中注入了impl 实现类可能会出现报错的情况。为什么是“可能”,① 假如没用使用spring aop ,则不会报错。 ② 类没用使用接口也不会报错。1、为什么使用 aop 会导致报错: spring aop的实现是基于动态代理 如果目标对象实现了接口,那么...
2018-11-05 14:28:11
1732
2
原创 liunx+nginx+fastDFS 搭建文件服务器
配置 tracker1、 yum -y install libevent2、 yum install gcc*3、tar -zxvf libfastcommon-1.0.7.tar.gz4、[root@localhost libfastcommon-1.0.7]# ./make.sh5、[root@localhost libfastcommon-1.0.7]# ./make....
2018-09-26 16:29:12
283
原创 阿里ssl免费证书 + nginx 实现 https
https://www.aliyun.com/product/cas?utm_content=se_1513563 阿里购买地址 选择免费版购买之后补齐信息点击下载 会有配置nginx 的详细说明访问不到的原因: 1、443端口被其它进程占用 2、防火墙端口未开启http自动转https 配置 server { listen ...
2018-09-19 17:13:31
409
原创 mysql 存储过程创建及调用
返回(查询users表的条数 + 传入的数字)CREATE DEFINER=`root`@`localhost` PROCEDURE `getcount`(OUT s INT, IN t INT)BEGIN SET @t = (SELECT COUNT(1) FROM users); SET s = @t+t;END运行,users表22条数据 加 5 返回 27...
2018-08-29 14:37:46
292
原创 Swagger2 API 控制台
用于简化前后端人员的交互,便于前端人员测试和使用API1.引入jar <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> ...
2018-08-28 14:30:30
1021
原创 idea对Linux上的tomcat项目远程debug调试
一、修改 tomcat bin目录下的 startup.sh,在最后一行的 start 前加入 jpda 二、修改 catalina.sh 的端口 默认为8000 三、idea 设置好 host 和 port即可 在代码上加断点,运行四、如果不成功,多半是防火墙的问题 ...
2018-08-10 08:21:57
1591
原创 activiti会签多人审批(通过以及驳回)
一、需求 用户发起审批后,需要经过 总经理 以及 财务部长 两人同时审批。两人通过极为通过,一人拒绝即为拒绝。拒绝后用户修改重新审批或者放弃申请。二、用到的东西 1 单一网关 2 用户任务(多实例)三、使用 1.流程图 2. 设置②用户任务 多实例类型:设置为并行,...
2018-08-09 08:54:20
38579
10
原创 shiro 从数据库中获取url 配置权限
目标:这种配置是写死的,而我们需要做活1、使用 perms 如: /admins/user/**=perms[user:add:*]表示:要访问【/admins/user/**】必须具有【user:add:* 】权限 perms支持使用逗号隔开,不过需要两个权限都有才可以2、原配置类为 ShiroFilterFactoryBean <bean ...
2018-07-17 18:28:09
2547
7
原创 Spring+Mybatis修改Mybatis日志配置
Mybatis 内置日志工厂基于运行时自省机制选择合适的日志工具。它会使用第一个查找得到的工具(依次为:SLF4J,Apache Commons Logging,Log4j 2,Log4j),如果一个都未找到,日志功能就会被禁用。...
2018-07-12 09:55:57
2240
原创 slf4j+logback实现日志管理
使用日志框架的好处: 定制输出目标 定制输出格式 携带上下文信息 运行时选择性输出 灵活配置 优异的性能实现分为两部分 日志门面 和 日志实现,各个版本如下 筛选过程: 去掉jul,太过简陋 jboss不是服务大众 作者升级log4j到logback log4j2适应性不强 slf4j和logback为同一作者使用: 一、导入ja...
2018-07-12 09:41:47
573
原创 Vue.js中使用Vuex实现组件数据共享
当组件中没有关联关系时,需要实现数据的传递共享,可以使用Vuex先不管图片一、安装 在vue cli3中创建项目时勾选这个组件就可以了 或者手动安装 npm install store --save二、使用 main.js store.js .vue文件 图片中的js文件中有 三部分 分别与图片上对应 1. state中存储数...
2018-06-16 21:20:26
6018
原创 vue.js页面滚动组件 better-scroll
better-scroll是一个插件,旨在解决移动端的滚动情况(PC端也支持)其实现是使用普通的的javascript效果 一、安装 npm install better-scroll二、使用条件 wrapper中包含一个cotent三、使用 import Bscroll from 'better-scroll' ...
2018-06-16 14:12:23
1536
原创 Vue-cli3 项目配置 Vue.config.js
Vue-cli3 搭建的项目 界面想对之前较为简洁 之前的build和config文件夹不见了,那么应该如何配置 如webpack等的配那只需要在项目的根目录下新建 vue.config.js 文件(是根目录,不是src目录)语法module.exports = { // 基本路径 baseUrl: '/', // 输出文件目录 outputDir: 'dist', // esli...
2018-06-12 21:34:20
106063
9
原创 java 8 lambda表达式
一块钱的讲解视频一、lambda 表达式优点:1.函数式编程 2.参数类型自动推断 3.代码少、简洁 Lambda表达式是对象,是一个函数式接口的实例 语法 : LambdaParameters(参数)-> LambdaBody(实现逻辑)二、lambda表达式的使用场景: 任何有函数式接口的地方。 函数式接口:有且仅有一个抽象...
2018-06-07 17:24:09
283
原创 1+N 多form表单拼接传值
应用场景 一个报销审批对应多个出差项目填写js取值 var formone = $("#formone").serializeArray(); var obj = {}; $.each(formone, function(i, v){ ...
2018-05-23 17:48:38
756
原创 从浏览器输入网址到页面显示之间的过程
发起一个HTTP连接本质上就是建立一个scoket连接 之间发生的事情: 1.浏览器向DNS服务器查找输入URL对应的IP地址 这里面需要做的就是DNS解析。我们都知道互联网是通过URL来发布和请求资源的,而URL中的域名需要解析成IP地址才能与远程主机建立连接。 DNS域名解析的前两步会去浏览器缓存中和操作系统缓存中查看有没有这个域名
2017-11-29 16:38:36
1684
原创 Spring 事务管理
首先说一下,为什么需要事务。不是银行的那个例子哈哈。 最近刚开发一个审批功能,请假审批,第一步是填写请假数据。然后点击“申请请假”按钮启动审批。 启动审批的时候需要做两件事情 1.修改请假那条数据的审批状态(请假表里的 state 字段)。 2.启动流程,开始走审批(数据库中生成审批信息)。 因为在开发阶
2017-11-22 16:08:04
175
原创 Spring AOP 面向切面编程
Spring 一大特性就是 Aop 编程 1、什么是Aop编程 Aop 即 面向切面编程:举个例子 验证用户是相同的代码,把散落在程序中的公共部分提取出来,做成切面类。这就叫面向切面编程 这样就像一个切面。这样的好处在于,代码的可重用,一旦涉及到该功能的需求发生变化,只要修改该代码就行,否则,你要
2017-11-21 21:15:19
278
原创 idempiere 汉化/新建实体
都是在System用户下设置的一、 汉化 打开菜单 选择Language 设置Chinese 为 System Language 打开Language Setup import 选择翻译包 翻译包百度idempeire 翻译就能找到下
2017-11-21 16:39:08
928
原创 java 快捷键
1、自动生成方法的注释格式,例如/*** @param str* @return* @throws ParseException*/快捷键是 ALT + SHIFT + J,将光标放在方法名上,按快捷键。会生成上述方法注释的格式。
2017-10-15 10:13:31
258
原创 activiti自定义流程之Activiti Modeler汉化
Activiti Modeler的汉化相对来说比较简单 1、主要是将stencilset.json以及en.json 文件替换即可 2、我在汉化是要把项目的编码方式改为utf-8 要不然出现乱码 3、两个json文件的下载地址http://download.youkuaiyun.com/download/qq_35167373/10007732
2017-10-05 12:02:50
2370
原创 java项目数据库乱码的解决办法
最近做项目的时候遇到了好几次数据库存取乱码的问题,每次都需要弄小半天,现在把一些解决方法分享一下,有什么需要补充可以告诉我一下 1、myeclipse 修改(eclipse同理) window——Preserence——General——Workspace——Text file encoding——other 设置为utf-8 2、项目修改 右
2017-09-28 09:24:55
593
原创 svn安装以及与myeclipse结合完整版
1、首先需要三个插件,这三个文件可以去我上传的资源里下载。 第一个为svn客户端文件用来上传代码 第二个为svn服务端文件,用来管理代码 第三个为svn myeclipse插件2、在服务器或者电脑上安装svn服务端,(里面有升级为企业版的破解方法,但是并不需要也能完成所需功能) 运行第二个文件,安装过程比较简单,安装完打开的界面 如下
2017-09-27 16:01:10
746
转载 本地PostgreSQL数据库远程访问
1、下载安装完 postgresql 后,找到安装目录下的data文件夹2、找到 pg_hba.conf文件,在文件最后有这样一段 # IPv4 local connections: host all all 127.0.0.1/32 md5 host all
2017-09-26 10:18:20
974
spring activiti jar包
2017-09-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人