JAVA
shuwei003
这个作者很懒,什么都没留下…
展开
-
记录一次解决使用jdbc创建oracle连接慢的问题
在测试环境出现了这样一个问题:有几个任务执行的时候(由调度执行,频次10分钟一次),偶尔会出现创建oracle连接慢的问题(大概几十秒到几分钟)。问题的定位是通过打日志,在DriverManager.getconnection()的上面和下面各打一行日志,发现如果出现慢的时候,都是在创建连接的时候卡住了。于是去看DriverManager的源码,发现Drivermanager其实是有日志打印的,只不过需要用户特意指定一下,通过下面的代码,就可以让DriverManager打印日志:DriverMa原创 2020-09-26 22:52:56 · 2550 阅读 · 0 评论 -
记录一次诡异的mysql连接超时和mysql连接错误的问题
在生产环境中,偶尔且不规律的出现mysql连接超时和创建连接出错的问题:15-09-2020 13:25:46 INFO - java.sql.SQLNonTransientConnectionException: Could not create connection to database server.15-09-2020 13:25:46 INFO - at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.原创 2020-09-26 22:21:34 · 1101 阅读 · 0 评论 -
如果在同一个JVM中使用不同jar包下面包名和类名完全相同的类
背景:在引入第三方jar包以后,偶尔会遇到不同jar包中的类冲突。这里所说的冲突,是指类的包名和类型完全相同(有的时候希望同时使用相同类的不同版本)。参考地址:https://baijiahao.baidu.com/s?id=1636309817155065432&wfr=spider&for=pc处理思路:见上图,使用原生的类加载是实现不了这个功能的,需要使用自定义类...原创 2020-01-15 16:15:56 · 1989 阅读 · 2 评论 -
java中异或的使用
最近在写一个小应用,其中用到一个设置状态的小问题。需求:如果当前状态是true那么点击后设置状态为false;如果当前状态是false,那么点击后设置状态为true。方法: Sender sender = senderService.get(id);sender.setEnabled(true ^ sender.isEnabled());原创 2012-07-31 09:50:00 · 1414 阅读 · 0 评论 -
使用HttpURLConnection做代理时遇到的cookie放不进去的问题
问题原因:之前使用HttpURLConnection做代理,cookie都是可以透传的。今天遇到cookie放不进去的问题。查明原因,是用户登录后,程序放cookie的同时对用户进行了跳转的动作。也就是对方给HttpURLConnection返回了一个302,而HttpURLConnection默认对302自行处理,自己再去请求跳转页面的内容,然后才会将下一个200的内容返回给客户端。解决方法原创 2012-08-03 15:37:30 · 3278 阅读 · 0 评论 -
Spring mvc 中MultiActionController的三种methodNameResolver
三种methodNameResolver分别为:org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolverorg.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolverorg.springframew转载 2012-07-03 16:19:05 · 9557 阅读 · 0 评论 -
spring3.0MVC中使用自定义绑定编辑器
EmpController.javapackage test;import java.util.Date;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.validation.Bi原创 2012-06-28 17:22:14 · 963 阅读 · 0 评论 -
multipart/form-data表单提交后,使用request.getParameter来获得text的参数值
使用java script的方式来达到目的,将原本post的内容放到url中<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>原创 2012-07-06 15:20:46 · 8092 阅读 · 1 评论 -
读书笔记《Effective Java》
第二章 创建和销毁对象(1-7条)第二条:遇到多个构造器参数时要考虑用构建器适用情况:当一个类中有必要参数和大量可选参数的时候解决方法:1.重叠的构造器模式缺点:当有许多参数的时候,客户端代码会很难编写,而且仍然较难以阅读2.使用javabean缺点:javabean模式阻止把类做成不可变的可能3.推荐方法,使用builder模式package test;p原创 2012-05-07 17:26:49 · 568 阅读 · 0 评论 -
java正则表达式的一些知识点
由于正则表示式太过博大精深,这里只记录一些我所理解的常用的一些正则的知识点。1.Matcher的matches()方法、find()方法和group()方法public static void main(String[] args) { String str = "abcdeeeffg1223kkk"; Pattern p = Pattern.compile("[a-z]{3}")原创 2011-08-19 12:27:59 · 1154 阅读 · 2 评论 -
javascript备忘之变量作用域
//<![CDATA[ var foo = "tt"; //全局作用域下的变量 function func(){ document.write(foo + ""); var foo = "000"; } func(); //var foo = "Hello World1"; //window对象的属性 //foo = "Hello";原创 2012-08-30 16:47:49 · 576 阅读 · 0 评论 -
linux 命令之sort
今天用到sort的排序功能,需求是根据某列对文本进行排序,而且根据的列要当做数字看待。查了一下,命令语句为:sort -t\| -k1,1n a.txt-t是指定分隔符-k指定比较开始字段和结束字段位置n 当做数字来比较-d(只将字母、数字和空白用作排序键)、-f(关闭大小写区分,认为小写和大写字符是 一样的)、-i(忽略非打印的 ASCII 字符)、-M(使用原创 2012-08-21 09:29:24 · 560 阅读 · 0 评论 -
hibernate使用Criteria计算乘法
题目虽说是计算乘法,但是能代表一类应用,就是Criteria执行一般sql的功能。hql与QBC的一些查询操作1:QBC做比较常见的统计操作,两列相乘,再计算和因为最近一段时间在用hibernate做些东西,而且对sql不感兴趣,所以想用hql,qbc完成数据统计的操作(当然,数据统计也可以再逻辑层完成,但是那样就显得效率不高。。。)况且也在学习阶段,所以还是多看看多学学。首先转载 2012-09-28 08:44:09 · 3257 阅读 · 0 评论 -
net.sf.cglib.beans.BeanCopier用途
1.当把对象放到map中以后,修改对象内容,一样会影响对象的属性的值import java.util.HashMap;import java.util.Map;public class TTTT { public static void main(String[] args) { Person p1 = new Person("zhangsan", 10); Map map原创 2012-09-12 17:01:49 · 12546 阅读 · 2 评论 -
JspWriter与PrintWriter的关系
一.JspWriter与PrintWriter的关系:1.都是继承自java.io.Writer类.JspWriter可以在JSP页面中直接用out对象输出.可以用pageContext.getOut();得到JspWriter对象.PrintWrietr在JSP页面中必须用response.getWriter();方法得到其对象.二者作用域不同.2.在JSP页面中同时调用转载 2012-09-16 16:19:14 · 1152 阅读 · 0 评论 -
使用msm配置分布式tomat,实现session共享
这个过程是我在公司服务器上测试成功的,可能不是很通用。1.tomcat版本是:Server version: Apache Tomcat/6.0.33将如下jar包放入到tomcat的lib目录下:spymemcached-2.7.3.jar,msm-javolution-serializer-1.6.3.jar,memcached-session-manager-tc6-1.6.2.原创 2012-09-16 16:45:03 · 1912 阅读 · 1 评论 -
对整段内容进行匹配和替换
功能,在整段文本内容中,查找符合某些条件的内容,进行替换。需要注意的是,因为查找了替换是两个步骤,可能造成替换的内容并非查找的内容。 package com.shuwei.tools;import java.util.regex.Matcher;import java.util.regex.Pattern;/* * 对一段文本中的某些字符进行处理后,再替换 */public原创 2012-09-20 07:23:13 · 1400 阅读 · 1 评论 -
使用filter拦截servlet和jsp页面的内容,进行过滤后输出
思路:使用filter拦截servlet或者jsp页面内容,比如内容替换,再向用户展现修改后的页面使用普通的filter拦截页面内容,会出现这种情况从入中可以看出,输出内容并没有通过过滤器就输出了。 从入中可以看出,输出内容并没有通过过滤器就输出了。既然使用普通filter不能达到目的,那么就换一种方法,在Servlet或者jsp接收到response之前,将response使用一原创 2012-09-17 08:54:03 · 14023 阅读 · 10 评论 -
tomcat中sessionid跨域名的问题emptySessionPath="true"
配置是这样的: maxThreads="512" minSpareThreads="25" maxSpareThreads="100" enableLookups="false" acceptCount="256" connectionTimeout="20000" disableUploadTim原创 2012-11-08 16:35:17 · 3527 阅读 · 0 评论 -
spring中使用字符串注入collection,如set/array
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-06-27 14:33:21 · 860 阅读 · 0 评论 -
hibernate学习笔记四
用in还是exists用exists,原因是效率比in高使用本地sqlSQLQuery q = session.createSQLQuery("select * from category limit 2,4").addEntity(Category.class);---转换成Category对象List categories = (List)q.list();HQL语言详细使原创 2012-05-03 08:20:15 · 646 阅读 · 0 评论 -
hibernate学习笔记三
8.继承关系(不重要)a)单表----single_table不好,可能产生很多冗余,或者表的字段会很多[子类比较少的时候用]b)每个类一张表----table_per_class子类id不能相等多态的查询非常麻烦,要查所有表c),一张主表多张子表----joined配置很简单只要一句@Inheritance(strategy=InheritanceType.J原创 2012-04-17 07:32:18 · 684 阅读 · 0 评论 -
hibernate学习笔记-1
hibernate学习笔记1.annonation有两种方式:JPA -------重点hibernate-extensionjpa是标准,hibernate是实现jdbc是标准使用annonation的时候需要使用的配置类是AnnonationConfiguration@Entity@Id永远建议自己查文档,原始的文档动态代理往需要代理的类的方法中增加原创 2012-03-20 07:14:27 · 750 阅读 · 0 评论 -
从外部访问类中的私有方法的方法
使用反射机制,需要知道这个方法名(摘自think in java)package access.intefacea;public interface A { void f();} package access.pmethod;import acce原创 2011-10-11 11:07:39 · 1287 阅读 · 0 评论 -
struts2学习笔记(1-17)
1.web应用的访问过程请求到服务器比如:http://localhost:8089/struts2/index web容器会首先找到相应的应用(这里就是struts2)的web.xml,而在struts2中的web.xml的一般配置为: stru原创 2011-08-31 10:46:38 · 3117 阅读 · 0 评论 -
图片的旋转和透明化
昨天研究了一下图片的旋转和透明化问题,以为备忘,记录如下: 旋转//加载图片 Image bodyImage = Toolkit.getDefaultToolkit().getImage(Hhh.class.getClassLoader() .getRes原创 2011-08-24 08:24:37 · 2307 阅读 · 2 评论 -
java中import机制(指定import和import *的区别)
java中有两种包的导入机制,总结如下:单类型导入(single-type-import), 例如 import java.io.File;按需类型导入(type-import-on-demand),例如 import java.io.*;这转载 2011-08-19 09:40:06 · 20196 阅读 · 2 评论 -
容器复习
set判断是否重复,使用equals方法来判断Collection.add的时候只能添加对象不能添加基础类型,基础类型往往是分配在栈上面,栈中的内容随时可能被清空。Map中的key会使用hashcode()方法,两个对象互相equals,两个对象需要互相hashcode也原创 2011-08-16 21:32:50 · 557 阅读 · 0 评论 -
使用servlet保存用户上传的文件到本地
upload.jspfbysss UploadBean 示例附件web.xml AddDataServlet com.upload.action.AddDataServlet AddDat原创 2011-09-02 11:08:08 · 7656 阅读 · 0 评论 -
JAVA使用POI读取EXCEL文件的简单model
package poi;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.util.Iterator;import原创 2011-09-02 09:06:03 · 51058 阅读 · 9 评论 -
spring mvc annonation(环境搭建和最基本的请求映射)
1.配置web.xml2.配置xxxx-servlet.xml--支持部件扫描和视图解析3.创建一个学生类Student,一个Controller,名称是StudentController,注释为@Controller4.添加工程需要的jar包,将spring3.0所有jar放进去,commons-logging.jar,log4j-1.2.15.jar,commons-fileupl原创 2012-01-21 09:13:45 · 1815 阅读 · 0 评论 -
spring mvc 中使用spring的validator
前面完成了mvc基本框架,现在学习一下对表单输入的验证:目前我所知道的带表单验证功能的是一个协议JSR303,包括EJP、hibernate、spring和apache都有类似库1.使用spring自带的Validator:建立一个"Validator" (如果验证的类中的属性是一个需要验证的类,可以将它的validator嵌入到这里,详见reference)使用spring mv原创 2012-01-21 22:19:32 · 68582 阅读 · 9 评论 -
hiberntea学习笔记二
2012-03-09重写联合主键的equals方法和hashCode方法的作用什么?开始我以为是将对象放在session的hashMap中时候使用的,但是测试结果证明即使hashCode都不一样的对象,还是能从session的hashMap中取得只能说hibernate的session中并非直接使用主键类作为hashMap的key,或者不是使用hashMap存储的表和表之间只有一个关系原创 2012-04-01 07:39:00 · 709 阅读 · 0 评论 -
Spring配置项<context:annotation-config/>解释说明
在基于主机方式配置Spring的配置文件中,你可能会见到这样一条配置,他的作用是式地向 Spring 容器注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor 以及 RequiredAnnotationBeanPostPr转载 2012-02-20 16:33:35 · 3460 阅读 · 0 评论 -
恢复Eclipse误删的文件
Java视图上,左边“包资源管理器”,在要恢复的项目上点右键,会有一个菜单项,“从本地历史纪录复原(X)...”,英文是”Restore from Local History...”,点这个,就会弹出一个对话框,原来他们藏在这里了!对应于每一个删除的文件右边有相应的保存的日期,有更改就有保存,点对应的时间可以在下方看到代码,选中想要回复的文件,点恢复,就可以看到它乖乖的回到了原来的地方!值得说转载 2012-02-27 08:59:42 · 948 阅读 · 1 评论 -
hibernate通用泛型dao
BaseDao.javapackage com.smvc.annonation.dao;import java.sql.SQLException;import java.util.List;import javax.annotation.Resource;import org.hibernate.HibernateException;import org.hib转载 2012-02-14 15:17:55 · 5778 阅读 · 0 评论 -
spring使用annonation管理hibernate的事物
修改spring配置文件,增加:<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> 在类中需要增加事物管理的方法上使用@Transactional标记或者在整个类中使用@Transactional标记 问题:由原创 2012-02-22 09:03:44 · 1319 阅读 · 0 评论 -
解决 spring mvc 3.0 结合 hibernate3.2 使用<tx:annotation-driven>声明式事务无法提交的问题
1、问题复现 spring 3.0 + hibernate 3.2 spring mvc使用注解方式;service使用@service注解 事务使用@Transactional 事务配置使用 Java代码 "transactionManager" proxy-target-class="true" />转载 2012-02-22 07:33:19 · 10110 阅读 · 1 评论 -
spring mvc 分页
分页主要需要两个参数:1、当前页是第几页2、每页展示多少条数据先写一个类来封装处理这两个参数:package com.smvc.annonation.utils;import java.io.Serializable;import java.util.List;import org.apache.commons.lang.builder.ToStringBuil原创 2012-02-14 09:16:48 · 38055 阅读 · 11 评论 -
org.apache.commons.lang.time.DateUtils
java.util.Calendar 日历相关的方法add方法和roll方法的区别roll只会在本月内计算通过setTime(date)和getTime与date类型相互转化java.util.Datejava.text.SimpleDateFormat可以通过SimpleDat转载 2011-07-08 13:49:24 · 2833 阅读 · 0 评论