`
yzhming
  • 浏览: 33046 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
  好的编程原则跟好的系统设计原则和技术实施原则有着密切的联系。下面的这些编程原则在过去的这些年里让我成为了一名优秀的程序员,我相信,这些原则对任何一个开发人员来说,都能让他的编程能力大幅度的提高,能让他开发出可维护性更强、缺陷更少的程序。   1. 不要自我重复(DRY - Don't repeat yourself)   这也许是在编程开发这最最基本的一个信条,就是要告诉你不要出现重复的代码。我们很多的编程结构之所以存在,就是为了帮助我们消除重复(例如,循环语句,函数,类,等等)。一旦程序里开始有重复现象的出现(例如很长的表达式、一大堆的语句,但都是为了表达相同的概念),你就需要 ...
 In this tutorial, we will show you how to read data from a MySQL database, with JdbcCursorItemReader andJdbcPagingItemReader, and write it into an XML file. Tools and libraries used Maven 3 Eclipse 4.2 JDK 1.6 Spring Core 3.2.2.RELEASE Spring OXM 3.2.2.RELEASE Spring Batch 2.2.0.RELEASE My ...
Nginx Plus的商业授权版开始具有TCP负载均衡的功能。从Nginx 1.7.7版本开始加入的,现在变成了一个商业收费版本,想要试用,需要在官网申请。也就是说,Nginx除了以前常用的HTTP负载均衡外,Nginx增加基于TCP协议实现的负载均衡方法。 HTTP负载均衡,也就是我们通常所有“七层负载均衡”,工作在第七层“应用层”。而TCP负载均衡,就是我们通常所说的“四层负载均衡”,工作在“网络层”和“传输层”。例如,LVS(Linux Virtual Server,Linux虚拟服务)和F5(一种硬件负载均衡设备),也是属于“四层负载均衡”。   TCP负载均衡的配置方式 ...
SELECT F.TABLE_NAME, F.CONSTRAINT_NAME, F.COLUMN_NAME, F.POSITION, P.TABLE_NAME, P.COLUMN_NAME, P.POSITION   FROM USER_CONSTRAINTS R, USER_CONS_COLUMNS F, USER_CONS_COLUMNS P WHERE R.OWNER = UPPER(:schema)    AND R.TABLE_NAME = UPPER(:tab)    AND R.CONSTRAINT_TYPE = 'R'    AND R.CONSTRAINT_NAME ...
创建数据库时为了防止其他人不小心删除操作错误, 所有的外键都没有加级联删除。哪知,不知什么时候自己入了一批错误的数据进去,入库使用的是软件自动的,一下点错给自己带来无尽麻烦啊,删除就不好办了。 表间的关系比较复杂,数据量又比较多,一个个删绝对会出大问题。于是实验了几种解决的办法,现小结一下。 方法一:创建约束时设定级联删除 (但一般由于各种原因或出于各种考虑在创建数据库时没有设定级联删除) SQL语句: CREATE TABLE "U_WEN_BOOK"."FARTAB" ("FAR_ID" NUMBER(10) NOT NULL ...
SQL> create unique index idx_uni_empno_copy on emp_copy(empno); Index created. 注意这里的index_type不代表是否唯一性索引,要看UNIQUENESS 字段 SQL> select index_name,status,num_rows,index_type from user_indexes where table_name='EMP_COPY'; INDEX_NAME                     STATUS     NUM_ROWS INDEX_TYPE ----------- ...
将表mytable加上一个id2字段,并使其成为主键之一,原主键名为:mytable_pk,字段为(id),步骤如下: 1.删除主键: alter table mytable drop constraint mytable_pk cascade; 2.增加字段 alter table mytable add id2 varchar2(6); 3.设置新增字段初值 update mytable set id2='sx'; 4.将新增字段改为非空 alter table mytable modify id2 not null; 5.增加主键约束 ALTER TABLE mytable ADD CON ...
1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance();   calendar.setTime(new Date()); System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期   calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//让日期加1     System.out.println(calendar.get(Calendar.DATE ...
from:http://blog.donews.com/dragonflyer/archive/2005/09/09/546609.aspx 使用复选框选可以很方便的一次选择多个数据,对于用户来说是很方便的。下面给出一种实现方法,共同学习。如果有其他更好的方法,也希望各位能共享出来。 页面中的处理: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>复选框的全选</ ...
(1)在一个WEB邮件系统中,当用户打开邮箱的收件夹时,其中的所有邮件标题将在一个网页中列出, 用户可以选中某些邮件,然后对其执行删除、移动等操作。要标识邮件的选中状态,通常都是在每个邮件旁边放置一个复选框,用户选中某个复选框,即表示用户要选中它旁边的邮件。另外,为了方便用户通过一次操作就选中所有的邮件,网页中通常都要放置一个全选复选框,当选中这个全选复选框时,所有的邮件复选框也随之被自动选中,当去掉全选复选框的选中状态时,所有的邮件复选框的选中状态也随之被去掉。要想通过单击图8.5中的“全选”复选框来一次操作就选中所有的邮件,显然需要用一段JavaScript代码来实现。由于邮箱中的邮件数目是 ...
function getSelectValue(){               var key = document.getElementsByName("name")[0].value;             var jikantaiValue = document.getElementsByName("name")[0][key].innerText;          }
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 1.Calendar 转化 String //获取当前时间的具体情况,如年,月,日,week,date,分,秒等         Calendar calendat = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String dateStr = sdf.format(calendar.g ...
JSP数据和JavaScirpt数据交互使用问题的一种解决方法 对于WEB程序来说,前端(JavaScript)和后端(JSP/Servlet)是没法共用数据的,只能是后端程序(JSP)把数据输出,生成页面到前端,这时候生成的页面中的JavaScript代码才有可能得到所谓jsp的数据。同样的,只有把JavaScript里的数据提交给后端JSP代码,JSP程序中才能得到JavaScript的数据。 那如何实现在页面的JavaScript中使用jsp中的数据或是在jsp中使用页面的JavaScript数据呢? 一、页面中的JavaScript的数据如何提交给后台的jsp程序 ① 可以将 ...
原文地址:Oracle row_number() over()解析函数高效实现分页 create table T_NEWS (   ID      NUMBER,   N_TYPE  VARCHAR2(20),   N_TITLE VARCHAR2(30),   N_COUNT NUMBER ) ; prompt Disabling triggers for T_NEWS... alter table T_NEWS disable all triggers; prompt Loading T_NEWS... insert into T_NEWS (ID, N_TYPE, N_TITLE, N_C ...
row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)。 与rownum的区别在于:使用rownum进行排序的时候是先对结果集加入伪劣rownum然后再进行排序,而此函数在包含排序从句后是先排序再计算行号码。 row_number()和rownum差不多,功能更强一点(可以在各个分组内从1开始排序)。 rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内) dense_rank()也是连续排序,有两个第二名时 ...
Global site tag (gtag.js) - Google Analytics