本原则是个人感悟(不保证完全正确) 第一条原则,首先将一条完整的字符串写好.(例如是"select * from users where id=(id+1)") 凡是变量都需要在其前面加上+,且前面是要加上",如果后面不是",则后面必须也要加上+". 第二条原则如果遇上括号(id+1),那加号必定死以括号为原则的,在(号之前加上+,并且前方是",而且后方也是+" 第三条原则,如果后期遇到的是变量后面还有",算了不如干脆,直接省…
Java中string拼接,StringBuilder,StringBuffer和+,到底哪个更合适? StringBuilder线程不安全,效率较线程安全的StringBuffer高.jdk1.5之前,+操作会产生大量String对象,影响GC的效率,但是jdk1.5之后做了优化,使用+操作符不一定会产生大量String对象,而是自动优化为StringBuilder方式.如果是在一个for循环中进行String拼接,还是不建议使用+操作,因为会大量产生new StringBuilder()对象…
如何检查一个数组(非排序的)是否包含特定的值.这是个非常有用或经常被在Java中使用.这是个在Stack Overflow中高得票的问题.在已经高得票的答案中,有许多不同的处理方法,但是时间的复杂度非常不同.在下面,我将会展示每种方法的时间花费. 一.四种不同的方法去检查一个数组包含特定的值 1) 用List public static boolean useList(String[] arr, String targetValue) { return Arrays.asList(arr).co…
以前拼接的写法 set @sql=' select * from table where 1=1 ' if (@addDate is not null) set @sql = @sql+' and addDate = '+ @addDate + ' ' if (@name <>'' and is not null) set @sql = @sql+ ' and name = ' + @name + ' ' exec(@sql)   下面是 不采用拼接SQL字符串实现多条件查询的解决方案   第…
简单了解一下java虚拟机--jvm几个内存区域: 方法区:在java的虚拟机中有一块专门用来存放已经加载的类信息.常量.静态变量以及方法代码的内存区域, 常量池:常量池是方法区的一部分,主要用来存放常量和类中的符号引用等信息. 堆区:用于存放类的对象实例. 栈区:也叫java虚拟机栈,是由一个一个的栈帧组成的后进先出的栈式结构,栈桢中存放方法运行时产生的局部变量.方法出口等信息. 当调用一个方法时,虚拟机栈中就会创建一个栈帧存放这些数据,当方法调用完成时,栈帧消失,如果方法中调用了其他方法,则…
一.第一种方法: 使用JDBC-ODBC的桥方式 JDBC-ODBC桥连接器是用JdbcOdbc.class 和一个用于访问ODBC驱动程序的本地库实现的,对于Windows平台,该本地库是一个动态链接库DLL(JDBCODBC.DLL). 由于JDBC再设计上和ODBC很接近.在内部,这个驱动程序把JDBC的方法映射到ODBC调用上,这样,JDBC就可以和任何可用的ODBC驱动程序进行交互了,这种桥接器的优点是:它使JDBC目前有能力访问几乎所有的数据库. (1)   使用JDBC-ODBC桥…
后端拼接时用:"\n"分割,比如: String str = "白日依山尽,\n" + "黄河入海流:"; 返回前台页面时,放入 <pre></pre> 标签中即可实现换行.…
/* * 用来生成where子句 len数组的长度 */ private String toWhereSql(int len) { StringBuilder sb = new StringBuilder("userId in("); for(int i = 0; i < len; i++) { sb.append("?"); if(i < len - 1) { sb.append(","); } } sb.append("…
一般实现两个变量之间的互换要用第三个变量,这样做可以,但创建新变量,增加了系统开销.如果要交换的变量时两个整数型变量,可以用更高效的方法.例如:^(异或)操作,举例如下: package chapterOne; import java.util.Scanner; public class VariableExchange { public static void main(String[] args) { Scanner scan=new Scanner(System.in); System.o…
一.static关键字的特点 (1)修饰成员变量.成员方法(2)随着类的加载而加载(3)优先于对象存在(4)被所有对象共享(5)可以通过类名调用 它本身也可以通过对象名调用 例如:main()方法由java虚拟机调用,不需要创建对象,他是一个静态方法 二.什么时候使用静态? 如果某个成员变量是被所有对象共享的,那么它应该被定义为静态的. 三.类成员和对象成员 静态修饰的内容一般我们称其为:与类相关的,类成员 非静态修饰的内容一般我们称其为:与对象相关的,对象成员 四.注意事项 (1)静态方法没有…