Hi_Amos
坚持每天都在进步!!

随笔分类 -  java学习

上一页 1 2 3 4 5 下一页
basic java,java学习
java核心知识点学习----重点学习线程池ThreadPool
摘要:线程池是多线程学习中需要重点掌握的.系统启动一个新线程的成本是比较高的,因为它涉及与操作系统交互.在这种情形下,使用线程池可以很好的提高性能,尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池.一.如何创建线程池??在Java5之前,线程池都是开发才手动实现的,从Java5开始,J... 阅读全文
posted @ 2014-04-21 23:50 Hi_Amos 阅读(469) 评论(0) 推荐(0) 编辑
java核心知识点学习----多线程间的数据共享和对象独立,ThreadLocal详解
摘要:线程内的数据共享与对象独立,举例:张三给李四转钱,开启A线程去执行转钱这个动作,刚好同时王五给赵六转钱,开启B线程去执行转钱,因为是调用的同样一个动作或者说对象,所以如果不能保证线程间的对象独立,那么很有可能发生,张三给李四转钱时把王五转给赵六的转钱一块提交了,而王五转钱整个动作还未完成,那么就造成... 阅读全文
posted @ 2014-04-21 01:06 Hi_Amos 阅读(4061) 评论(0) 推荐(1) 编辑
java核心知识点学习----多线程间的数据共享的几种实现方式比较
摘要:需求:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j减少1.实现数据共享的几种方式比较:1.使用同一个runnable对象如果每个线程执行的代码相同,那么可以使用同一个runnable对象,这个runnable有那个共享数据,例如,卖票系统就是这么做的.如下例所示:... publ... 阅读全文
posted @ 2014-04-21 01:06 Hi_Amos 阅读(4848) 评论(0) 推荐(0) 编辑
Java核心知识点学习----多线程并发之线程间的通信,notify,wait
摘要:1.需求:子线程循环10次,主线程循环100次,这样间隔循环50次.2.实现:package com.amos.concurrent;/** * @ClassName: ThreadSynchronizedConnect * @Description: 用wait,notify实现线程间的通信,需求... 阅读全文
posted @ 2014-04-20 17:43 Hi_Amos 阅读(1173) 评论(0) 推荐(0) 编辑
java核心知识点学习----多线程并发之线程同步
摘要:1.什么是线程同步?多线程编程是很有趣的事情,它很容易出现"错误情况",这种情况不是由编码造成的,它是由系统的线程调度造成的,当使用多个线程来访问同一个数据时,很容易出现"偶然情况",出现线程安全问题.线程安全问题最常见的就是银行取钱问题,铁路售票问题,必须保证甲方在操作数据时候,己方不会影响甲方.... 阅读全文
posted @ 2014-04-20 15:57 Hi_Amos 阅读(802) 评论(1) 推荐(0) 编辑
java核心知识点学习----并发和并行的区别,进程和线程的区别,如何创建线程和线程的四种状态,什么是线程计时器
摘要:多线程并发就像是内功,框架都像是外功,内功不足,外功也难得精要.1.进程和线程的区别一个程序至少有一个进程,一个进程至少有一个线程.用工厂来比喻就是,一个工厂可以生产不同种类的产品,操作系统就是工厂,产品就是进程,工人就是线程.工厂----->操作系统产品----->进程工人---->线程一个工厂可... 阅读全文
posted @ 2014-04-18 02:01 Hi_Amos 阅读(1985) 评论(0) 推荐(3) 编辑
java核心知识点学习----equals和==的比较、单例模式,饿汉式,饱汉式
摘要:最近发现自己学习能力变慢了,想来想去还是发现是因为自己Java基础没有打扎实,接下来的一系列文章将主要记录自己对于Java的最基础知识点的学习.一.equals和==的比较 先看例子:package com.amos;/** * @ClassName: EqualTest * @Descriptio... 阅读全文
posted @ 2014-04-15 00:15 Hi_Amos 阅读(1414) 评论(0) 推荐(0) 编辑
java 查询 mongodb 中的objectid
摘要:网上找了很久查询objectid的方法都是错的,用mongovue能查询出来,但就是用java不知道怎么查询1.mongovue里的查询方式:{"_id" : ObjectId("5326bfc0e6f780b21635248f")}2.纯mongodb里的查询方式:db.collect.find({ "_id" : ObjectId("5326bfc0e6f780b21635248f") })3.java里的查询方式:import org.bson.types.ObjectId;public DBObject f 阅读全文
posted @ 2014-03-21 20:10 Hi_Amos 阅读(6663) 评论(0) 推荐(0) 编辑
maven中跳过单元测试
摘要:Maven 提供了跳过单元测试的能力,只需要使用 Surefire 插件的 skip 参数。 在命令行,只要简单的给任何目标添加 maven.test.skip 属性就能跳过测试:$mvninstall-Dmaven.test.skip=true...[INFO] [compiler:testCompile][INFO] Not compiling test sources[INFO] [surefire:test][INFO]Testsareskipped....当 Surefire 插件到达 test 目标的时候,如果 maven.test.skip 设置为 true ,它就会跳过单元测试 阅读全文
posted @ 2014-02-28 19:48 Hi_Amos 阅读(2228) 评论(0) 推荐(0) 编辑
java面试题--实现一个百亿的计算器
摘要:看了网上很多说法,没有具体把它实现的,我试了一下其实还是比较简单的。直接看代码:package com.infomorrow;import java.math.BigInteger;import org.junit.Test;/** * @ClassName: test_biginteger * @Description: 设计一个百亿计算器的回头乘除* @author: amosli* @email:amosli@infomorrow.com* @date 2014年2月26日 下午12:48:51 */public class test_biginteger { @Test ... 阅读全文
posted @ 2014-02-26 13:10 Hi_Amos 阅读(3468) 评论(2) 推荐(2) 编辑
java struts2入门学习--OGNL语言常用符号和常用标签学习
摘要:一.OGNL常用符号(接上一篇文章):1.#号1) 作用于struts2的域对象,而不是普通域对象2)作用于JavaBean对象3)作用于普通字符串,如果value只是一个字符串的话,不是JavaBean对象,可以加#,也可以不加.4) ?#,表示所有记录 ^#,表示第一条记录 $#,表示最后一条记录 {?#条件}[n],表示第n+1条记录,例如:=22}"> =22}[1]"> 取出第N个记录,N为索引号实例:ognl_3.jspInsert title here userList = new ArrayList(); userLi... 阅读全文
posted @ 2014-02-19 00:49 Hi_Amos 阅读(1751) 评论(3) 推荐(1) 编辑
java struts2入门学习--OGNL语言基本用法
摘要:一.知识点学习1.struts2中包含以下6种对象,requestMap,sessionMap,applicationMap,paramtersMap,attr,valueStack;1)requestMap用来存放包含当前HttpServletRequest的属性(attribute)的Map,简单来说就是request域中的值; 2)sessionMap用来存放包含当前HttpSession的属性(attribute)的Map3)applicationMap用来存放包含当前应用的ServletContext的属性(attribute)的Map4)paramtersMap包含当前HTTP请求 阅读全文
posted @ 2014-02-18 00:20 Hi_Amos 阅读(1294) 评论(4) 推荐(1) 编辑
java struts2入门学习--防止表单重复提交.OGNL语言学习
摘要:一.知识点回顾防止表单重复提交核心思想:客户端和服务器端和写一个token,比较两个token的值相同,则非重复提交;不同,则是重复提交.1.getSession三种方式比较:request.getSession()request.getSession(true);//无论如何都要得到新的Sessionrequest.getSession(false);//只能得到旧有的Session2.>>struts2框架提供了token拦截器,主要用于防止表单重复提交 >>默认栈中无token拦截器,所以在标签中要显示引用token拦截器3.开发步骤:1)在jsp页面中使用,自动 阅读全文
posted @ 2014-02-17 01:38 Hi_Amos 阅读(417) 评论(0) 推荐(0) 编辑
java struts2入门学习--基于xml文件的声明式验证
摘要:一.知识点总结后台验证有两种实现方式:1 手工验证顺序:validateXxx(针对Action中某个业务方法验证)-->validate(针对Action中所有的业务方法验证)2 声明式验证 validate()===>"Action的类名-validation.xml"===>必须放置在Action类的同目录下 validateXxx()===>"Action的类名-标签中的name属性值-validation.xml"必须 放置在与Action类同目录下.当存在两种验证文件时,其结果是二者验证效果之和,针对下面的例子:先执行 阅读全文
posted @ 2014-02-16 23:12 Hi_Amos 阅读(987) 评论(0) 推荐(0) 编辑
java struts2入门学习---自定义类型转换
摘要:自定义类型转换器的作用就是将struts无法识别的类型转换成自己所需要的.比如输入:广东-东莞-虎门,对应的输出时能输出:广东省 东莞市 虎门(镇/区)这里涉及到的知识点即是将String转换为任意的JavaBean类型.一.实现代码 程序配置入口:struts.xml --> --> --> --> -->注:struts.xml是在项目运行的过程中被加载进入内存的,是项目配置的总入口,这里使用属性加载外部的type_struts.xmltype_struts.xml ... 阅读全文
posted @ 2014-02-14 01:19 Hi_Amos 阅读(744) 评论(0) 推荐(0) 编辑
java struts2入门学习---文件下载的二种方式
摘要:一.关于文件下载:文件下载的核心思想即是将文件从一个地方拷贝到另一个地方.1.传统方式: 在Action中加入大量servlet api 操作.优点是好理解,缺点是耦合度高。2.stream方式: 使用struts2中的stream拦截器进行操作二.实例:我这里用的是maven,贴出pom.xml: 4.0.0 com.amos struts2_learn war 0.0.1-SNAPSHOT struts2_learn Maven Webapp http://maven.apache.org juni... 阅读全文
posted @ 2014-02-13 02:02 Hi_Amos 阅读(6014) 评论(0) 推荐(1) 编辑
java struts2入门学习---异常处理和类型转换
摘要:一.struts2对异常的处理1.自定义局部异常:2.自定义全局异常: 3.异常执行的优先级 >>当同时出现全局和局部异常时,局部异常优先,即局部异常优先于全局异常执行,如果全局和局部异常相同,那么将以局部异常为准. >>当异常出现父子关系时,子异常优先.如java.lang.ArithmeticException是java.lang.Exception的子类.如果同时进行配置的话,那么以java.lang.ArithmeticException为准.如: ... 阅读全文
posted @ 2014-01-27 02:01 Hi_Amos 阅读(841) 评论(0) 推荐(0) 编辑
java struts2入门学习---常用标签学习总结
摘要:jsp页面中引入标签:常用标签知识点总结:取出错误消息生成一个表单生成一个单行文本框,错误消息显示,智能回显.生成一个单行密码框生成一个提交命令按钮取得Action中某个属性的值,底层执行getXxxx()方法取得资源文件中的key值为点位符{0},{1}设置值待更新 阅读全文
posted @ 2014-01-26 02:10 Hi_Amos 阅读(229) 评论(0) 推荐(0) 编辑
java struts2入门学习---中文验证、对错误消息的分离、结果(result)类型细节配置
摘要:一、需求利用struts2实现中文验证并对错误消息的抽离。详细需求:用户登录--》不填写用户名--》页面跳转到用户登录页面,提示用户名必填(以英文和中文两种方式提示)--》填写英文用户名--》页面提示用户名必须填写为英文---》填写中文用户名---》页面跳转到登录成功页面。二、效果图1、英文提示 2、中文提示三、代码分析result.jspInsert title here View Code result_success.jspInsert title here 恭喜,登录成功! 用户名:View Code ResultAct... 阅读全文
posted @ 2014-01-23 01:10 Hi_Amos 阅读(1371) 评论(0) 推荐(0) 编辑
java struts2入门学习---国际化
摘要:一、国际化的概念1、不同国家的人访问同一个网站,显示的语言不同。2、对JSP页面进行国际化属性(properties)文件命名规则:基名---语言--国家如,message_zh_CN.properties>>>使用标签获取相对应的值,如: login.username与属性(properties)文件中的key值相对应。>>>给{0},{1}等占位符动态赋值属性值二、实例11、需求:访问同一个页面,不同语言的访问者,显示不同语言的页面1)英文访问者访问页面2)中文访问者访问页面2、代码分析login_i18n.jsplogin View ... 阅读全文
posted @ 2014-01-22 00:57 Hi_Amos 阅读(1312) 评论(5) 推荐(1) 编辑

上一页 1 2 3 4 5 下一页