随笔分类 - java开发
java开发
摘要:java类加载器有:1、引导类加载器;2、拓展类加载器;3、系统类加载器;4、用户自定义类加载器。其中,引导类加载器(Boostrap ClassLoader),又叫启动类加载器,由原生代码(如C语言)编写,不继承自java.lang.ClassLoader。负责加载核心Java库,存储在<JAVA
阅读全文
摘要:1、先准备一个基本的容器对象,包含一些map结构的集合,用来方便后续过程中存储具体的对象 2、进行配置文件的读取工作或者注解的解析工作,将需要创建的bean对象都封装成BeanDefinition对象存储在容器中 3、容器将封装好的BeanDefinition对象通过反射的方式进行实例化,完
阅读全文
摘要:1 HashMap和Hashtable都是java.util包下的类2 HashMap和Hashtable都实现了Map接口,存储方式都是key-value形式3 HashMap和Hashtable同时也都实现了Serializable和Cloneable接口4 HashMap和Hashtable的
阅读全文
摘要:Java中的集合包括三大类,它们是Set(集)、List(列表)和Map(映射),它们都处于java.util包中,Set、List和Map都是接口,它们有各自的实现类。Set的实现类主要有HashSet和TreeSet,List的实现类主要有ArrayList Collection是最基本的集合接
阅读全文
摘要:1. String类是不可变类,即一旦一个String对象被创建后,包含在这个对象中的字符序列是不可改变的,直至这个对象销毁。 2.StringBuffer类则代表一个字符序列可变的字符串,可以通过append、insert、reverse、setChartAt、setLength等方法改变其内容。
阅读全文
摘要:1.联系:底层都是数组的扩容 2.区别:ArrayList底层扩容长度为原数组的1.5 ; Vector底层扩容长度为原数组的2倍 3.ArrayList倍线程不安全,效率高 ; Vector线程安全,效率低(淘汰) 4.都是数组,数组优点:查询效率高 ; 数组缺点:删除,增加元素效率低 ; 特点:
阅读全文
摘要:1.GET用于信息获取,而且应该是安全的和幂等的。 2.POST表示可能修改,改变服务器上的资源的请求。 3.GET请求的数据会附在URL之后。 4.GET方式提交的数据取决于URL长度的限制,理论上POST没有限制,可传较大量的数据。对参数的数据类型GET只接受ASCII字符,而POST即可是字符
阅读全文
摘要: 用户只需要向Spring Security项目中发送/logout退出请求即可。 1.退出实现 实现退出非常简单,只要在页面中添加/logout的超链接即可。 <a href="/logout">退出登录 为了实现更好的效果,通常添加退出的配置。默认的退出url为/logout,退出成功后跳转到
阅读全文
摘要: 在配置类中一直存在这样一行代码:http.csrf().disable();如果没有这行代码导致用户无法被认证。这行代码的含义是:关闭csrf防护。 1.什么是CSRF CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”
阅读全文
摘要: 当进行自定义登录逻辑时需要用到之前讲解的UserDetailsService和PasswordEncoder。但是Spring Security要求:当进行自定义登录逻辑时容器内必须有PasswordEncoder实例。所以不能直接new对象。 1.编写配置类 新建类com.msb.conf
阅读全文
摘要: Spring Security要求容器中必须有PasswordEncoder实例。所以当自定义登录逻辑时要求必须给容器注入PaswordEncoder的bean对象 1.接口介绍 encode():把参数按照特定的解析规则进行解析。 matches()验证从存储中获取的编码密码与编码后提交的
阅读全文
摘要:当什么也没有配置的时候,账号和密码是由Spring Security定义生成的。而在实际项目中账号和密码都是从数据库中查询出来的。 所以我们要通过自定义逻辑控制认证逻辑。 如果需要自定义逻辑时,只需要实现UserDetailsService接口即可。接口定义如下: 1.返回值 返回值User
阅读全文
摘要: 1.概括 Spring Security是一个高度自定义的安全框架。利用Spring IoC/DI和AOP功能,为系统提供了声明式安全访问控制功能,减少了为系统安全而编写大量重复代码的工作。 使用Spring Secruity的原因有很多,但大部分都是发现了javaEE的Servlet规
阅读全文
摘要:前后端分离属于软件架构的一种。其核心思想是把前端项目(Node.js实现的)和后端项目独立部署到不同的服务器上,前端项目在通过Ajax请求服务器端项目Restful接口实现数据交互。 使用前后端分离架构的项目在项目组中往往配备前端工程师和后端工程师。后端工程师就是我们,对于我们我们来说,不需要在项目
阅读全文
摘要:JSP的性能问题 有人都会认为JSP的执行性能会和Servlet相差很多,其实执行性能上的差别只在第一次的执行。因为JSP在执行第一次后,会被编译成Servlet的类文件,即.class,当再重复调用执行时,就直接执行第一次所产生的Servlet,而不再重新把JSP编译成Servelt。除了第一次的
阅读全文
摘要: JSTL核心标签 认识JSTL 为什么需要学习JSTL 通过之前的案例我们发现,就算在JSP中可以使用EL表达式取出域对象中的数据,但是仍然避免不了还是要在页面中书写一些java代码.这种嵌入JAVA代码的处理比较繁琐,容易出错,且代码不容易维护. 什么是JSTL JSTL(Java serve
阅读全文
摘要: JSTL格式化标签 格式化标签库 格式化标签库,也叫作fmt标签,是JTSL中的第二大组成部分,主要解决数据显示格式问题,让JSP页面的数据格式更加规范 格式化标签库导入的语句为: <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl
阅读全文
摘要:MVC架构模式及案例开发 MVC模式的介绍 什么是MVC MVC是一种项目架构型模式,它本身并不引入新的功能,只是用来指导我们改善应用程序的架构,使得应用的模型和视图相分离,从而得到更好的开发和维护效率。 在MVC模式中,应用程序被划分成了模型(Model)、视图(View)和控制器(Control
阅读全文
摘要: JSP中的变量问题 在JSP上可以通过<%%> 和<%!%>两种方式书写代码,那么两种方式中书写的java代码在转译之后生成的java文件中的位置是不一样,一个在_JSPService方法中,一个作为类的成员,以定义变量举例 【示例4】在JSP中定义局部变量和成员变量 <%@ page cont
阅读全文
摘要: Servlet同样也可以向浏览器动态响应HTML,但是需要大量的字符串拼接处理,在JAVA代码上大量拼接HTML字符串是非常繁琐耗时的一件事,它涉及到HTML本身的字符串处理,还涉及到css样式代码和文件,以及js脚本代码和文件,HTML中的各种外部引入路径等等,处理起来相当的麻烦 <%@ pa
阅读全文