自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

转载 2021-04-26

基于JDBC层数据权限是如何设计的 前面一篇博客聊聊数据权限哪些事儿介绍了数据权限配置文件和数据权限的几个示例,这篇文章来详细介绍下tiny版本的数据权限是如何设计的? Tiny版本的数据权限是基于jdbc底层实现的,可以把它理解为jdbc驱动的增强版实现,可以完全替代底层数据库的驱动。它是轻量级框架,以jar包形式提供服务,无proxy代理层,无需额外部署,只需依赖底层数据库的驱动,而且DBA也无需改变原有的运维方式。它有以下特点:(1)、无侵入性,可以在任何java环境下运行...

2021-04-26 11:00:28 273

原创 python变量名

相同点python 和其他语言一样,变量有以下三个特点:标识符可以由字母、数字、下画线(_)组成,其中数字不能打头。 标识符不能是 Python 关键字,但可以包含关键字。 标识符不能包含空格。例如下面变量,有些是合法的,有些是不合法的:abc_xyz:合法。 HelloWorld:合法。 abc:合法。 xyz#abc:不合法,标识符中不允许出现“#”号。 abc1:合...

2019-12-06 18:26:14 416

原创 SpringBoot 自定义拦截器 HandlerInterceptor

在进行web 项目开发的过程中,有的时候前台页面发送了请求,后台项目却没有任何反应,控制台没有任何日志打印,这个时候可以自定义 HandlerInterceptor 拦截器用来拦截当前请求,并且打印请求路径,用来定位问题:实现一个自定义拦截器需要以下步骤:1、创建我们自己的拦截器类并实现 HandlerInterceptor 接口。2、创建一个Java类继承WebMvcConfigu...

2019-11-08 20:29:10 895

转载 mybatis源码分析7 - mybatis-spring读写数据库全过程

1 引言mybatis-spring中,我们利用Spring容器注入的方式创建了sqlSessionFactory,从而完成了mybatis的初始化。那么如何来读写数据库呢?最简单的方式是,和mybatis中一样,利用sqlSessionFactory的openSession来创建sqlSession,然后利用它来select或update,或者mapper方式。这种方式每次都需要手动openSe...

2018-04-16 17:03:30 199

转载 mybatis源码分析6 - mybatis-spring容器初始化

1 引言使用 MyBatis-Spring 模块,我们可以在Spring中使用mybatis,让Spring容器来管理sqlSessionFactory单例的创建。如以下代码<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!--指定数据源,不用再在mybatis的X...

2018-04-16 17:02:36 158

转载 mybatis源码分析5 - mapper读写数据库完全解析

1 引言和主要类上一节讲解了sqlSession读写数据库的整个流程和四大组件的执行过程,相信大家对mybatis操作数据库有了一定的了解。上一节还提到过,其实我们还可以通过mapper方式读写数据库,并且mybatis建议使用mapper方式,而不是直接通过sqlSession的selectList update等方法。使用mapper方式的例子如下// 读取XML配置文件String res...

2018-04-16 17:01:37 193

转载 mybatis源码分析4 - sqlSession读写数据库完全解析

1 引言和主要类创建完sqlSession实例后,我们就可以进行数据库操作了。比如通过selectOne()方法查询数据库,如代码// 读取XML配置文件String resource = "main/resources/SqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);//...

2018-04-16 17:00:26 224

转载 mybatis源码分析3 - sqlSession的创建

1 引言和主要类初始化mybatis,也就是创建完单例SqlSessionFactory后,就进入到了mybatis的运行阶段。mybatis每次的运行都是通过SqlSession对象来进行,它是运行时的核心。不同于SqlSessionFactory,SqlSession不是线程安全的,故一般建议放在局部作用域中定义, 且使用完后close掉。我们使用mybatis创建SqlSession十分简单...

2018-04-16 16:59:10 189

转载 mybatis源码分析2 - SqlSessionFactory的创建

1 主要类初始化mybatis的过程,其实就是创建SqlSessionFactory单例的过程。下面是一个简单的初始化例子。String resource = "main/resources/SqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);SqlSessionFactory ...

2018-04-16 16:58:09 462

转载 mybatis源码分析1 - 框架

1 源码结构我们分析的mybatis源码version为3.4.5,mybaits-spring源码version为2.0.0-SNAPSHOT。先看mybatis的源码目录结构,如下图所示。我们只用看src/main/java下的目录即可。annotations:注解定义,我们知道mybatis配置可以采用XML文件形式,也可以采用注解形式binding:主要是mapper动态代理绑定相关的类,...

2018-04-16 16:56:51 191

转载 【Spring启动过程分析】(1)启动流程简介

1、 spring简介spring的最基本的功能就是创建对象及管理这些对象之间的依赖关系,实现低耦合、高内聚。还提供像通用日志记录、性能统计、安全控制、异常处理等面向切面的能力,还能帮我们管理最头疼的数据库事务,本身提供了一套简单的JDBC访问实现,提供与 第三方数据访问框架集成(如Hibernate、JPA),与各种Java EE技术整合(如Java Mail、任务调度等等),提供一套自己的we...

2018-04-16 16:54:09 287

转载 Spring源码分析2 — 容器启动流程

1 主要类部署web应用时,web容器(比如Tomcat)会读取配置在web.xml中的监听器,从而启动spring容器。有了spring容器之后,我们才能使用spring的IOC AOP等特性。弄清spring容器启动流程,有利于理解spring IOC中的各种特性,比如BeanPostProcessor,MessageSource,ApplicationListener等。我们先来看下容器启动...

2018-04-16 16:53:04 158

转载 JAVA 注解的几大作用及使用方法详解

java 注解,从名字上看是注释,解释。但功能却不仅仅是注释那么简单。注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后 某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据),常见的作用有以下几种:1.生成文档。这是最常见的,也是java 最早提供的注解。常用的有@see @param @return 等;2.跟踪代码依赖性,实现替代配置文件功能。...

2018-03-06 22:01:18 149

转载 iframe控制主窗口和子窗口的刷新

怎么在iframe窗口里面控制他的父窗口,顶级窗口和本身窗口的页面刷新。下面是两种html的代码首先是主窗口.html=========================================================iframe控制主窗口和子窗口刷新--主窗口    function o

2018-02-02 15:29:29 1345

转载 Java实现栈和队列

转自 :http://www.cnblogs.com/CherishFX/p/4608880.htmlJava实现栈和队列栈:LIFO(后进先出)队列:FIFO(先进先出)栈的顺序存储结构实现:/** * 基于数组实现的顺序栈 * @param */public class Stack {

2018-01-11 09:56:43 162

转载 java 注解demo

Java注解  Annotation(注解)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。注解是以‘@注解名’在代码中存在的,根据注解参数的个数,我们可以将注解分为:标记注解、单值注解、完整注解三类。它们都不会直接影响到程序的语义,只是作为注解(标识)存在,我们可以通过反射机制编程实现对这些元数据(用来描述数据的数据)的访问。另外,你可以在

2017-11-06 22:11:58 182

转载 Spring源代码解析

Spring源代码解析Spring源代码解析(一):IOC容器:http://www.iteye.com/topic/86339 Spring源代码解析(二):IoC容器在Web容器中的启动:http://www.iteye.com/topic/86594 Spring源代码解析(三):Spring JDBC:http://www.iteye.com/topic/870

2017-11-02 22:39:28 242

转载 Java注解知识点总结

Java注解知识点总结 Java的注解(Annotation)是Java5以后引入的,又叫元数据,也有人翻译成注释,用作给代码元素做标记,可以携带一些说明或配置信息,但是注解本身并不参与代码的运行,需要时必须对编写代码提取注解信息。注解可以修饰的一个类里面的各个组成元素,比如可以修饰类和接口的声明、构造方法、字段、方法还有方法参数等等,具体可以修饰什么元素得看该注解的声明。 注

2017-11-02 22:09:46 263

转载 Java反射获取实际泛型类型参数

Java反射获取实际泛型类型参数我们知道,一个Java的类主要包括两个元素,即是成员变量和成员方法。成员变量包括实例成员变量和静态成员变量,而成员方法也有实例成员方法和静态成员方法,构造方法则是特殊的成员方法。而反射的主要作用是能够在运行时获取一个Class的各个元素的结构,但无法更改这些元素的结构。这些元素就是前面说的成员变量和成员方法,并且对于成员变量,反射

2017-11-02 22:06:25 1414

转载 Java反射知识点总结

Java反射知识点总结我们知道,Java的类型信息分为编译时类型信息和运行时类型信息,而反射就是Java提供的对运行时类型信息获取和操作的机制。 那么Java的类型信息有什么呢?一个Java的类主要包括两个元素,即是成员变量和成员方法。成员变量包括实例成员变量和静态成员变量,而成员方法也有实例成员方法和静态成员方法,构造方法则是特殊的实例成员方法。而反射的主要作用是能够在运

2017-11-02 22:03:32 217

转载 springMVC

三分钟学会用SpringMVC搭建最小系统(超详细)焕然一新o 发表于1个月前   三分钟学会用SpringMVC搭建最小系统(超详细) 收藏from   https://my.oschina.net/u/3623947/blog/1492574摘要: 做 Java Web

2017-09-08 15:35:20 276

转载 spring的annotation-driven配置事务管理器详解

spring的annotation-driven配置事务管理器详解 (2011-10-20 17:13:20)转载▼from    http://blog.sina.com.cn/s/blog_8f61307b0100ynfb.html  这篇文章是我从ITeye上复制来的,看了一遍,觉得很深刻,决定把他复制来,对原作者表示感谢。

2017-08-28 21:44:06 315

转载 annotation-driven 学习

spring mvc拦截器和的详解MVC的拦截器经本人在Spring mvc中对方案1和方案2的测试表明,并没有拦截静态资源,所以可以放心使用方案1和方案2,方案3可以放弃,并且可以放心使用注解。 方案一,(近似)总拦截器,拦截所有urlmvc:interceptors> bean class="com.app.mvc.MyInteceptor" /

2017-08-28 21:34:36 220

转载 java获得项目绝对路径

java获得项目绝对路径在jsp和class文件中调用的相对路径不同。在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。1.jsp中取得路径:以工程名为TEST为例:(1)得到包含工程名的当前页面全路径:r

2017-08-15 16:07:55 184

转载 注解学习

转自:http://www.cnblogs.com/peida/archive/2013/04/26/3038503.html深入理解Java:注解(Annotation)--注解处理器  如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了。使用注解的过程中,很重要的一部分就是创建于使用注解处理器。Java SE5扩展了反射机制的API,以帮

2017-08-15 14:46:08 195

转载 注解demo

转自 : http://blog.csdn.net/liuc0317/article/details/48787793Java 中对自定义注解的说明请参见:http://www.cnblogs.com/peida/archive/2013/04/24/3036689.htmlhttp://www.cnblogs.com/peida/archive/2

2017-08-15 14:43:27 433

转载 注解

refer from :http://www.iteye.com/topic/223891注解的学习1.声明了一个注释 @Retention(RetentionPolicy.RUNTIME)  public @interface TestAnno {        }  2.声明了一个含有pri

2017-08-15 11:55:18 185

转载 springMVC 注解 @Autowired和@Resource 的关系

@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自动注入罢了。@Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用t

2017-08-15 11:35:59 162

转载 java 对象初始化和类加载器

Class.forName有什么作用Class.forName(xxx.xx.xx) 返回的是一个类 首先你要明白在java里面任何class都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。至于什么时候用,你可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过要再加一点。 A a =

2017-08-14 17:19:26 223

转载 springMVC 学习

SpringMVC之@RequestMapping,@Responsebody与@RequestBody,以及@PathVariable简单介绍标签: SpringMVC                                                                          2016-10-12 预备知识:@RequestMap

2017-08-08 17:30:42 151

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除