`
lilongping269
  • 浏览: 42242 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论
文章列表
关于选用何种游标? 显示游标分为:普通游标,参数化游标和游标变量三种。 游标循环策略 :分三种循环:loop,while,for 例子: create or replace procedure proccycle(p varchar2) as cursor c_postype is select pos_type, description from pos_type_tbl where rownum < 6; v_postype varchar2(20); v_description varchar2(50); begin open c_postype;    if c_posty ...
创建语句:create or replace procedure 存储过程名 存储过程名定义:包括存储过程名和参数列表。参数名和参数类型。参数名不能重复, 参数传递方式:IN, OUT, IN OUT IN 表示输入参数,按值传递方式。 OUT 表示输出参数,可以理解为按引用传递方式。可以作为存储过程的输出结果,供外部调用者使用。 IN OUT 即可作输入参数,也可作输出参数。 变量声明块:紧跟着的as (is )关键字,可以理解为pl/sql的declare关键字,用于声明变量。 变量声明块用于声明该存储过程需要用到的变量,它的作用域为该存储过程。 过程语句块:从begin 关 ...
什么是MVC? MVC是model-view-control即把一个应用的输入,处理,输出流程按照模型层,视图层,处理层分离。 模型(model):java类。即java Beans。用于业务流程/状态的处理以及业务规则的制定。模型接受视图请求的数据,并返回最终处理结果。是MVC最核心的模块。 视图(view):用jsp技术。代表用户交互界面,一个应用可能有很多个不同的视图。MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理,业务流程的处理交给模型处理。 控制器(control):Servlet技术。从用户接受请求,将模型与视 ...
一、早期JSP Model 1、在早期的web应用程序的开发中,程序语言和HTML混合在一 起。 2、Jsp用来执行业务逻辑的程序代码。 3、HTML负责显示数据。 二、产生的问题     1、HTML代码和java程序强耦合在一起:jsp文件编写者既是网页设计者,又是java开发者。     2、流程逻辑:要理解应用程序的整个流程,必须浏览所有的页。      3、调试困难:HTML标记,java代码,javascript代码都集中在一个网页中,调试变得很困难。    4、强耦合:改变业务逻辑或者数据可能牵涉相关的很多网页。 注意:在这种情况下,提出了MVC设计思想。 三、MVC ...
线程安全: 1、程序中的每一条语句都是原子操作,则是线程安全的。 2、实例变量是在堆中分配的,并不被属于该实例的所有线程共享,只有一个线程独享,是线程安全的。 3、局部变量在堆栈中分配,因为每个线程都有它自己的堆栈空间,所以是线程安全的. 4、静态类不用被实例化,就可直接使用,也不是线程安全的. 5、单线程方式是线程安全的。 线程安全,是指一个方法(method)可以在多线程的环境下安全的有效的访问进程级的数据(这些数据是与其他线程共享的)。事实上,线程安全是个很难达到的目标。 线程安全的核心概念就是同步,它保证多个线程: 同时开始执行,并行运行 不同时访问相同的对象实例 ...
http://he-wen.iteye.com/blog/953408 http://www.iteye.com/topic/684052 http://www.iteye.com/topic/806990 http://www.iteye.com/topic/808550
线程安全无非是要控制多个线程对某个资源的有序访问或修改。 要认识java线程安全,必须了解两个主要的点:java的内存模型,java的线程同步机制。 总结java的内存模型,要解决两个主要的问题:可见性和有序性。我们都知道计算机有高速缓存的存在,处理器并不是每次处理数据都是取内存的。JVM定义了自己的内存模型,屏蔽了底层平台内存管理细节,对于java开发人员,要清楚在jvm内存模型的基础上,如果解决多线程的可见性和有序性。 1、何谓可见性? 多个线程之间是不能互相传递数据通信的,它们之间的沟通只能通过共享变量来进行。 Java内存模型(JMM)规定了jvm有主内存,主内存是多个线程共享的。 ...
Java集合框架——基础接口 http://dl.iteye.com/upload/attachment/608920/25b79360-2a52-3a11-bb3f-a48c42d25d20.jpg 上图中关键的接口有: Collection   Set   List   Map   还有一个Iterator,还有一个是上图没有的Queue接口,也是继承Collection的。 图中的 1,短虚线,表示接口; 2,长虚线,表示抽象类; 3,实线,表示实现类; 4,加强线,表示重点;(没别的意思,这图不是我自己画的,只能解释一下) 5,虚线加实心箭头,表示当前接口实现了一个指 ...
多线程编程中,最关键、最关心的问题应该就是同步问题,这是一个难点,也是核心。 在Java的多线程程序中,当多个程序竞争同一个资源时,为了防止资源的腐蚀,给第一个访问资源的线程分配一个对象锁,而后来者需要等待这个对象锁的释放。 Java线程的同步,最关心的是共享资源的使用。 先来了解一些有哪些线程的共享资源,从JVM中了解有哪些线程共享的数据是需要进行协调: 1,保存在堆中的实例变量;2,保存在方法区的类变量。 package thread_test;     /**  * 测试扩展Thread类实现的多线程程序   *   * @author ciding   * @ ...
线程可以分为4个状态: New(新生), Runnable(可运行):为了方便分析,还可将其分为:Runnable与Running。 blocked(被阻塞), Dead(死亡)。 1,新生线程: 当你用new操作符创建一个线程时,例如用new Thread(r),线程还没有开始运行,此时线程处于新生状态;在线程运行之前,还有一些簿记工作要做。 2,可运行线程: (a)Runnable:一旦调用了start方法,就进入到Runnable状态。 (b)Running:在到Runnable后,线程就有可能已经进入到了运行状态;根据操作系统所提供的服务,在抢占式调度的系统中,系统给 ...
package thread_test;     /**  * 测试Runnable类实现的多线程程序   *   * @author ciding   * @createTime Dec 7, 2011 9:38:52 AM  *  */  public class TestRunnable {        public static void main(String[] args) {            StrRunnable sr1 = new StrRunnable("chenfengbin");           StrR ...
sleep()     wait()     notify/notifyAll()   的区别 1、sleep()是线程类的方法,sleep() 允许指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间内进入阻塞状态,不能得到CPU 时间,指定的时间一过,线程重新进入可执行状态。说白了 ,也就是把机会给其他线程,但是监控状态依然保持。重要的一点就是 当调用sleep()方法是 不会 释放对象锁的。 2、 wait() notify/notifyAll()直接隶属于 Object 类,也就是说,所有对象都拥有这一对方法。 wait()方法表示,放弃当前对资源的占有权,进入阻塞状态,并 ...
一、定义线程 创建新执行线程有两种方法: 一种方法是将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。 public class PrimeThread extends Thread {          long minPrime;          PrimeThread(long minPrime) {              this.minPrime = minPrime;          }          public void run() {              // compute primes larger than minP ...
(1)通过建立临时表来实现 SQL>create table temp_emp as (select distinct * from employee) SQL> truncate table employee; (清空employee表的数据) SQL> insert into employee select * from temp_emp; (再将临时表里的内容插回来) ( 2)通过唯一rowid实现删除重复记录.在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在Oracle中的哪一个数据文件、块、行上。 ...
truncate,delete,drop的异同点   注意:这里说的delete是指不带where子句的delete语句   相同点:truncate和不带where子句的delete, 以及drop都会删除表内的数据  不同点:  1. truncate和 delete只删除数据不删除表的结构(定义),drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态.  2.delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;如 ...
Global site tag (gtag.js) - Google Analytics