摘要: 1.尽量将共享变量(共享变量指的是在堆内存上创建的对象或者数组,包括成员变量、静态变量和数组元素。)定义为局部变量。 2.如果多线程只是读取变量,可以定义全局final。 3.使用ThreadLocal将变量创建为线程私有。 4.加锁(变量的读写位置都进行必要的同步处理;对于同一个字段来说,在多个访 阅读全文
posted @ 2019-02-20 23:01 hcss 阅读(2337) 评论(0) 推荐(0) 编辑
摘要: 如何使main最后退出呢:(join方法) 阅读全文
posted @ 2019-02-20 13:52 hcss 阅读(233) 评论(0) 推荐(0) 编辑
摘要: Thread.sleep()1.静态方法是定义在Thread类中。2.Thread.sleep()方法用来暂停当前执行的线程,将CPU使用权释放给线程调度器,但不释放锁(也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据),进入sleeping状态 的线程不能被notify方 阅读全文
posted @ 2019-02-20 01:36 hcss 阅读(931) 评论(0) 推荐(0) 编辑
摘要: 1.线程几种状态图 2.创建线程的两种方式(实现Runnable接口,或者继承Thread类) 定义一个任务就是这么简单哈~不过光有任务没啥卵用,需要创建一个线程去运行这个任务。 java中的Thread类来代表一个线程,我们需要关注它的这几种构造方法: Thread(Runnable target 阅读全文
posted @ 2019-02-19 17:20 hcss 阅读(168) 评论(0) 推荐(0) 编辑
摘要: JDBC操作数据库的步骤 ? 注册数据库驱动。 建立数据库连接。 创建一个Statement。 执行SQL语句。 处理结果集。 关闭数据库连接 代码如下 JDBC中的Statement 和PreparedStatement,CallableStatement的区别? 区别: PreparedStat 阅读全文
posted @ 2019-02-16 23:54 hcss 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 用于配置Web应用的相关信息,如:监听器(listener)、过滤器(filter)、 Servlet、相关参数、会话超时时间、安全验证方式、错误页面等。例如: Servlet 3中的异步处理指的是什么? 阅读全文
posted @ 2019-02-15 21:39 hcss 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 过滤器是Servlet的高级特性之一,也别把它想得那么高深,只不过是实现Filter接口的Java类罢了! Java Web开发中的过滤器(filter)是从Servlet 2.3规范开始增加的功能,并在Servlet 2.4规范中得到增强。对Web应用来说,过滤器是一个驻留在服务器端的Web组件, 阅读全文
posted @ 2019-02-15 21:27 hcss 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行。 Java Web开发中的监听器(listener)就是application、session、request三个对象创建、销毁或者往其中 阅读全文
posted @ 2019-02-15 21:25 hcss 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并且还要知道SKIP_BODY,EVAL_BODY等等的变量代表着什么,在什么方法中使用。这样实在是太麻烦了! 因此,为了简化标签开发的复杂度,在JSP 2.0中定义了一个更为简单 阅读全文
posted @ 2019-02-15 21:21 hcss 阅读(174) 评论(0) 推荐(0) 编辑
摘要: JSTL全称为 JSP Standard Tag Library 即JSP标准标签库。 JSTL作为最基本的标签库,提供了一系列的JSP标签,实现了基本的功能:集合的遍历、数据的输出、字符串的处理、数据的格式化等等! 使用JSTL标签库步骤: 导入jstl.jar和standard.jar开发包 在 阅读全文
posted @ 2019-02-15 20:30 hcss 阅读(529) 评论(0) 推荐(0) 编辑