- 博客(241)
- 问答 (2)
- 收藏
- 关注
Spring(31)——WebClient介绍
WebClient是从Spring WebFlux 5.0版本开始提供的一个非阻塞的基于响应式编程的进行Http请求的客户端工具。它的响应式编程的基于Reactor的。WebClient中提供了标准Http请求方式对应的get、post、put、delete等方法,可以用来发起相应的请求。下面的代码是一个简单的WebClient请求示例。可以通过WebClient.create()创建一...
2018-07-28 10:12:57
33967
8
Java使用AES加解密
Java使用AES加解密目录1.1生成密钥1.2密钥的存储1.3获取存储的密钥1.4加解密1.5使用存储的密钥进行加解密示例 AES是一种对称的加密算法,可基于相同的密钥进行加密和解密。Java采用AES算法进行加解密的逻辑大致如下:1、生成/获取密钥2、加/解密 1.1生成密钥密钥的生成是通过KeyGenerator来生成的。通过获取一个K...
2017-04-20 19:58:20
631
为什么switch case语句需要加入break
假设我们有如下这样一个switch语句: public static void test(int index) { switch (index) { case 1: System.out.println(1); case 2: System.out.println(2); case 3: System.out.println(3); ...
2017-04-04 22:29:50
2107
1
Mybatis取出来的Date没有时间,只有日期
最近遇到一个问题,数据库存储的Date是包含时分秒的,数据库用的是Oracle,日期类型用的是date,数据库访问用的是Mybatis,对应的代码是通过Mybatis-Generator生成的。经检查发现是生成的代码中,存储了时分秒的字段在映射的时候对应的jdbcType是DATE,改成TIMESTAMP就好了。 ...
2017-03-08 20:16:05
1143
Mybatis指定日志输出实现
10 Mybatis指定日志输出实现 在程序开发过程中,为了调试方便、了解程序的运行过程,进行必要的日志输出总是免不了的。对于使用Mybatis而言,我们常见的需求是希望可以在日志中打印出Mybatis执行过程中进行数据库操作的SQL语句及其传递的参数。Mybatis的日志输出是统一管理的,它有自己的日志接口,然后在需要进行日志输出的时候使用统一...
2017-02-24 09:19:28
758
Mybatis介绍之参数传递
9 Mybatis介绍之参数传递9.1 使用Mapper接口时参数传递方式 Mybatis在使用Mapper接口进行编程时,其实底层是采用了动态代理机制,表面上是调用的Mapper接口,而实际上是通过动态代理调用的SqlSession的对应方法,如selectOne(),有兴趣的朋友可以查看DefaultSqlSession的getMapper(...
2017-02-20 10:26:07
202
Mybatis介绍之缓存
8 Mybatis介绍之缓存Mybatis中有一级缓存和二级缓存,默认情况下一级缓存是开启的,而且是不能关闭的。一级缓存是指SqlSession级别的缓存,当在同一个SqlSession中进行相同的SQL语句查询时,第二次以后的查询不会从数据库查询,而是直接从缓存中获取,一级缓存最多缓存1024条SQL。二级缓存是指可以跨SqlSession的缓存。 ...
2017-02-14 10:54:14
158
Mybatis结果集自动映射
7 Mybatis结果集自动映射 在使用Mybatis时,有的时候我们可以不用定义resultMap,而是直接在<select>语句上指定resultType。这个时候其实就用到了Mybatis的结果集自动映射。Mybatis的自动映射默认是开启的,其在映射的时候会先把没有在resultMap中定义字段映射的字段按照名称相同的方式自动映射到返回...
2017-02-06 14:14:15
347
Mybatis的Executor介绍(二)——批处理,批量更新
6 Mybatis的Executor介绍(二)——批处理 在程序中,有时候我们需要批量的去操作一些数据,批量的新增、修改、删除,如果是通过for循环一条记录一条记录的去更新无疑效率会比较慢。更佳的做法无疑是采用JDBC对批处理的支持。Mybatis基于JDBC对批处理的支持,也提供了进行数据的批量操作的API,BatchExecutor。下面是一段JDBC进行批...
2017-01-18 10:47:58
1499
原创 Mybatis的Executor介绍(一)
5 Mybatis的Executor介绍(一) 目录 5 Mybatis的Executor介绍(一)5.1 SimpleExecutor5.2 ReuseExecutor5.3 BatchExecutor5.4 Executor的选择5.4.1 默认的Ex...
2017-01-07 09:46:26
515
Mybatis查询延迟加载
Mybatis查询延迟加载 目录1.1 启用延迟加载1.2 分析1.3 aggressiveLazyLoading1.4 lazyLoadTriggerMethods 1.1 启用延迟加载 Mybatis的延迟加载是针对嵌套查询而言的,是指在进行查询的时候先只查询最外层的SQL,...
2017-01-06 14:19:58
366
Mybatis核心杂谈
Mybatis杂谈 目录1.1 配置解析1.2 全局配置简介1.3 应用浅析 本文主要介绍Mybatis的配置解析对应的Class、Mybatis的全局配置等,每个点都不会讲太多细节的东西,只是提一下对应的点,更多细节的东西请有兴趣的读者自己去挖掘。1.1 配置解析 ...
2017-01-06 14:12:14
182
Mybatis表对象继承实现
Mybatis表对象继承 我们一般用表来表现对象之间的继承关系时通常有三种方式。第一种是把所有对象包含的属性都存放在一张表中,然后用一个字段来区分当前记录对应的对象类型;第二种是每个子类型一张表,每张表都存该对象所有的属性;第三种是基类作为一张表进行存储,每个子类特性的属性都新建一张表进行保存,然后在基类对应的表里面通过一个字段来区分对象的类型。第二种跟普...
2016-12-21 17:25:24
658
Mybatis通过一条SQL查出关联的对象
Mybatis通过一条SQL查出关联的对象以往在做对象的查询时如果需要把关联的对象一起查出来是通过resultMap的子查询来进行的,这种用法可以参考我之前写的一篇文章http://elim.iteye.com/blog/1337009。通过子查询来进行的关联对象的查询时,Mybatis会重新发起一次数据库请求,这在有的时候性能方面不是特别的好,我们期望可以用一条SQL语句就把主...
2016-12-20 20:00:08
172
org.apache.commons.discovery.DiscoveryException
笔者的一个项目是Maven项目,通过使用tomcat的Maven插件启动的时候抛出了这个异常,异常的完整信息是:org.apache.commons.discovery.DiscoveryException: Class org.apache.commons.logging.impl.SLF4JLogFactory does not implement org.apach...
2016-12-06 09:34:42
1336
Java枚举类型介绍
简介 Java的枚举类型用于在某些东西可以枚举出来的时候,我们可以把它定义为枚举类型,然后把其中包含的可选值一一枚举。打个比方,我们现在有一堆数字,大致可以分为四种类型,整型、浮点型、金额和百分比。整型的我就需要按整型显示,如果是浮点型则要求保留两位小数,如果是金额则要求按千分位展示,如果是百分比则要求显示对应的百分比。为此我们就定义了一个枚举类型NumberType...
2016-12-05 20:40:07
168
Java SPI机制简介
Java SPI机制简介 SPI是Service Provider Interfaces的简称。根据Java的SPI规范,我们可以定义一个服务接口,具体的实现由对应的实现者去提供,即Service Provider(服务提供者)。然后在使用的时候只要根据SPI的规范去获取对应的服务提供者的服务实现即可。为了便于理解,我们先来看一个使用SPI的示例。 ...
2016-10-09 10:37:26
155
Nginx搭建负载环境
Nginx搭建负载环境 Nginx的负载均衡支持4种算法,round-robin、least-connected、ip-hash、和weightd。 round-robin round-robin的意思是循环轮询。Nginx最简单的负载均衡配置如下:http { upstream app1 { server 1...
2016-05-07 21:21:19
195
Weblogic命令行更换控制台密码
Weblogic命令行更换控制台密码 1、 在对应域的管理server下的security目录下找到boot.properties文件,其内容形式如: password={AES}mslf4i31COfxJt45PZxZESyDDq6VSQ8KKpn+9+MJK8U\= username={AES}RkGwB3GyOjrpi3CnhmABuG1N...
2016-05-07 21:16:18
180
JAXB(一)——初体验之实现XML和对象之间的映射
JAXB的全称是Java Architecture for XML Binding,是一项可以通过XML产生Java对象,也可以通过Java对象产生XML的技术。JDK中关于JAXB部分有几个比较重要的接口或类,如:Ø JAXBContext:它是程序的入口类,提供了XML/Java绑定的操作,包括marshal、unmarshal等。Ø Marshalle...
2016-04-19 20:58:57
293
Nginx代理应用端口丢失问题
Nginx代理应用端口丢失问题 最近使用Nginx代理weblogic的过程中发现访问了weblogic的console后,在应用跳转至登录界面时对应的端口号自动丢失了。比如我访问的是http://localhost:8888/console,在跳转至登录界面时地址栏的地址自动变为了http://localhost/console/login/LoginForm.jsp,...
2016-03-28 21:34:08
372
Weblogic多应用部署在一个域下导致session冲突
Weblogic多应用部署在一个域下导致session冲突问题解决办法 最近在Weblogic的一个域下面同时部署了多个应用,出现了session冲突的问题。其现象是这样的,访问A正常,但是从应用A跳转到应用B后,应用A的session立马就失效了。因为以前在tomcat上也遇到过类似的情况,当时立马就想到应该是session冲突的问题,每个应用在写保存session信息的...
2016-03-28 21:17:41
206
Linux上节点服务器启动正常,计算机连接不上
最近在Linux上的Weblogic上创建自己的Machine时,发现监控的nodeManager的状态一直是异常的。经查找资料发现,在启动nodeManager时使用到的配置中默认是启用了安全访问协议的,即SecureListener=true。而在创建Machine的时候选择了通信方式为普通,这样两者就连接不上了,所以本次出现的问题其实就是两者之间使用的协议不一致导致的,...
2016-03-28 20:28:42
832
Spring Security(20)——整合Cas
整合Cas 目录1.1 配置登录认证1.1.1 配置AuthenticationEntryPoint1.1.2 配置CasAuthenticationFilter1.1.3 配置AuthenticationManager1.2 单点登出1.3 使用代理1.3.1 代理...
2016-01-13 23:43:48
393
Spring Security(19)——对Acl的支持
对Acl的支持 目录1.1 准备工作1.2 表功能介绍1.2.1 表acl_sid1.2.2 表acl_class1.2.3 表acl_object_identity1.2.4 表acl_entry1.3 Acl主要接口1.4 配置AclSer...
2016-01-06 21:17:04
159
Log4j分级别记录日志文件
Log4j分级别记录日志文件 在记录日志的时候通常我们都希望不同级别的日志能够分别记录在不同的日志文件中,然后有一个汇总的日志文件记录所有的日志信息,因为在大多数情况下我们可能只会关注那些Error级别的日志信息。利用log4j去记录这些信息是比较简单的,我们可以配置多个不同的appender,然后每个appender对应的threshold指定需要过滤的不同级别。A...
2015-12-17 18:18:00
129
Cxf拦截器中获取当前请求的参数
Cxf拦截器中获取当前请求的参数 有的时候我们的工程里面会有很多的Webservice服务,我们可能出于某种原因可能需要对每个请求实现特定的逻辑,比如说对参数的有效性进行校验,这种逻辑往往是通过Cxf的拦截器来实现的,这个时候就需要获取Webservice服务的当前请求参数。Cxf中用MessageContentsList来封装一次请求的所有参数,它是继承自java....
2015-12-16 13:49:38
848
Cxf获取Http对象
Cxf获取Http对象 目录1.1 服务实现类中1.1.1 通过MessageContext获取1.1.2 通过Message获取1.2 拦截器中 有的时候我们可能需要在Webservice中获取Http元素,包括HttpServletRequest和HttpServletRespon...
2015-12-15 20:39:42
484
Spring Security(18)——Jsp标签
Jsp标签 目录1.1 authorize1.2 authentication1.3 accesscontrollist Spring Security也有对Jsp标签的支持的标签库。其中一共定义了三个标签:authorize、authentication和accesscontrollist。其中authentication标签...
2015-12-10 10:45:49
117
Spring Security(17)——基于方法的权限控制
基于方法的权限控制 目录1.1 intercept-methods定义方法权限控制1.2 使用pointcut定义方法权限控制1.3 使用注解定义方法权限控制1.3.1 JSR-250注解1.3.2 @Secured注解1.3.3 支持表达式的注解1.4 方法权限控制的拦截器1.4.1 Method...
2015-12-07 17:00:33
123
Web环境使用相对路径发布Webservice
Web环境使用相对路径发布Webservice 通常我们的Webservice服务的发布地址都将是一个相对路径,在与Spring一起使用时我们需要引入Cxf配置Webservice的schema,如jaxws,用以定义对应的Webservice。 <?xml version="1.0" encoding="UTF-8"?><beans x...
2015-12-03 16:00:35
124
Weblogic Jms简单应用
Weblogic Jms简单使用 目录1 基本用法1.1 Jms服务端1.1.1 配置Jms服务器1.1.2 配置Jms模块1.2 Jms客户端1.2.1 Jar包导入1.2.2 程序开发2 整合Spring3 参考文档 1 基本用法 对于Webl...
2015-10-24 09:45:58
130
Cxf拦截器简介
Cxf拦截器 目录1.1 自定义拦截器1.2 配置拦截器1.2.1 程序化配置1.2.2 注解配置1.2.3 Cxf配置文件配置1.3 LoggingInterceptor1.4 参考文档 拦截器是Cxf的基础,Cxf中很多的功能都是由内置的拦截器来实现的,拦截器在Cxf中由Interc...
2015-10-12 21:33:51
548
Apache整合Tomcat、集群
Apache整合Tomcat、集群 目录1.1 使用mod_proxy整合1.2 使用mod_jk整合1.3 集群1.3.1 Tomcat集群配置1.3.2 mod_proxy进行负载均衡1.3.3 mod_jk进行负载均衡 Apache整合Tomcat主要有两种方式,通过mod_proxy整合和通...
2015-10-05 13:58:46
159
HashMap、HashSet、TreeMap、TreeSet判断元素相同
HashMap、HashSet、TreeMap、TreeSet判断元素相同 目录1.1 HashMap1.2 HashSet1.3 TreeMap1.4 TreeSet 1.1 HashMap 先来看一下HashMap里面是怎么存放元素的。Map里面存放的每一个元素都是key-value这样的键值对,而...
2015-10-03 17:14:34
216
Spring Security(16)——基于表达式的权限控制
基于表达式的权限控制目录1.1 通过表达式控制URL权限1.2 通过表达式控制方法权限1.2.1 使用@PreAuthorize和@PostAuthorize进行访问控制1.2.2 使用@PreFilter和@PostFilter进行过滤1.3 使用hasPermission表达式 Spring Sec...
2015-10-01 17:24:59
411
Spring Security(15)——权限鉴定结构
权限鉴定结构目录1.1 权限1.2 调用前的处理1.2.1 AccessDecisionManager1.2.2 基于投票的AccessDecisionManager实现1.3 调用后的处理1.4 角色的继承 1.1 权限 所有的Authentication实现类都保存了一个G...
2015-10-01 11:09:56
202
Spring Security(14)——权限鉴定基础
权限鉴定基础 目录1.1 Spring Security的AOP Advice思想1.2 AbstractSecurityInterceptor1.2.1 ConfigAttribute1.2.2 RunAsManager1.2.3 AfterInvocationManager Spring Security的...
2015-05-17 20:13:41
306
Spring Security(13)——session管理
session管理目录 1.1 检测session超时1.2 concurrency-control1.3 session 固定攻击保护 Spring Security通过http元素下的子元素session-management提供了对Http Session管理的支持。 1.1 检测session超时...
2015-05-04 22:37:48
244
Spring Security(12)——Remember-Me功能
Remember-Me功能 目录 1.1 概述1.2 基于简单加密token的方法1.3 基于持久化token的方法1.4 Remember-Me相关接口和实现类1.4.1 TokenBasedRememberMeServices1.4.2 PersistentTokenBasedRememberMeService...
2014-12-07 20:58:48
314
空空如也
filter配置url-pattern过滤action
2010-11-03
为什么我从inputstream里面读出内容的时候会多读出一部分呢
2010-10-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人