- 博客(92)
- 资源 (12)
- 收藏
- 关注
转载 Spring+SpringMVC+Mybatis 多数据源整合
此篇文章是基于Spring3.0和mybatis3.2的总体大概流程:1. 拷贝所需jar2.写一个数据库切换的工具类:DataSourceContextHolder,用来切换数据库3.写一个DynamicDataSource类来继承AbstractRoutingDataSource,并重写determineCurrentLookupKey()方法,来达到动态切换数据库4.
2017-05-15 18:15:55
590
转载 可搜索下拉框 模糊查询下拉框 jQuery-searchableSelect插件
带搜索框的jQuery下拉框美化插件 searchableSelect,一个简单而人性化的jQuery插件,为select下拉框创建一个搜索栏来快速筛选出你想要的内容,支持切换操作。效果图:jQuery-searchableSelect的使用方式:1.引用<link href="jquery.searchableSelect.css" rel="styleshee
2017-03-16 14:00:35
14502
4
转载 Linux 目录个数和文件个数限制(单个目录下最大文件数)
昨晚排查了在KVM的build系统中的一个问题,跟踪到后面发现在一个目录下mkdir创建目录失败。我手动试了一下,提示如下:cannot create directory `/home/master/jaytemp` too many links我发现是在一个目录下的一级子目录数量是有限制的,遂做了点实验和调查,结合网上其他人写的博客,得到如下的一些关于目录个数和文件个数限制的结论。1
2017-03-08 14:41:09
13015
转载 svn代码量统计工具
StatSVN介绍StatSVN是一个Java写的开源代码统计程序,从statCVS移植而来,能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。比如:代码行数的时间线;针对每个开发者的代码行数;开发者的活跃程度;开发者最近所提交的;文件数量;平均文件大小;最大文件;哪个文件是修改最多次数的;目录大小;带有文件数量和代码行数的Repository tree
2016-12-13 10:52:00
4805
转载 Spring service本类中方法调用另一个方法事务不生效问题
前些日子一朋友在需要在目标对象中进行自我调用,且需要实施相应的事务定义,且网上的一种通过BeanPostProcessor的解决方案是存在问题的。因此专门写此篇帖子分析why。1、预备知识aop概念请参考【http://www.iteye.com/topic/1122401】和【http://jinnianshilongnian.iteye.com/blog/1418596】sprin
2016-08-02 11:10:36
67538
15
原创 java json转对象
1、json字符串转成对象数组import : org.codehaus.jackson.map.ObjectMapperObjectMapperobjectMapper=newObjectMapper();GoodReturnInfo[]lists=objectMapper.readValue(addJson, GoodReturnInfo
2016-06-23 11:54:46
697
原创 java实体类转成Map
将实体类转成Map private static Logger LOGGER = LoggerFactory.getLogger(BeanUtils.class); // Bean --> Map 1: 利用Introspector和PropertyDescriptor 将Bean --> Map public static Map transBean2Map(Object ob
2016-06-23 11:53:05
18625
转载 hibernate根据条件动态组装sql/hql语句(仿ibatis动态查询语句功能)
1.功能需求背景 项目中使用hibernate作为数据持久层框架,主要考虑hibernate在进行一些简单的crud操作时非常便利,不需要和ibatis似的为每个sql操作都写一堆文件,但是同时也带来了一些局限性,如类似ibatis强大的动态查询功能用不了了,但是这个功能在项目中的应用场景又很大,hibernate自身也支持将sql/hql语句写在.hbm.xml映射文件中和元素,但是这个功
2016-06-23 11:49:05
9156
1
原创 多线程start()、run()
一.问题引入 说到这两个方法就不得不说多线程,说到多线程就不得不提实现多线程的两种方式继承Thread类和实现Runable接口,下面先看这两种方式的区别。二. Java中实现多线程的两种方式继承Thread类/** * 使用Thread类模拟4个售票窗口共同卖100张火车票的程序,实际上是各卖100张 */public class Thread
2016-05-16 17:17:53
499
转载 mysql索引
在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:复制代码代码如下:CREATE TABLE mytable( ID INTNOT NULL, username VARCHAR(16) NOT NULL );我们随机向里面插入了10000条记录,其中有一条:5555, admin。在查找username="admin"的记录 SEL
2016-05-16 11:26:23
296
转载 Tomcat内存配置、参数说明
Tomcat内存配置Tomcat内存配置JAVA_OPTS="-server -Duser.timezone=GMT+08-Xms1024m -Xmx1024m -XX:PermSize=1024m -Xmn512m-XX:MaxPermSize=1024m-Djava.awt.headless=true"-Xms: Initial java heap size
2016-05-16 10:46:25
802
原创 mysql索引问题
Mysql数据库提供两种类型的索引,如果没正确设置,索引的利用效率会大打折扣却完全不知问题出在这。复制代码 代码如下:CREATE TABLE test ( id INT NOT NULL, last_name CHAR(30) NOT NULL, first_name CHAR(30) NOT NULL, PRIMARY KE
2016-03-17 15:07:59
334
原创 Map.values()/entrySet()/keySet() 无法序列化问题
public class Test { private static void trySerialize (Object o) { try { ObjectOutputStream stream = new ObjectOutputStream(new ByteArrayOutputStream()); System.o
2016-01-25 14:47:19
1566
原创 MSM--Memcached_Session_Manager介绍及使用
MSM--Memcached_Session_Manager介绍及使用我们都知道对于一些大型的web2.0的网站,在正式部署时一般是部署在不同故障域的多台应用服务器上,以j2ee应用为例,一般我们都会部署在tomcat下,假如我们部署了10台tomcat服务器,那这10台tomcat可能是部署在不同的机器上,然后将应用程序copy到这10台tomcat下,然后启动所有tomcat,一般来说这样
2016-01-25 14:18:45
291
原创 mysql 添加外键
/**建表语句**/CREATE TABLE t_student(id int,crosse_id int,name VARCHAR(50));CREATE TABLE t_crosse(id int,name VARCHAR(50));/**创建索引**/CREATE INDEX crosse_index_id ON t_crosse (id);/**插入数
2016-01-22 11:04:01
414
原创 java类反射
利用反射获取类的属性值和方法package com.dayee.wintalent.recruit.position.entity;import java.lang.reflect.Field;import java.lang.reflect.Method;public class Auser { private String name; private String
2016-01-07 10:57:55
384
原创 自定义注解以及获取注解
自定义和解析注解一、前言 注解(Annotation)作为元数据的载体,为程序代码本身提供额外的信息,使用过MyBatis等ORM框架的朋友对 @Insert 的注解应该不陌生了,这是MyBatis自定义的注解,显然我们也可以按需求自定义一些注解,然后对其进行解析获取元数据,进而实现通过代码生成代码的操作。二、自
2016-01-07 09:56:19
1414
原创 证书导入java的jre环境中
以java调用web service接口为例:一、将证书导入Java的JRE环境1、浏览器中输入地址:https://api.nciic.com.cn/nciic_ws/services/NciicServices?wsdl (webservice接口地址) 点击 保存证书,例如:保存到:H:/ciicCheck
2016-01-06 09:43:31
3915
原创 各个浏览器下载乱码问题
//各个浏览器下载乱码问题public static void downloadAttachment(AttachmentContent attachment) { InputStream is = null; OutputStream out = null; try { HttpServletRequest request
2015-12-29 16:04:03
589
原创 谷歌浏览 打印无法分页 page-break-after: always
在使用chrome打印时,页面上用float并列排放DIV,用page-break-after: always;控制打印分页,发现第一页打印正常,之后就失去分页作用。去掉float打印分页就正常,两者不能同时使用。研究后发现,可以使用display:inline-block;代替float,来解决chrome下两者冲突。
2015-11-30 14:34:01
13234
2
原创 jquery 自定义函数
/**jquery 自定义函数**///第一种 调用方式:$.methodName();jQuery.extend({ methodName:function () { alert(100);//逻辑代码 return 100;//可有返回值 }}); //第二种 调用方式:$(this).methodName(); jQuery.fn.methodName=f
2015-03-10 11:40:22
390
原创 6.3、指针作为函数参数
函数的参数不仅可以是整型、浮点型、字符型等数据,还可以是指针类型。它的作用是将一个变量的地址传送给被调用函数的形参。【例6.3】题目同例6.2,即对输入的两个整数按大小顺序输出。这里用函数处理,而且用指针类型的数据作函数参数。程序如下:#include using namespace std;int main( ){ void swap(int *p1,int *p2); /
2015-03-09 17:19:44
731
原创 6.2、变量与指针
指针变量是一种特殊的变量,它和以前学过的其他类型的变量的不同之处是:用它来指向另一个变量。为了表示指针变量和它所指向的变量之间的联系,在C++中用“*”符号表示指向,例如,i_pointer是一个指针变量,而*i_pointer表示i_pointer所指向的变量,见图6.3。下面两个语句作用相同: i=3; *i_pointer=3;图 6.3定
2015-03-09 16:34:56
468
原创 6.1、指针的概念
为了说清楚什么是指针,必须弄清楚数据在内存中是如何存储的,又是如何读取的。如果在程序中定义了一个变量,在编译时就给这个变量分配内存单元。系统根据程序中定义的变量类型,分配一定长度的空间。例如,C++编译系统一般为整型变量分配4个字节,为单精度浮点型变量分配4个字节,为字符型变量分配1个字节。内存区的每一个字节有一个编号,这图6.1就是“地址”。图6.1请务必弄清楚一
2015-03-09 15:13:40
406
原创 5.9、C++处理字符串方法
用字符数组来存放字符串并不是最理想和最安全的方法。C++提供了一种新的数据类型——字符串类型(string类型),在使用方法上,它和char、int类型一样,可以用来定义变量,这就是字符串变量——用一个名字代表一个字符序列。实际上,string并不是C++语言本身具有的基本类型,它是在C++标准库中声明的一个字符串类,用这种类可以定义对象。每一个字符串变量都是string类的一个对
2015-03-09 15:04:47
329
原创 5.8、字符串处理函数
字符串连接函数 strcat其函数原型为 strcat(char[],const char[]);strcat是string catenate(字符串连接)的缩写。该函数有两个字符数组的参数,函数的作用是:将第二个字符数组中的字符串连接到前面字符数组的字符串的后面。第二个字符数组被指定为const,以保证该数组中的内容不会在函数调用期间修改。连接后的字符串放在第一个字符数组中,函
2015-03-09 14:45:32
446
原创 5.7、字符数组的输入输出
字符数组的输入输出可以有两种方法:1) 逐个字符输入输出,如例5.9。2) 将整个字符串一次输入或输出。例如有以下程序段: char str[20]; cin>>str; //用字符数组名输入字符串 cout在运行时输入一个字符串,如: China↙在内存中,数组str的状态如图5.9所示,在5个字符的后面自动加了一个结束符′\0′。
2015-03-09 14:30:30
1630
原创 5.6、字符串和字符串结束标志
用一个字符数组可以存放一个字符串中的字符。如: char str[12]={'I',' ','a','m',' ','h','a','p','p','y'};用一维字符数组str来存放一个字符串″I am happy″中的字符。字符串的实际长度(10)与数组长度(12)不相等,在存放上面10个字符之外,系统对字符数组最后两元素自动填补空字符′\0′。为了测定字符串的实际长度,
2015-03-09 14:14:18
883
原创 5.5、C++字符数组
用来存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。字符数组具有数组的共同属性。由于字符串应用广泛,C和C++专门为它提供了许多方便的用法和函数。字符数组的定义和初始化定义字符数组的方法与前面介绍的类似。例如: char c[10]; c[0]=′I′;c[1]=′ ′;c[2]=′a′;c[3]=′m′;c[4]=′ ′;c[5]=′h′;c[6]
2015-03-09 14:02:32
530
原创 5.4、用数组名作为函数参数
常量和变量可以用作函数实参,同样数组元素也可以作函数实参,其用法与变量相同。数组名也可以作实参和形参,传递的是数组的起始地址。用数组元素作函数实参由于实参可以是表达式,而数组元素可以是表达式的组成部分,因此数组元素当然可以作为函数的实参,与用变量作实参一样,将数组元素的值传送给形参变量。【例5.6】用函数处理例5.5。算法和例5.5是一样的,今设一函数max_value
2015-03-09 11:38:22
1544
原创 5.3、C++二维数组
具有两个下标的数组称为二维数组。有些数据要依赖于两个因素才能惟一地确定,例如有3个学生,每个学生有4门课的成绩,显然,成绩数据是一个二维表,如书中表5.1所示。表5.1 学生成绩数据表学生序号课程1课程2课程3课程4课程5学生18578999688学生27689759775学生3
2015-03-09 11:24:55
1122
原创 js 表单验证(含自定义)
$().ready(function() { jQuery.validator.addMethod("isMobile", function(value, element) { var length = value.length; var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/; return this.optional(
2015-03-09 10:35:26
698
原创 java 将源目录下的文件拷贝到另一个目录下
/*** * 将源目录下的文件拷贝到另一个目录下 * * @param originDirectory 源目录路径 * @param targetDirectory 目标目录路径 */ public static void copyAllFile(String originDirectory,String targetDirectory) { // 源路径File实例
2015-03-09 10:28:25
567
原创 java 单元测试一(读取配置文件 jdbc访问数据库)
package com.cmdi.cloudplatform.test;import java.beans.PropertyVetoException;import java.util.Properties;import junit.framework.TestCase;import org.apache.log4j.Logger;import
2015-03-09 10:07:00
3259
原创 java 单元测试二(hibernate sessionFantory注入)
利用spring,有时我们需要写的单元测试中需要用到Hibernate的表与实体类对应关系,和sessionFactory的注入方式测试,这时就得读取application的配置文件,下面是个例子:1、配置文件:applicationContext4Test.xml<beans xmlns="http://www.springframework.org/schema/beans" xml
2015-03-09 09:55:07
527
原创 5.2、C++一维数组
定义一维数组定义一维数组的一般格式为: 类型标识符 数组名[常量表达式];例如: int a[10];它表示数组名为a,此数组为整型,有10个元素。获得数组的长度:sizeof(arry)/sizeof(arry[int]),int可以为任意整数关于一维数组的几点说明:1) 数组名定名规则和变量名相同,遵循标识符定名规则。2) 用方括号括起
2015-03-06 17:22:07
712
原创 5.1、C++数组的概念
概括地说:数组是有序数据的集合。要寻找一个数组中的某一个元素必须给出两个要素,即数组名和下标。数组名和下标惟一地标识一个数组中的一个元素。数组是有类型属性的。同一数组中的每一个元素都必须属于同一数据类型。一个数组在内存中占一片连续的存储单元。如果有一个整型数组a,假设数组的起始地址为2000,则该数组在内存中的存储情况如图5.1所示。图 5.1引入数组就不需要在程序
2015-03-06 16:52:25
455
原创 4.19、C++条件编译
一般情况下,在进行编译时对源程序中的每一行都要编译。但是有时希望程序中某一部分内容只在满足一定条件时才进行编译,也就是指定对程序中的一部分内容进行编译的条件。如果不满足这个条件,就不编译这部分内容。这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。条件编译命令常用的有以下形式:1) #ifdef 标识符 程序段1#e
2015-03-06 16:33:59
477
原创 4.18、C++文件包含处理
文件包含的作用所谓“文件包含”处理是指一个源文件可以将另外一个源文件的全部内容包含进来,即将另外的文件包含到本文件之中。C++提供了#include命令用来实现“文件包含”的操作。如在file1.cpp中有以下#include命令: #include ″file2.cpp″它的作用见图4.18示意。图4.18“文件包含”命令是很有用的,它可以节省程序设
2015-03-06 15:26:56
621
原创 4.17、C++宏定义
可以用#define命令将一个指定的标识符(即宏名)来代表一个字符串。定义宏的作用一般是用一个短的名字代表一个长的字符串。它的一般形式为: #define 标识符 字符串这就是已经介绍过的定义符号常量。如: #define PI 3.1415926还可以用#define命令定义带参数的宏定义。其定义的一般形式为: #define 宏名(参数表) 字符串如:
2015-03-06 15:16:06
405
springboot所数据源链接mongodb
2018-07-30
hudson打包工具
2016-05-23
memcached管理session资源
2016-01-25
Axure chrome 插件
2016-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人