java
文章平均质量分 58
Somethingwll
先这样吧。。。
展开
-
try() {} catch {} ===> try with resources资源自动释放
try() {} catch {} ===> try with resources资源自动释放try with resources资源自动释放特性@org.junit.Testpublic void testTryCatchSource() { try( InputStream fis = new FileInputStream(sourceFile); OutputStre...原创 2018-12-25 11:10:07 · 618 阅读 · 0 评论 -
spring的事务管理
Spring的特色之一,简单而强大的事务管理功能,包括编程式事务和声明式事务。1. Spring中涉及到事务管理的API有100多个,核心的只有三个: TransactionDefinition、PlatformTransactionManager、TransactionStatus。所谓事务管理,其实就是“按照给定的事务规则来执行提交或者回滚操作”。“给定的事务规则”就是用 Transactio...原创 2018-07-02 09:46:43 · 181 阅读 · 0 评论 -
springMVC与struts2的区别
我们从以下几个维度来区分两者的概念:1. 机制:spring mvc的入口是servlet,而struts2是filter。 补充几点知识: 《 Filter 实现javax.servlet.Filter接口,在web.xml中配置与标签指定使用哪个Filter实现类过滤哪些URL链接。只在web启动时进行初始化操作。 filter 流程是线性的, url传来之后,检查之后,可保持原...原创 2018-07-01 18:10:14 · 226 阅读 · 0 评论 -
springMVC的原理
SpringMVC的原理:SpringMVC是Spring中的模块,它实现了mvc设计模式的web框架,首先用户发出请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户的url请求处理器映射器查找匹配该url的handler,并返回一个执行链,前端控制器再请求处理器适配器调用相应的handler进行处理并返回给前端控制器一个modelAndView...原创 2018-07-01 15:41:37 · 230 阅读 · 0 评论 -
spring框架概述
七大模块,如下:1. Spring Core: Core封装包是框架的最基础部分,提供IOC和依赖注入特性。这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性单例模式的需要,并真正地允许你从程序逻辑中分离出依赖关系和配置。2.Spring Context: 构建于Core封装包基础上的 Context封装包,提供了一种框架式的对象访问方法,有些象JNDI注册...原创 2018-07-01 15:38:24 · 267 阅读 · 0 评论 -
servlet中service、doGet、doPost之间的联系
大家都知道在javax.servlet.Servlet接口中只有init, service, destroy方法但是我们在继承HttpServlet的时候为何一般重写doGet和doPost方法呢下面我们看一下Servlet源代码:注意: JDK只是定义了servlet接口,而实现servlet接口的比如tomcat, jboss等服务器下面我们找到tomcat源代码, 可以到官网下载找到java...原创 2018-07-01 15:18:41 · 353 阅读 · 0 评论 -
spring事务属性
事务属性的种类: 传播行为、隔离级别、只读和事务超时 a) 传播行为定义了被调用方法的事务边界。 传播行为意义PROPERGATION_MANDATORY表示方法必须运行在一个事务中,如果当前事务不存在,就抛出异常PROPAGATION_NESTED表示如果当前事务存在,则方法应该运行在一个嵌套事务中。否则,它看起来和PROPAGATION_REQUIRED 看起来没什么俩样PROP...原创 2018-07-01 11:24:10 · 133 阅读 · 0 评论 -
Thread.currentThread()与this获得当前线程引用的区别
原文链接:点击打开链接、点击打开链接在自定义线程类时,如果线程类是继承java.lang.Thread的话,那么线程类就可以使用this关键字去调用继承自父类Thread的方法,this就是当前的对象。另一方面,Thread.currentThread()可以获取当前线程的引用,一般都是在没有线程对象又需要获得线程信息时通过Thread.currentThread()获取当前代码段所在线程的引用。...转载 2018-06-19 08:50:57 · 1314 阅读 · 0 评论 -
spring注解 annotation-config与component-scan的区别
原文链接:点击打开链接<context:annotation-config> 和 <context:component-scan>的区别<context:annotation-config> 是用于激活那些已经在spring容器里注册过的bean(无论是通过xml的方式还是通过package sanning的方式)上面的注解。<context:...转载 2018-06-25 17:46:31 · 280 阅读 · 0 评论 -
解决IllegalArgumentException: Could not resolve placeholder in string value ”${XXXXXX}“;
首先要保证所有加载属性的配置(例如:路径、名称....)都没问题,然后出现该错误的原因可能是web项目中,出现了多个properties为扩展名的文件,然后使用了多个<context:properties-placeholder>去加载每个配置文件 <context:property-placeholder>提供了加载外在参数的配置,当时默认情况下该标签只能spring...原创 2018-06-29 17:53:01 · 9293 阅读 · 1 评论 -
Spring框架中获取连接池的方式
原文链接:点击打开链接1、连接池概述 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。 数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数...转载 2018-07-02 10:18:25 · 975 阅读 · 0 评论 -
jdk1.8的接口中default修饰的方法
我用的的是jdk1.8,某次在编写某个类实现listener接口的时候,发现ide没有提示实现接口的方法,有点迷就去接口源码去看了一下,看到接口里的方法竟然可以定义为default类型,加了一个default关键字修饰方法,就去百度查看了一下这个default关键字究竟有什么含义,原来是jdk1.8的接口新特性我们都知道接口里的变量默认隐含类型是public static final,也是就是说是...原创 2018-07-07 15:26:11 · 3407 阅读 · 0 评论 -
FutureTask的简单使用
FutureTask创建FutureTask可用于接收线程的运行结果。一般Runable的接口里的抽象方法run是void型的,我们如果想要拿到某个线程的执行结果来用,显然重写 run() 方法里是不容易办到的。我们就可以创建 FutureTask 传入Callable接口的实现类,在实现类中重写 T call() 方法,执行任务逻辑,等到我们需要线程的执行结果时,调用get方法就可以了Fu...原创 2018-12-25 10:45:34 · 284 阅读 · 0 评论 -
xml 配置中 classpath: 与 classpath*: 的区别
xml 配置中 classpath: 与 classpath*: 的区别首先 classpath 指的是WEB-INF文件夹下的classes目录classpath: 和 classpath*: 的区别:classpath: 只会到你指定的class路径中查找文件classpath*: 不仅包含class路径,还包括jar文件中(class路径)进行查找举个简单的例子如果在 web...原创 2019-01-03 19:04:04 · 535 阅读 · 0 评论 -
关于Java中Stack、Queue的一些api
关于Java中Queue的offer和add方法的区别API中这样说到:add():Inserts the specified element at the tail of this queue. As the queue is unbounded, this method will never throw IllegalStateException or return false....原创 2018-10-13 22:12:27 · 625 阅读 · 0 评论 -
Java并发编程:volatile关键字解析
原文链接:点击打开Java并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键...转载 2018-08-24 17:53:21 · 163 阅读 · 0 评论 -
Lucene和Solr
LuceneLucene是一个基于Java的全文信息检索工具包,它不是一个完整的搜索应用程序,而是为你的应用程序提供索引和搜索功能。Lucene 目前是 Apache Jakarta(雅加达) 家族中的一个开源项目。也是目前最为流行的基于Java开源全文检索工具包。目前已经有很多应用程序的搜索功能是基于 Lucene ,比如Eclipse 帮助系统的搜索功能。Lucene能够为文本类型的数据...原创 2018-08-28 17:08:04 · 221 阅读 · 0 评论 -
jsonp跨域请求详解
原文链接:链接跨域的安全限制都是对浏览器端来说的,服务器端是不存在跨域安全限制的。浏览器的同源策略限制从一个源加载的文档或脚本与来自另一个源的资源进行交互。如果协议,端口和主机对于两个页面是相同的,则两个页面具有相同的源,否则就是不同源的。如果要在js里发起跨域请求,则要进行一些特殊处理了。或者,你可以把请求发到自己的服务端,再通过后台代码发起请求,再将数据返回前端。 这里...转载 2018-08-16 17:02:50 · 220 阅读 · 0 评论 -
springMVC对静态资源放行的两种方式
在springmvc.xml中放行(常用)1、配置对全部资源放行<!-- 全部资源放行 --><mvc:default-servlet-handler/>2、对指定目录下的资源放行<!-- 对指定目录下的静态资源放行 --><mvc:resources location="/images/" mapping="/images/**"...原创 2018-08-01 10:55:31 · 10024 阅读 · 0 评论 -
java中的equals与==的区别
这两个东西初学java的时候就了解了,但那时只是大概的知道判断数字相等就用==,String字符串相等就用equals,后来也有去网上看了一下具体区别,但是一段时间理解就会变得模糊,所以在这里记录一下:1,对于==1)、作用于基本数据类型(也就是8大基本数据类型)变量:比较的是其中的数值;2)、作用于引用数据类型变量:比较的是两个引用数据类型变量的地址,Object中equals方法,就是用==实...原创 2018-07-15 15:33:05 · 162 阅读 · 0 评论 -
全文检索
原文链接:点击打开全文检索的基本原理什么是全文检索?我们生活中的数据总体分为两种:结构化数据和非结构化数据。* 结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。* 非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等。当然有的地方还会提到第三种,半结构化数据,如XML,HTML等,当根据需要可按结构化数据来处理,也可抽取出纯文本按非结构化数据来处...转载 2018-07-20 10:36:50 · 1233 阅读 · 0 评论 -
springMVC中对静态资源的放行
原文链接:点击打开链接优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往使用 *.do 、 *.xhtml等方式。这就决定了请求URL必须是一个带后缀的URL,而无法采用真正的REST风格的URL。如果将DispatcherServlet请求映射配置...转载 2018-06-29 15:38:39 · 9644 阅读 · 1 评论 -
struts2中遍历标签iterator属性介绍
原创 2018-06-17 17:01:36 · 334 阅读 · 0 评论 -
Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (default-test)
打包maven项目的时候出现错误:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (default-test) on project xxx: There are test failures.但是项目用maven编译没问题,之前测试也都过了。从上面描述可以确定是单元测试部分有问题,然...原创 2018-06-01 14:34:31 · 2323 阅读 · 0 评论 -
jQuery对象&&DOM对象
关于jQuery中,变量定义以 $ 开头的问题:如果是一个变量起名为$xxx,而另一个变量名为xxx。那么这是一种良好的代码习惯。是区分使用jQuery创建的变量和javascript自己创建的变量。使用上没区别,这是习惯上的问题。变量加$,代表当前变量是jquery变量,这是一种约定俗成的习惯。比如说:如果获取的是jQuery对象,则在变量前加上$var $variable = jQuery对象...原创 2018-04-15 10:15:24 · 332 阅读 · 0 评论 -
get请求和post请求
http请求默认是get提交get请求的内容:GET /?user=aaa&pwd=123&gender=male&technology=html&file=%E6%B5%AA.jpg&myke=myvalue&country=usa&text=%E6%89%93%E6%92%92%E5%A4%A7%E5%8E%A6%E8%80%83%E8%...原创 2018-03-26 16:54:26 · 318 阅读 · 0 评论 -
get、post、http相关面试题
原文链接:点击打开链接一、get、post的区别,什么是幂等性,put和post的区别?1.什么是幂等性幂等性概念:幂等通俗来说是指不管进行多少次重复操作,都是实现相同的结果。2.REST请求中哪些是幂等操作GET,PUT,DELETE都是幂等操作,而POST不是,以下进行分析:首先GET请求很好理解,对资源做查询多次,此实现的结果都是一样的。 PUT请求的幂等性可以这样理解,将A修改为B,它第一...转载 2018-04-01 10:35:05 · 711 阅读 · 0 评论 -
反射&&properties的三种加载方式
对于properties文件,有以下要求:1,文件位置:任意,建议放在src下2,文件名称:任意,扩展名为properties3,文件内容:一行一组数据,格式是“key=value”,行末最好不要加空格,回车 a) key命名自定义,如果是多个单词,习惯使用点分隔; b) value值不支持中文,如果是需要使用非英文字符,将进行unicode转换properties文件pci1 = r...原创 2018-03-31 20:41:02 · 444 阅读 · 0 评论 -
反射&&xml
模拟Servletweb.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://www.example.org/web-app_2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ht原创 2018-03-31 20:26:53 · 189 阅读 · 0 评论 -
反射
反射1、什么是反射技术?动态获取指定类以及类中的内容(成员),并运行其内容。应用程序已经运行,无法在其中进行new对象的建立,就无法使用对象。这时可以根据配置文件的类全名去找对应的字节码文件,并加载进内存,并创建该类对象实例。这就需要使用反射技术完成2、获取class对象的三种方式获取Class对象的方式一:通过对象具备的getClass方法(源于Object类的方法)。有点不方便,需要用到该类,...原创 2018-03-31 20:22:03 · 185 阅读 · 0 评论 -
xml解析、dom4j解析
原创 2018-03-31 17:22:59 · 157 阅读 · 0 评论 -
java中关于异常处理
异常处理的原则:1,函数内容如果抛出需要检测的异常,则函数上必须要声明,或者在函数内部用try catch捕捉,否则编译失败2,如果调用到了声明异常的函数,要么try catch,要么throws,否则编译失败3,关于try catch和throws的选择:如果功能内容可以解决,则进行捕捉;解决不成用throws抛出,告诉调用者,由调用者解决4,一个功能如果抛出了多个异常,那么调用时,就必须有多个...原创 2018-03-11 21:17:16 · 167 阅读 · 0 评论 -
java中math类
public class MathDemo { public static void main(String args[]){ /** * abs求绝对值 */ System.out.println(Math.abs(-10.4)); //10.4 System原创 2017-10-31 14:12:49 · 272 阅读 · 0 评论 -
dbutils中QueryRunner中几个rsh类的用法
1. ResultSetHandler 的作用: QueryRunner 的 query 方法的返回值最终取决于 query 方法的 ResultHandler 参数的 hanlde 方法的返回值. 2. BeanListHandler: 把结果集转为一个 Bean 的 List, 并返回. Bean 的类型在 创建 BeanListHanlder 对象时...原创 2018-04-16 16:33:19 · 387 阅读 · 0 评论 -
jsp的9大内置对象与EL表达式的11个内置对象
1.EL的内置对象11个pageScope,requestScope,sessionScope,applicationScope ---- 获取JSP中域中的数据param,paramValues -- 接收参数.相当于request.getParameter() rrquest.getParameterValues()header,headerValues -- 获取请求头信息相当于r...原创 2018-04-13 10:35:46 · 1529 阅读 · 0 评论 -
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
今天创建maven项目时,出现了这个问题[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile (default-testCompile) on project springside-core: Compilation failure[ERROR] No compil...原创 2018-06-01 13:35:28 · 4564 阅读 · 0 评论 -
java中重写和重载的区别
阅读数:638重载(overloading) 遵循“两同一不同”规则 1)、同一个类中可以有多个名称相同的方法(“两同”),但这些方法的参数列表各不相同((“一不同”)即参数个数或类型不同)。 2)、返回值类型、修饰符可以相同也可以不同,但Java里不能使用方法的返回值类型、修饰符作为区分方法重载的依据。 3)、构造方法可以重载不可以重写。构造方法重载可以用来满足在调用方法时候(实例化对象时)不同...原创 2018-06-03 14:33:40 · 164 阅读 · 0 评论 -
struts2.5使用通配符时action指定method方法报错
报错信息:1,使用<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>配置动态方法开启常量,使用 ! 进行动态 方法调用错误:struts2 Method login for action UserAction is not allowed!2,使用 * 进行动态方法调...原创 2018-05-14 20:35:42 · 2400 阅读 · 1 评论 -
servlet的线程不安全
Servlet的线程不安全问题: 造成的根本原因是:Servlet是单例的,Servlet中的非static的成员变量只有一份,多个客户端好比是多个线程,都访问的是同一个空间.解决方案: 1:让当前Servlet实现javax.servlet.SingleThreadModel接口. 包装只有一个线程放Servlet,如果有多个线程就排队,如此的话,性能超低...转载 2018-05-07 10:53:36 · 339 阅读 · 0 评论 -
js中判断undefined、null
原文链接:点击打开链接目录1.JS 中如何判断 undefined以下是不正确的用法:2.JS 中如何判断 null以下是不正确的用法:以下是正确的用法: 正文1.JS 中如何判断 undefinedJavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断。以下是不正确的用法:var exp = undefin...原创 2018-05-18 17:32:19 · 194 阅读 · 0 评论