Java基础
zheng2008hua
这个作者很懒,什么都没留下…
展开
-
HTTPS HTTPClient
最近项目中需要增加天气预报功能,网上给的资料有很多缺陷比如1. 有些小网站提供的webservers本身就不稳定不能长期使用。2. 还有一些网站限制访问次数。3. 再有就是花钱买服务。根据以上几点只能放弃使用第三方的webservers,由此我们只能找个信得过的提供天气预报的网站抓取页面信息。接下来我们以中央气象台为例实现从请求到数据解析的过程。1. 浏览http://www.nmc.gov.cn/ 发现一个搜索功能做过网页的人都知道通过表单提交城市名字,那我转载 2010-11-30 22:09:00 · 2214 阅读 · 0 评论 -
Java 中 instanceof关键字
instanceof和isInstance(Object obj)和isAssignableFrom(Class cls)的区别和联系 编程的时候可能会遇到一个不知道它属于哪个类的对象,我们可以用下列运算符或者方法来判断。 instanceof是运算符只被用于对象引用变量,检查左边的被测试对象是不是右边类或接口的实例化。如果被测对象是null原创 2011-06-25 17:56:00 · 619 阅读 · 0 评论 -
JAVA移位运算符
移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:>(带符号右移)和>>>(无符号右移)。 在移位运算时,byte、short和char类型移位后的结果会变成int类型,对于 byte、short、char和int进行移位时,规转载 2011-07-16 11:30:18 · 525 阅读 · 0 评论 -
java基本类型取值范围及相关类型转换
整型 其中byte、short、int、long都是表示整数的,只不过他们的取值范围不一样byte的取值范围为-128~127,占用1个字节 (-2的7次方到2的7次方-1)short的取值范围为-32768~32767,占用2个字节 (-2的15次方到2的15次方-1)int的转载 2011-07-28 21:24:35 · 5514 阅读 · 1 评论 -
使用Maven构建eclipse中的web工程
我一般只用maven来管理依赖和环境配置,在开发调试阶段用eclipse来发布web项目到web容器,maven项目编译的相关文件默认放在target目录下,tomcat发布的默认目录是WebRoot。所以在不设置的情况下不能正常发布。 创建maven管理原创 2011-08-07 21:54:17 · 4664 阅读 · 1 评论 -
如何通过maven创建基于eclipse的web应用
最近项目中改用Maven来管理,这两天周末在网上找了一些相关信息,自己稍微试了一下现在把这些贴出来,供以后参考 1.首先到http://maven.apache.org/download.html下载maven2.在本地解压缩后 配置环境变量M2_HOME=ma原创 2011-08-07 21:57:14 · 777 阅读 · 0 评论 -
Java常用的日期处理类
import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java原创 2011-08-14 13:39:18 · 571 阅读 · 0 评论 -
用java解压缩zip和rar的工具类
package decompress; import java.io.File; import java.io.FileOutputStream; import org.apache.tools.ant.Project; import org.apache.tools.ant.taskdefs.Expand; import de.in转载 2011-11-21 22:16:38 · 20377 阅读 · 8 评论 -
StringBuffer、StringBuilder和String的区别
String 是不可改变,定长;StringBuffer, StringBuilder 是不定长,可改变. 注意:本来以为StringBuilder 和StringBuffer 的equals 方法是可以比较两个字符串的内容是否相等,今天才发现不是这么回事。这两个类都直接继承自Object ,并且没有重写equals 方法。StringBuilder sb1 = new转载 2011-12-27 22:40:18 · 536 阅读 · 0 评论 -
java将字符串根据分隔符转换成字符串数组
public class AnalyticalStr{ /** * 使用StringTokenizer类将字符串按分隔符转换成字符数组 * @param string 字符串 * @param divisionChar 分隔符 * @return 字符串数组 * @see [类、类#方法、类#成员] */ public原创 2012-01-08 21:34:16 · 18907 阅读 · 2 评论 -
java基础知识记录--集合
1.List和Map区别: 1) list是存储单列数据的集合,Map是存储键和值这样的双列数据的集合2) list 中存储的数据是有顺序,并且允许重复;Map中存储的数据是没顺序的,其键是不能重复的,值可以重复。 2. List,Set,Map是否继承自Collection接口 List和Set是继承自Collection接口,Map不是 3. List转载 2012-01-08 22:09:01 · 666 阅读 · 0 评论 -
分层架构下的纯JDBC事务控制简单解决方案
对目前的JavaEE企业应用开发来说,基本都会采用分层的架构, 这样可以分散关注、松散耦合、逻辑复用、标准定义。例如,目前使用SSH组合时典型的四层架构:表示层、业务层、持久层和数据层;那么,在四层架构中,事务的控制应该放在哪一层呢?如果使用Spring框架,它对事务做了很好的封装,通过它的AOP配置,可以灵活的配置在任何一层;但是在很多的需求和应用,直接使用JDBC事务控制还是有其优转载 2011-12-31 12:31:39 · 600 阅读 · 0 评论 -
权限管理设计方案 (转)
<br />权限管理设计方案<br /> --董帅<br />1 设计思路<br />为了设计一套具有较强可扩展性的权限管理,需要建立用户、角色和权限等数据库表,并且建立之间的关系,具体实现如下。<br />1.1 用户<br />用户仅仅是纯粹的用户,用来记录用户相关信息,如用户名、密码等转载 2011-04-24 16:11:00 · 1668 阅读 · 0 评论 -
Proxool连接池的使用心得
<br />先转过来研究研究,以后或许可以用得着。<br />公司里用的连接池都是自己写好了,封装起来的,做大型项目的时候,非常有用,但近段时间总是发现数据库连接过多,造成数据库连接压力过大,网站无法访问等 严重后果,我们做的网站主要是用于移动公司的后台,经常会处理很大"群集任务",找了很长时间,发现是程序里有很多打开的连接没有关闭,放回到连接池里 去,造成连接数不够的问题.<br /> 后来上网上找了这个PROXOOL连接池插件,发现有自动KILL不活动的连接的功能.而且有VIEW原创 2011-04-17 11:18:00 · 732 阅读 · 0 评论 -
Java的运算符以及优先级
算术运算符运算符含义+加法-减法*乘法/除法%模运算++递增运算+=加法赋值-=减法赋值*=乘法赋值/=除法赋值%=模运算赋值--递减运算 位运算符~按位非(not)(一元运算)&按位与(and)1按位或(or)^按位异或(xor)>> 右移>>> 右移,左边空出的位以0填充左移&=按位与赋值1=按位或赋值^=按位异或赋值>>=右移赋值>>>=转载 2010-12-25 22:32:00 · 442 阅读 · 0 评论 -
如何比较两个有可能为null的实例
以前在写程序的时候,碰到需要比较两个有可能为null的实例时,为了避免出现NullPointerException,经常用这样的一段代码来比较: Object obj1 ="abc"; Object obj2 ="cde"; if ((obj1 ==null&& obj2 ==null) || (obj1 !=null&& obj1.equals(obj2)) || (obj2 !=null&& obj2.equals(obj1))) { System.o转载 2010-12-25 22:00:00 · 2348 阅读 · 0 评论 -
Java的数据库连接字符串
<br />1、Oracle8/8i/9i数据库(thin模式)<br />Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); <br />String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID <br />String user="test"; <br />String password="test"; <br />Connection conn= Dr原创 2011-03-12 22:55:00 · 576 阅读 · 0 评论 -
在Tomcat中配置https安全连接
1.生成keystore利用 JDK 自带的 keytool 工具完成keystore的生成,运行命令:[JAVA_HOME]/bin/keytool -genkey -alias tomcat-keyalg RSA -keystore [location/fileName]根据提示输入各项值。最后在location路径下生成名为fileName的KeyStore文件。2.修改server.xml在tomcat的conf目录下找到server.xml,在该文件中找到转载 2011-05-10 14:00:00 · 597 阅读 · 0 评论 -
Java经典算法例题分享
<br />【程序31】 题目:将一个数组逆序输出。 <br />程序分析:用第一个与最后一个交换。 <br />其实,用循环控制变量更简单:<br /> for(int k=11;k>=1;k--)<br /> System.out.print(myarr[k]+",");<br /><br />【程序32】 题目:取一个整数a从右端开始的4~7位。 <br />程序分析:可以这样考虑: <br />(1)先使a右移4位。 <br />(2转载 2011-03-24 21:59:00 · 710 阅读 · 0 评论 -
Java经典算法例题分享
<br />【程序31】 题目:将一个数组逆序输出。 <br />程序分析:用第一个与最后一个交换。 <br />其实,用循环控制变量更简单:<br /> for(int k=11;k>=1;k--)<br /> System.out.print(myarr[k]+",");<br /><br />【程序32】 题目:取一个整数a从右端开始的4~7位。 <br />程序分析:可以这样考虑: <br />(1)先使a右移4位。 <br />(2转载 2011-03-24 21:58:00 · 791 阅读 · 0 评论 -
Java中的缓存容器
<br />在.NET中,实现CACHE是件很容易的事,在java中,是如何实现的呢?有哪些解决方案呢?<br /> 归纳了下,大概有下面这些方案<br />OSCache<br /><br /> OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。<br /><br /> OSCache有以下特点:<br /><br /> 缓存任何对象,你可以不受限制的缓存部分jsp转载 2011-03-31 17:54:00 · 1811 阅读 · 0 评论 -
tomcat使用log4j分割日志
<br />tomcat默认使用java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下:<br />1.更新最新的tomcat_juli.jar包到./bin/目录下;<br />2.拷贝log4j.jar,lo4j.properties到./lib目录下;<br />3.删除./conf/logging.properties<br />4.重启<br />log转载 2011-04-01 15:33:00 · 2586 阅读 · 0 评论 -
JBOSS jboss-log4j.xml文件中配置web工程日志
<br />如果使用log4j日志框架,将配置文件放在工程目录下的话容易引起与jboss日志配置的冲突,一个比较好的方式就是将日志配置到jboss的jboss-log4j.xml文件中,文件的目录是($JBOSS)/server/default/conf。在配置文件中添加以下内容:<br /><appender name="myLog" class="org.apache.log4j.DailyRollingFileAppender"><br /> <!--设置通道名称是:file,输出方原创 2011-04-01 16:13:00 · 3993 阅读 · 0 评论 -
Java一些常用代码(1)
<br />Java读取xml文件<br /> <br />import java.io.*;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.NodeList;原创 2011-04-06 21:09:00 · 989 阅读 · 0 评论 -
Java一些常用代码(2)
Java的各种数据库连接MySQL: String Driver="com.mysql.jdbc.Driver"; //驱动程序 String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名 String Username="username"; //用户名 String Password="password"; //密码 Class.f原创 2011-04-09 11:37:00 · 470 阅读 · 0 评论 -
Java对象池技术的原理及其实现
Java对象的生命周期分析 Java对象的生命周期大致包括三个阶段:对象的创建,对象的使用,对象的清除。因此,对象的生命周期长度可用如下的表达式表示:T = T1 + T2 +T3。其中T1表示对象的创建时间,T2表示对象的使用时间,而T3则表示其清除时间。由此,我们可以看出,只有T2是真正有效的时间,而T1、T3则是对象本身的开销。下面再看看T1、T3在对象的整个生命周期中所占的比例。转载 2012-02-20 21:33:44 · 665 阅读 · 0 评论