- 浏览: 461997 次
- 性别:
- 来自: 北京
最新评论
-
xbyy123:
如果底层原理是这样的话,那么太谢谢了,瞬间明白了spring事 ...
Spring事务原理 -
欢乐逗佛:
盗取一时爽,全家火葬场
java工厂模式三种 -
ananeye:
不错不错不错不错
spring 加载过程 -
ananeye:
写的浅显易懂,不错,赞一个。
Spring事务原理 -
18289753290:
我们平时好像不是这么写的。直接就是service了,servi ...
Spring事务原理
文章列表
web.xml加载顺序
- 博客分类:
- struts
web.xml加载顺序
应用服务器启动时web.xml加载过程,至于这些节点在xml文件中的前后顺序没有关系,不过有些应用服务器,我曾碰到过的 websphere就严格要求web.xml的节点顺序,否则部署不成功,所以还是赞成按照web.xml标准格式写
content-param --> listener --> filter --> servlet
1、启动WEB项目的时候,应用服务器会去读它的配置文件web.xml.读两个节点:<listener></listener> 和 <context-param></context-p ...
今天同事问了我一个SQL的问题,关于SQL Server内部存储结构的,我觉得挺有意思,所以写下这篇博客讨论并归纳了一下。问题是这样的:
首先我们创建两张表,一张表的列长度是4039字节,另一张表的长度是4040字节,他们就只有一个字节的差距,比如以下创建表的SQL:
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->CREATE TABLE tb4039(c1INT IDENTITY,c2 char(4035)no ...
switch-case用法
- 博客分类:
- 开发语言基础
/**
* switch() 中 是常量
* 每个case语句 没有break结束时, switch() 中 和 case 匹配相等后,后面的case语句都执行
* case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即"只是开始执行处的入口标号".因此,
* 一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行,而且执行完一个case后面的语句后,若没遇到break语句,
* 就自动进入下一个case继续执行,而不在判断是否与之匹配,
* 直到遇到break语句才停止执行,退出break语句,相当于逻辑或的判 ...
1.下载文件
1)服务器端subversion, svn-1.4.4-setup.exe
2)SVN客户端配置时使用客户端TortoiseSVN,我选择TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi
2.服务器和客户端安装
3.建立版本库(Repository)
运行Subversion服务器需要首先要建立一个版本库 ...
myelipse 提示键设置
- 博客分类:
- 开发工具
快捷建设置有问题,你重新设置一下在 window --> Perferences--> General--> keys
将Content Assist快捷键设置成Alt + /就可以了
注意:alt+/不要冲突, when选择: In Dialogs and Windowsw
在网站运行在apache和tomcat的负载均衡之后,总是出现一些奇怪的问题。开始有一些Duplicate entry的错误,但没在意。
今天又看了程序运行的错误信息,发现几乎都是Duplicate entry错误,集中出现在insert数据库的时候,insert user,insert message。看了Message类的主键生成是increment类型,看了看Hibernate的源代码,发现对应increment主键生成器的org.hibernate.id.IncrementGenerator 类里面,是使用select max( columnName ) from tabl ...
大型网站面临的问题二
- 博客分类:
- 海量数据存储方案
大型网站面临的问题:
海量数据处理
大型网站每天的数据量可能上百万,甚至上千万或更多。如果存在设计不好的多对多关系,在前期可能没有任何问题,但是随着用户增长,数据量会以几何级数增加。此时,对于一个表的sele ...
大型网站数据库优化
千万人同时访问的网站,一般是有很多个数据库同时工作,说明白一点就是数据库集群和并发控制,这样的网站实时性也是相对的。这些网站都有一些共同的特点:数据量大,在线人数多,并发请求多,pageview高,响应速度快。总结了一下各个大网站的架构,主要提高效率及稳定性的几个地方包括:
1、程序
程序开发是一方面,系统架构设计(硬件+网络+软件)是另一方面。
软件架构方面,做网站首先需要很多web服务器存储静态资源,比如图片、视频、静态页等,千万不要把静态资源和应用服务器放在一起。
一个好的程序员写出来的程序会非常简洁、性能很好,一个初级程序员可能会犯很多低级错误,这也是影响网站性 ...
关于映射文件的问题下次再介绍,这次主要总结hibernate常用主键生成策略。
(1)increment
a)对主键值采取自动顺序增长的方式生成新的主键,值默认从1开始。
b)原理:在当前应用实例中维持一个变量,以保存当前最大值,之后每次需要生成主键值的时候将此值加1作为主键.不依赖于底层的数据库,因此所有的数据库都可以使用
c)缺点:通过increment的生成主键的原理可推断,此种主键生成策略不适用于集群、同一时段大量用户并发访问的系统,既当大量用户同一时间段同时进行插入操作的时候,可能存在取得相同的最大值然后再同时+1的情况,这个时候 ...
struts2重复提交原理
- 博客分类:
- java
相信都有表单提交的情况, 很多时候不希望出现重复提交原来的数据, 那么如何防止重复提交问题, 下面我是思考和一些参考整理的结果, 先看看其原理:
防止重复提交原理:
首先,在页面访问的时候server端产生一个标志位,其保存在session中,同时该标志位放到访问的页面的某个元素中(通常为隐藏域);
其次,在session存在的有效时间内,没有其它操作时其值保持不变,当提交表单到server端时,会判断client端提交过来的标志位和server端的标志位的值是否相等;
最后,判断标志位的值,如果相等,则执行自己期望的操作;如果不相等,则转向指定的页面;
这个原理 ...
Tomcat 乱码设置
- 博客分类:
- web服务器
第一,存文件必须以一种编码存;读文件也必须以一种编码读,如不特别设置,去系统默认的编码,中文windows为GBK编码。
从.java->.class过程是,先编写.java文件并按莫种编码方式保存,然后用javac方法编译此文件,注意如.java没按系统默认编码保存则要带encoding参数指明实际编码,否则出错,生成的.class文件存为系统默认编码。
从.jsp->.java->.class,先存为某种编码的.jsp文件,然后tomcat根据pageEncoding读取并转化为servlet存为系统默认编码,然后同上面.java->.class过程。
第二,I ...
一。报“无法解析指定的连接标识符”
64位win7下PL/SQL Developer 报“ORA-12154: TNS:无法解析指定的连接标识符”问题的一个解决办法
这个方法还真是非常简单,在你试过其它方法不行之后,在plsql.exe上右键属性,把兼容模式调整为xp sp2,重新运行即好了。
二。数据量特大时报“result set exceeds the maximum size;
”
解决办法: Alt+End
三。中文乱码
oracle 10g装上后,建了个表写入中文数据,发现通过工具DbVisualizer 6.5 写入/读取中文都正常,就sqlplu ...
先介绍一下127.0.0.1与localhost的区别
区别1:
localhost也叫local ,正确的解释是:本地服务器
127.0.0.1在windows等系统的正确解释是:本机地址(本机服务器)
他们的解析通过本机的host文件,windows自动将localhost解析为127.0.0.1
区别2:
lo ...
01.解决问题:TNS或者数据库不能登录。
02.最简单有效方法:使用oracle系统提供的工具 netca 配置(把原来的删除掉重新配置)
03.$netca
04.
05.俺仍有的疑问: 如何指定'listener.ora'存放的目录?不要默认目录($ORACLE_HOME/network/admin)
06.方法1: 在 '.profile' 中加入(例)
07.TNS_ADMIN=/f01/oracle11/app/oracle/product/8.0.6/network/admin
08.export TNS_ADMIN
09.
...
早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误,帮其解决后,发现很多人遇到过这样的问题,因此写着这里。
也许你没有遇到过,原因如下:
你oracle安装成功后,一直未停止数据库(即数据库是启动的),客户端配置成功后,应该一直不会有什么问题。
而一旦你和我同事一样,有时把Oracle安装在虚拟机中,而且Oracle安装完毕后,没在进行任何监听的配置,则虚拟机再启动,则就会出现ORA-12514的问题。如下图
TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法" name=im ...