spring
文章平均质量分 72
lukezhang-123
博客好强大!注意保护视力!
展开
-
springboot的jpa配置,自定义Transformer转换oracle字段名大写为驼峰到DTO
spring: datasource:# url: jdbc:oracle:thin:@127.0.0.1:22:nuolin# username: bird_db# password: nolybird url: jdbc:oracle:thin:@192.168.1.241:1521:orcl username: xy password: o...原创 2020-03-19 14:41:48 · 1602 阅读 · 0 评论 -
springboot获取request请求的原始url与post参数
获取请求的完整url与请求参数,post的body中的数据,最根本的是利用HttpServletRequest ,来获取信息,然后是可以使用不同的方式,比如aop拦截,spring中已有过滤器类,方便使用使用springboot的aop拦截import java.util.Enumeration;import javax.servlet.http.HttpServletRequest;...原创 2020-02-25 15:15:32 · 12537 阅读 · 0 评论 -
springboot的jar包太大不方便更新,使用生成的jar.originanl启动项目,不用修改生成其他不带依赖的jar包,分离lib
springboot项目默认使用spring-boot-maven-plugin生成包含依赖的一个完整可运行的大jar包,一般情况很方便,但是在远程更新时,由于生成的包太大,更新慢,所以可以使用下面的方法轻松更新//pom.xml <build> <plugins> <plugin> ...原创 2020-02-17 15:55:09 · 2488 阅读 · 2 评论 -
springboot1.5的maven项目模板
记录使用springboot 1.5的maven,方便以后快速搭项目//pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins...原创 2020-02-13 22:57:29 · 373 阅读 · 0 评论 -
使用springboot发送qq企业邮箱邮件与附件
//pom.xml <properties> <java.version>1.8</java.version> </properties> <parent> <groupId>org.springframework.boot</groupId> &...原创 2020-02-13 19:35:45 · 1054 阅读 · 0 评论 -
springboot的restTemplate发送参数为json的post请求
String json="{\"pageSize\":10,\"pageNumber\":1}"; HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); HttpEntity<String> reques...原创 2020-02-12 20:28:18 · 1915 阅读 · 0 评论 -
springboot简单读取maven下resources目录下的文本文件
//filePath就是resources目录下的相对路径,可以是文件夹 System.out.println("当前项目运行路径:"+new File(".").getAbsolutePath()); ClassPathResource resource = new ClassPathResource("data/1.csv"); System.out.println("文件...原创 2020-02-12 20:26:03 · 740 阅读 · 0 评论 -
springboot2的maven项目模板
记录使用springboot2的maven,方便以后快速搭项目//pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan...原创 2020-02-12 20:16:13 · 837 阅读 · 0 评论 -
springbatch简单使用@EnableBatchProcessing
springbatch批处理,不要理解为hadoop那样的【分布式计算】框架,只是个简单的批处理,是个批量处理日志导入数据,匹配修改每一行的大写等等之类,不能很好的做分布式wordcount【基本理解】需要配置一个job,一个job可以分为几个step,一个step有read,process,write过程的顺序,process可以没有,write必须,write可以是文件的FlatFileI...原创 2019-11-25 20:24:50 · 1782 阅读 · 0 评论 -
springboot2内部日志显示
springboot 2.1.9.RELEASE 可以显示springboot内部debug日志,方便看代码resources/logback.xml<?xml version="1.0" encoding="UTF-8"?><configuration debug="true" scan="true" scanPeriod="1 seconds"> <...原创 2019-11-14 17:46:57 · 728 阅读 · 0 评论 -
springboot配置mysql和oracle双数据源
项目总览//pom.xml<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.9.RELE...原创 2019-10-31 20:44:25 · 3568 阅读 · 0 评论 -
springboot完美使用jpa,支持原生sql绑定参数查询与分页转model,完胜jdbctemplate
springboot结合hibernate的jpa,简单的单表使用jpa的repository查询,稍微复杂的可以使用createNativeQuery执行原生sql语句查询,非常方便jpa的原生单表查询,与JpaRepository的findBy。。。等等的快捷查询方式就不写了,下面的工具类可以方便的执行原生sql,与分页import com.alibaba.fastjson.JSONObj...原创 2019-10-25 16:08:07 · 1364 阅读 · 0 评论 -
springboot中Hibernate的Jpa使用NativeQuery原始sql,再用fastjson转pojo
springboot的数据库配置,application-dev.ymlspring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://192.168.1.222:3306/ppppp?useOldAliasMetadataBehavior=true&useSSL=false...原创 2019-10-18 11:05:12 · 1311 阅读 · 0 评论 -
通过配置AsyncConfigurer来实现springboot的@Async异步调用异常捕获
@Async 注解在service上,可以实现在controller的异步调用,调用的被@Async注解的方法会在一个单独线程内运行,适合即使返回,异步解耦,service慢慢去处理@Async 注解的方法只能 返回void或者future类型的返回值,其他值会使 注解无效,因为不能异步执行被@Async 的方法在独立线程调用,不能被@ControllerAdvice全局异常处理器捕获,所以需...原创 2019-08-16 10:56:06 · 11189 阅读 · 4 评论 -
springboot hibernate jpa createNativeQuery使用原生sql查询并转换为pojo的model对象,方便好用
先把entityManager.createNativeQuery生成的jpa接口的Query 强转为hibernateQuery 的query然后就可以调用hibernate的方法,设置属性,返回的list结果就是Map<String,Object>的有列名称columnName的对象然后用jackson的ObjectMapper().convertValue把map转换为po...原创 2019-06-24 19:21:17 · 3983 阅读 · 3 评论 -
springboot的@Autowired底层过程示例demo或者Apache commons-lang3实现
假设下面的类的属性被@Autowired注解public class MyModel { private String test; public String getTest() { return test; }}下面是spring利用java的反射reflection注入属性public class Test { public sta...原创 2019-06-26 10:40:00 · 820 阅读 · 0 评论 -
快速查看springboot项目的所有自启动执行方法
对于RestController可以访问地址,出发调用,但是自启动的类方法,在本地调试时,有时候会捣乱,输出大堆日志,修改数据等等以下是总结的springboot项目的常见自启动方式@Scheduled(fixedRate = 5 * 60 * 100)定时的cron时间特别短@Scheduled(fixedRate = 30 * 60 * 1000)继承CommandLineRunne...原创 2019-06-13 10:58:16 · 953 阅读 · 0 评论 -
springboot banner打印,控制台springboot图案怎么来的
开始SpringApplication.run(SampleController.class, args);开始SpringApplication的初始化public SpringApplication(Object... sources) { //一些初始化,监听器,容器初始化 this.initialize(sources); }执行过程的方法原创 2018-01-11 17:59:38 · 17754 阅读 · 0 评论 -
spring---ApplicationContextAware接口--获取ApplicationContext
类实现ApplicationContextAware接口的setApplicationContext方法 spring启动时会把ApplicationContext通过setApplicationContext方法给你,以后就能根据需要getBeanSpringUtil.javapublic class SpringUtil implements ApplicationContextAware {原创 2017-12-29 10:08:46 · 14151 阅读 · 0 评论 -
springweb--WebDataBinder
【作用】WebDataBinder实现将请求request绑定到复杂属性时的请求字符string到属性的转换 【原因】一般的string, int, long会自动绑定到参数,但是自定义的格式spring就不知道如何绑定了 【实现】所以要继承PropertyEditorSupport,实现自己的属性编辑器PropertyEditor,绑定到WebDataBinder ( binder.regi原创 2018-01-10 14:16:38 · 17454 阅读 · 0 评论 -
SpringMVC的各种参数绑定方式
SpringMVC的各种参数绑定方式转载 2018-01-10 14:44:17 · 14129 阅读 · 1 评论 -
spring 快速读取文本,解析json
maven项目 文本文件放入resources目录下,最后编译后会放到classpath根目录 利用spring工具快速读取文件文件的所有内容import org.springframework.core.io.ClassPathResource;import org.springframework.core.io.Resource;import org.springframework...原创 2018-08-15 11:17:03 · 2240 阅读 · 0 评论 -
Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory
报错是说找不到容器工厂类,一个原因是pom里没有引入embedtomcat,第二个是用错了注解SpringBootApplication//pom.xml 要有starter,表示使用内置tomcat容器<parent> <groupId>org.springframework.boot</groupId> <a...原创 2018-09-21 14:12:19 · 14875 阅读 · 1 评论 -
spring 非xml配置 非@Aspect 注解 使用aop切面编程 方便深入学习aop源码
使用maven项目,实现基于纯java的类代码实现spring的aop功能,不用xml配置,不用aop注解实现aop,直接使用类的java代码实现,直接执行main方法,看到aop结果输出//pom.xml&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;&amp;lt;project xmlns=原创 2018-09-27 11:18:33 · 1809 阅读 · 0 评论 -
spring aop底层原理ProxyFactoryBean的具体使用过程--FactoryBean深入理解
实际的spring使用aop的过程,配置好ProxyFactoryBean,给ProxyFactoryBean设置一个bean id然后通过ac.getBean(bean id),就取得被ProxyFactoryBean代理的对象,不是ProxyFactoryBean因为这个bean id虽然代表ProxyFactoryBean对象,直接getBean获取的是ProxyFactoryBean....原创 2018-10-31 10:56:44 · 10265 阅读 · 7 评论 -
springboot集成springsecurity 使用OAUTH2做权限管理
Spring Security OAuth2主要配置,注意application.yml最后的配置resource filter顺序配置,不然会能获取token但是访问一直 没有权限WebSecurityConfigurerAdapter 所在服务器的web配置AuthorizationServerConfigurerAdapter 认证服务器配置...原创 2019-04-25 19:41:44 · 10999 阅读 · 0 评论 -
@ExceptionHandler不管用 spring security oauth2 自定义异常拦截InternalAuthenticationServiceException
由于spring security的认证filter,使得认证异常不能通过DispatcherServlet,所以@ExceptionHandler处理不到需要自定义 资源服务 异常处理过程 resources.authenticationEntryPoint 与 resources.accessDeniedHandler,可以拦截并自定义处理//AuthenticationEn...原创 2019-04-26 20:52:50 · 18177 阅读 · 10 评论 -
springboot集成springsecurity简单权限管理与logout退出,@AuthenticationPrincipal
springsecurity主要是 认证 (密码登录) 与 授权 (角色权限管理)下面一个简单项目例子,使用springsecurityMyUserDetailsService#loadUserByUsername 用户登录SecurityConfig#configure 配置springsecurity行为Controller中的@PreAuthorize就是用户权限对照上图看,权限...原创 2019-04-24 18:53:22 · 15347 阅读 · 1 评论 -
使用spring的异步模式@EnableAsync与@Async配合Future与AsyncResult实现异步调用服务并行,也可以并行sql查询加速系统
spring boot项目服务类上注解@EnableAsync开启扫描方法上的@Async注解,当其他bean调用这个被@Async注解的方法时,spring会通过代理,在子线程里执行,达到异步调用与并行执行的目的【注意】不能在类内部 (bean内部,spring无法感知) 调用@Async (就是要),spring无法感知到,所以不会再子线程执行@Async生效需要一个bean(con...原创 2019-05-09 15:11:56 · 5364 阅读 · 0 评论 -
springboot中jpa5使用多数据源
多数据源配置后,由于entityManage 与DataSource是绑定的,@EnableJpaRepositories注解绑定repository目录与entityManage,所以使用Jparepository时会自动使用对应的数据源。暂时交叉库查询没有,可以使用原生本地sql查询,下面有测试用例注意,主数据源配置@Primary,不然启动报错//启动类上面@SpringBootApp...原创 2019-06-06 09:35:58 · 331 阅读 · 0 评论 -
Spring中@transactional原理
一、一般编程式事务管理1.开启事务 2.执行dao处理 3.提交或回滚事务二、spring声明式事务管理,好处代码清晰,重复少1.开启注解(两种方法)1)@EnableTransactionManagement 2) xml配置开启<tx:annotation-driven /><bean id="transactionManager"...转载 2017-12-05 16:08:17 · 13725 阅读 · 0 评论