- 博客(58)
- 资源 (1)
- 收藏
- 关注
原创 给自己整理一下
忙了一些时间,弄得自己晕头转向的,该是时候,给自己整理一下。 先定一下以后的路:目前定的学习目标:每个月了解一种新技术,每三个月熟悉其中一种新技术。…… ================================再理一下自己的技术:现在工作需要,比较熟悉:MySQLHibernateSEAMJSFHTML+CSSJavaScript
2009-05-17 23:49:00
778
原创 有关数据库查询时,检索词末尾带有空格
今天发现一个奇怪的问题,在一个varchar(255)的列中,通过where…… =……进行查询时,无论查询词后面添加多少个空格,都一样可以匹配。这个问题吓了我一跳,如果玩家昵称后面带有空格,则会引起玩家查询混乱。如a =a,返回结果是相等查了一下,原来SQL检索里,=比较时,会把两个字符串补空格为一样长度,再做比较,所以后面带有空格,则会引起这些问题。奇怪的SQL规范!
2009-02-11 18:38:00
3134
原创 MySQL使用技巧心得[转]
MySQL使用技巧心得用mysql内置函数转换ip地址和数字利用两个内置函数inet_aton:将ip地址转换成数字型inet_ntoa:将数字型转换成ip地址 充分利用mysql内置的format函数尤其是在处理字符格式的时候,例如将12345转换成12,345这样的,只要用:format(12345,0)即可,如果用format(12345,2)则显示的是12,345.00了... 利用m
2009-01-19 20:31:00
970
原创 Hibernate的配置文件中用户和密码的加密
hibernate.cfg.xml中,用户和密码是明文存放的,存放某些安全问题,想了一个办法加密些用户和密码的信息。 首先创建一个连接供应器,配置文件里的参数解释都是此类负责,所以,只要在此类中进行密文解密即可。public class CustomDriverManagerConnectionProvider extends Provider {
2008-10-23 23:34:00
8447
原创 如何加强团队的战斗力,提高开发人员的素质。粗略的总结几个点
如何加强团队的战斗力,提高开发人员的素质。粗略的总结几个点: 1、写设计文档:设计文档,并不只是给为了阅读,同时也是整理思路的一个要点。尽量把需求问题想清楚,推后写代码的时间,能让代码更完善,更少修改。根据敏捷开发的思路,文档是要尽量压缩,所以把设计思路扫描清楚,并带上些流程图,能让其他人看懂就行,我比较推荐需求文档、设计文档、测试文档 2、写测试用例:严重推荐测试驱动开发。先写
2008-10-23 21:05:00
1988
原创 MySQL的一些注意事项
1、表名包含union字符串,用Mysql Query Browser 就不能直接点击打开表了,主要是union也算是MySQL的关键字:错误:select * from my_unions; (包含union就不能正确显示结构)正确:select * from `my_unions`; (`,左上角1键左边那个键)2、表内字段,不能使用关键字,如"read"
2008-07-08 15:07:00
662
原创 JAVA层次结构开发
JAVA层次结构开发 一、包的层次结构清晰例如包的结构如下:Com.mfinder.search.promotion 二、包的层次结构要清晰1、 ACTION表示层。用来做一个控制器,不出现业务逻辑,只是把前台的参数传到后台的SERVICE业务逻辑层去,逻辑由后台去做,实现MVC的分层2、 SERVICE业务逻辑层。对外提供服务的业务层,往往会调度若干DAO类完
2008-06-20 01:27:00
2282
转载 Mysql忘记密码后的终级办法
前言:最近又重新用了几个不常用的Mysql,结果因为记录不是很完整,最高管理的账号密码不记得了,但里面的数据又比较重要不想重新装。正好一个Linux下一个Windows下。让我碰全了。在网上,我查了下资料,有些啰嗦不简洁,有些简单无解释。以下介绍两个系统平台下的解决办法。
2008-06-17 14:14:00
568
转载 mysql恢复时二进制数据太大的异常
使用mysql做数据库还原的时候,由于有些数据很大,会出现这样的错误:The MySQL Server returned this Error:MySQL Error Nr.2006-MySQL server has gone away。我的一个150mb的备份还原的时候就出现了这错误。解决的方法就是找到mysql安装目录,找到my.ini文件,在文件的最后添加:max_allowed_packe
2008-06-05 12:07:00
603
原创 mysql恢复时二进制数据太大的异常
使用mysql做数据库还原的时候,由于有些数据很大,会出现这样的错误:The MySQL Server returned this Error:MySQL Error Nr.2006-MySQL server has gone away。我的一个150mb的备份还原的时候就出现了这错误。解决的方法就是找到mysql安装目录,找到my.ini文件,在文件的最后添加:max_allowed_packe
2008-06-05 12:06:00
807
转载 Apache MINA 应用进阶
作者:终南 li.zhongnan@hotmail.com> 1。MINA 框架简介下图为本人根据对MINA的简要理解,所画出来的框架简图:当客户首次访问采用MINA编写的程序时,IoAcceptor作为线程运行,负责接受来自客户的请求。当有客户请求连接时,创建一个Session,该Session与IoProcessor、SocketChannel以及IOS
2008-05-29 02:39:00
935
转载 Apache MINA 从1.x到2.x的一些改变
在Apache MINA 2.x中提供了新的API,并且有一部分不能向前兼容,这主要是一些处理复杂的部分,这里只介绍一下不兼容的内容,因为大部分还是兼容的。1 ThreadModel已经被移除ThreadModel最初是为了简化应用预定义的线程模型到IoService的处理的。然而,配置线程模型因为简单而引入很多构造来,这样其产生的混乱多于其易用性了,所以移除。2 IoService配
2008-05-29 02:34:00
1338
转载 Apache Mina 与 Openfire 不得不说的故事
关注 Apache Mina 已经有些时日了,也用 Mina 做了不少实验,尤其喜欢其简洁优雅的接口以及对 Spring 和 JMX 的良好集成。简而言之, Mina 是一个高性能的 Java 异步网络通讯框架。当前已有多个开源项目使用 Mina 构建底层 I/O 设施,或是正将底层 I/O 设施转用 Mina 实现。对于后者,据传多半会有大幅的性能提升,比较典型的一个例子是开源 XMPP 服务器
2008-05-29 02:30:00
1467
转载 Apache MINA 项目介绍
Apache MINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可靠性的网络应用程序。它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步API。 Apache MINA 也称为: ● NIO 框架库 ● 客户端服务器框架库 ● 一个网络套接字库 MINA虽然简单但是仍然提供了全功能的网络应用程序框架: ● 为不同的传输
2008-05-29 02:29:00
2019
转载 grizzly精要
NIO的框架玩的不少,mina, jproactor, 不久前也耍了耍Grizzly. Grizzly的主开发是Jean-Francois Arcand, 挺厉害的. 从此人blog中可见一斑. 以下是其的blog链接: http://weblogs.java.net/blog/jfarcand/archive/2005/06/grizzly_an_http.html Grizzlly grizz
2008-05-29 02:26:00
3760
5
转载 高性能的HTTP引擎—— Grizzly(二) Grizzly简介
Grizzly简介 正如前文所说,用Java技术来编写一个扩展性能很高的服务器软件是件很困难的事情。Java虚拟机的线程管理机制使得纯Java写的HTTP引擎很难响应成千上万的并发用户。正如Tomcat一样,在并发用户数不是很高的情况下能够获得很高的吞吐量,但是在高并发的情况下性能下降很快,变得不太稳定。 在JDK 1.4推出NIO之后,有很多基于NIO的框架出现,利用NIO的新特性,来编写高性能
2008-05-29 02:17:00
3283
转载 Grizzly与MINA比较
在《程序员》最新一期有个专题介绍java开源nio框架,其中谈到了mina和grizzly。mina我还算比较熟悉,写过一些代码,也尝试去读过源码。而grizzly是第一次听说,这个项目是sun的一个开源nio框架,是2004年在GlassFish项目中诞生的,一开始是一个http web server,用于取代Tomcat的Coyote Connector和Sun WebServer,20
2008-05-29 02:14:00
4389
转载 Java通讯框架介绍
Java通讯框架介绍 Java通讯框架,有时也被称为网络服务器,其实就是封装IO操作,并提供更高级的API接口。目前比较流行的框架就是:MINA、Cindy、QuickServer等。前段时间为了缩短开发时间,也在项目中加入了这些框架,从最开始使用QuickServer 1.4.7出现的报文接收不全异常;到用Cindy 2.4.4作为临时过渡,到最后确定使用MINA 1.0.1,也经历了一个艰辛而
2008-05-29 02:01:00
9976
转载 NIO服务器框架(MINA、CXF、Mule、JBoss/Geronimo,Grizzly,Cindy)
作者:江南白衣,原文地址:http://blog.youkuaiyun.com/calvinxiu/archive/2007/04/28/1588852.aspx,版权所有,转载请保留。假如冬夜,一个旅人,要开发一个美好的Java后台服务器。所谓美好,就是要高性能,千万级的用户;高可靠性,failover虽死犹生;高扩展性,跟周围那帮Tuxedo,IBM MQ,WebService的邻居要好好打交道。这是个毫
2008-05-29 01:52:00
5815
原创 工作心态
人都喜欢存在感,喜欢被赞扬。如何令到员工和同事工作融合、有归属感、有激情?最简单的方法,就是让他有一个存在感,感觉到人们对其重视。简单的一些问候,一些工作的询问,对其工作表现的一些赞扬,就是一个“赞”字,也可以产生工作的动力。
2008-05-27 16:21:00
942
原创 在测试的过程中的效率
在测试的过程中,效率低下是一个重要问题,经常表现在: BUG重复发现重复提交 发现BUG,但描述信息不详细 存在不量的BUG不被发现 这主要是因为没有写测试用例,分工不详所造成。 没有写测试用例。每个人都自己乱点,碰运气式的测试。结果就是,潜在大量的BUG不被发现,小量的BUG被重复发现 测试人员没有范围。每个测试人员应该有自
2008-05-27 16:14:00
736
原创 jdbc的URL参数
参数名 取值 缺省user 数据库用户名 无 password 数据库用户口令 无 autoReconnect 当数据库连接丢失时是否自动连接,取值true/false false maxReconnects 如果autoReconnect为true,此参数为重试次数,缺省为3次 3 initialTimeout 如果autoReconnect为true,此参数为重新连接前等待的秒数 2 ma
2008-05-24 16:55:00
860
原创 一些测试想法
1、测试应该有测试用例,描述测试的环境,测试的过程,操作的方式,期待的结果如:用户登录测试指明测试的环境:如IE、FF;测试的过程:正常的用户能登录,非正常的用户不能登录,可以处理特殊字符的用户名称与密码;操作的方式与期待的结果: 使用存在的用户可以登录,登录后能显示用户信息(同时提供正确的用户名与密码); 非存在的用户不能登录,提示登录失败信息(同时提供
2008-05-24 14:19:00
780
转载 防火墙导致MySQL无法访问的问题解决案例
这是一个实际的案例,为国内某大IT公司提供支持的实录。/n 目录 [隐藏] 1 问题 2 排查 3 处理
2008-05-23 16:33:00
4635
原创 MySQL远程访问时,非常慢
服务器放在局域网内进行测试时,数据库的访问速度还是很快。但当服务器放到外网后,数据库的访问速度就变得非常慢。后来在网上发现解决方法,my.cnf里面添加[mysqld]skip-name-resolve 这样速度就快了!skip-name-resolve 选项就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。还有权限的问题
2008-05-23 16:31:00
4658
转载 Linux 账号与身份管理
账号管理: groupadd, groupdel, useradd, userdel, chsh, chfn, userconf, 密码管理与设定:passwd, 使用者身份切换:su, sudo, visudo, 使用者查询: id, finger, groups, 手动增加使用者: 一般使用者账号, 仅开放 POP (邮件)账号 本章习题练习 账号管理: 管理员的工作中,相当重要的一环就是『管
2008-05-21 22:59:00
3279
原创 Hibernate使用自己设定的应用层缓存时,一些优化操作
自己实现的应用层缓存,效率高,但提交更新时,都要把全部数据更新到数据库,很耗资源。改良如下:1、充分使用Hibernate的脏数据检查功能,这样只会更新被修改了的数据字段,大大减少提交到数据库的流量。在数据修改之前,从自己设计的缓存中PO重新关联到session里,把PO从脱管状转换为持久状,这样才能使用Hibernate的脏数据功能。语句为:session.lock(Object,LockM
2008-05-09 16:43:00
700
原创 Hibernate的Batch update returned unexpected row count from update错误
运行Hibernate时,有时会出现Batch update returned unexpected row count from update的异常。主要是因为处理的对象存在级联关系,如一对多、多对多。此时从数据库读取对象时,不加事务管理,有时就会抛出这个异常。解决的方法也很简单,在操作PO时加上事务,不论是读取还是保存更新
2008-05-09 16:31:00
1195
原创 使用hibernate时,数据库由MySQL转向使用其他数据库时的注意事项
原来设计时是使用MySQL,但为了兼容其他数据库,安装其他数据库进行测试。原来以为很简单,只要改改配置,换个jar就行了,实际操作才发现问题不少。SQL SERVER: 表名不能使用user 字符串字段的长度不能大于8000。@Column(length=8000) Oracle: 字段名称不能长于30字符 字段名称不能使用leve
2008-04-17 15:50:00
661
转载 Hibernate的二级缓存
与Session相对的是,SessionFactory也提供了相应的缓存机制。SessionFactory缓存可以依据功能和目的的不同而划分为内置缓存和外置缓存。 SessionFactory的内置缓存中存放了映射元数据和预定义SQL语句,映射元数据是映射文件中数据的副本,而预定义SQL语句是在Hibernate初始化阶段根据映射元数据推导出来的。SessionFac
2008-04-13 14:12:00
2523
转载 Hibernate性能优化1
本文依照HIBERNATE帮助文档,一些网络书籍及项目经验整理而成,只提供要点和思路,具体做法可以留言探讨,或是找一些更详细更有针对性的资料。 初用HIBERNATE的人也许都遇到过性能问题,实现同一功能,用HIBERNATE与用JDBC性能相差十几倍很正常,如果不及早调整,很可能影响整个项目的进度。 大体上,对于HIBERNATE性能调优的主要考虑点如下: ? 数据库设计调整
2008-04-13 11:44:00
739
2
转载 Java性能的优化(下)
黄伟峰三.优化JAVA程序设计和编码,提高JAVA程序性能的一些方法。 通过使用一些前面介绍过的辅助性工具来找到程序中的瓶颈,然后就可以对瓶颈部分的代码进行优化。一般有两种方案:即优化代码或更改设计方法。我们一般会选 择后者,因为不去调用以下代码要比调用一些优化的代码更能提高程序的性能。而一个设计良好的程序能够精简代码,从而提高性能。
2008-04-12 22:56:00
501
转载 Java性能的优化(上)
黄伟峰Java在九十年代中期出现以后,在赢得赞叹的同时,也引来了一些批评。赢得的赞叹主要是Java的跨平台的操作性,即所谓的”Write Once,Run Anywhere”.但由于Java的性能和运行效率同C相比,仍然有很大的差距,从而引来了很多的批评。 对于服务器端的应用程序,由于不大涉及到界面设计和程序的频繁重启,Java的性能
2008-04-12 22:54:00
510
原创 MySQL主从服务器复制同步设置
主从服务器的复制,是通过主服务器的二进制日志实现。 l 开始前的准备在设置前先保证主从数据表的结构一致、数据一致,开始同步前的主数据日志偏移量。n 同步前数据库的一致,可通过以下方法u 数据文件的拷贝。拷贝时,除了拷贝DB的目录,还要拷贝DB根目录下的ibdata1文件u 备份(mysqldump)恢复保持一致。n 日志偏移量可以从当前主数据的进行查询u Sh
2008-04-11 16:01:00
1003
原创 MySQL常用操作指令
l 文件备份,并开始新的增量备份mysqldump -uroot -p123 --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > backup_sunday_1_PM.sql l 刷新并输出日志mysqladmin -uroot -p123 flush
2008-04-11 16:00:00
768
原创 Hibernate的游离态与持久态转换
在Hibernate中,一个PO可能经过长时间的操作,session已过时关闭,此时PO已经是一个游离态的对象,这时要转换为持久战态,有以下几种方法:1、session.saveOrUpdate(object)。这语句会把游离态的PO转为持久态的PO并提交给数据库2、session.merge(object)。这语句会把游离态的PO转为持久态的PO,并进行合并操作。3、session.
2008-04-07 17:00:00
7568
原创 有点郁闷,工作认真倒得不到欣赏
我的工作日志写得比较认真。但今早听到一个LEADER招呼其他同事要记得每天写工作日志,说到日志随便写写,几句话就行了,Bany那样写得这么详细就没有必要。虽然不是对我说,但听者有意,我听到耳里就不是滋味。那有这样的LEADER,让员工不需要认真工作,把认真工作的人积极性都打沉。作为一个领导者,就应该想法设法让员工认真工作,不应该对认真的人进行捣毁。工作日志是对员工的工作情况、工作态度的掌
2008-04-07 13:30:00
739
原创 数据库操作注意事项
非必要就不要使用事务处理。事务的使用更简化操作,但使用非事务的提交会获得更快的速度,与经过优化调整的最快的事务性表相比,它的速度快3~5倍。使用事务还需要更多的CPU和内存资源!外键与表关联的使用,可以增加安全性,但在非必要的情况下还是少用,使用应用程序级别的外键关联可以得到更好的性能。因为外键是数据库服务器为执行必要检查而需的额外开销为代价的。也会增大备份与恢复的难度。
2008-04-06 23:30:00
906
原创 java里,enum对象的反射创建
Java 的 enum 是 singleton class (只能有一个 instance)。Java 通过编译器和 JVM 联手来防止enum 产生超过一个class:不能利用 new、clone()、de-serialization、以及 Reflection API 来产生enum 的 instance。 所以想通过反射来创建枚举型对象则需要其他途径:举个例子:public
2008-01-26 20:13:00
15224
原创 Java单例注意事项
单例,顾名思义是一个类只能有一个实例对象。跟普通类有所不同: 必须有一个或以上的private构造函数,不能有public的构造函数。这样才能保证不能在外面通过new生成一个对象。 实例对象的建立是在类内部建立,内部实例对象应该是静态的(static)。 所以应该有一个获取实例对象的公开(public)方法(如getInstance()),并保证实例对象不重复
2007-12-19 11:41:00
864
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人