
开发小记
zengshaotao
大道至简,未来可期
展开
-
环境注意事项
eclipse,很好的一个ide工具,基于java环境的工具,所以电脑里不能在只有eclipse的情况下使用,因为系统或者用户变量里找不到jdk的安装路径,所以要想使用eclipse,就必须先安装jdk,然后配置path变量。要想使用plsql,就必须使用oracle的客户端,因为需要配置监听文件里数据库的sid。当然有些工具可以充当oracle的客户端角色,也即存在监听文件的配置。...2013-03-16 17:17:36 · 142 阅读 · 0 评论 -
hibernate主键策略
对于主键,默认是不为空的。当使用数据库的主键生成策略时,会涉及到并发的问题,还要去维护单独的内容,效率上不一定最好,特别当更改的操作比较频繁的时候。而使用uuid,是直接生成的,不用同步,效率快,并且相同的几率足够小。对于hibernate的生成文件,当属性名和数据库关键相同时,需要使用column属性来改变实体类映射的表的字段名称。hibernate基本映射实体类---表...原创 2013-03-17 20:07:06 · 86 阅读 · 0 评论 -
hibernate多对一关联映射配置
多对一关联映射。多的一端会作为外键参照一的一端。在多的一端映射文件里要加入many-to-one标签。用户,属于多的一端。组,属于一的一端。public class Many2OneTest extends TestCase { public void testSave1() { Session session = null; try { session = H...原创 2013-03-17 20:28:10 · 89 阅读 · 0 评论 -
hibernate
save的时候会根据主键的生成策略,生成sql语句,如果是uuid,即是hibernate的,则不会生成。而使用数据库的自增方式时就会生成sql。对于数据库的事务隔离级别,不可重复读是针对同一条记录。而幻读是针对一张表,即针对的表对象的粒度不一致...原创 2013-03-18 21:50:05 · 74 阅读 · 0 评论 -
自动扫描配置
对于一些映射配置文件,可能会因为业务需求功能的变化而发生增减变化,这个时候可能会不断地修改总配置文件,多个人同时修改,就容易发生冲突,这个时候就需要我们很好的利用spring或者相关的第三方jar提供的功能来更好的管理我们的配置文件,比如myBatis提供的映射文件自动侦测功能,就比较人性化,只要指定约定的目录即可。对于hibernate的映射文件和vo,以及annotation注解的配置生效路径...2013-03-21 09:35:01 · 120 阅读 · 0 评论 -
架构实例
com.cpic.a2.**.vo org.hibernate.dialect.Oracle10gDialect true 0 tr...原创 2013-03-21 23:03:29 · 167 阅读 · 0 评论 -
spring batch
...原创 2013-03-21 23:07:47 · 141 阅读 · 0 评论 -
动态包含其他工程
工程启动时报classNotFunding的错误,具体的类也可以看到。但是有个问题,就是这个VO在本身工程里进行了定义,在引入的工程里也进行了定义,名字一样,只是路径不同。于是采用了最土的办法,对引入的工程(全是一些VO)进行打包,然后放入到当前工程,启动就ok了。可是后面的功能又有问题,报个VO没有Mapped,估计是当前工程采用了hibernate对包的Vo采用了自动侦测的功能,导入有些VO...2013-03-26 15:05:00 · 106 阅读 · 0 评论 -
tomcat插件启动服务
对一个dynamic工程,一般都是手动添加服务器,然后进行开发。有时候也可以利用eclipse的tomcat插件,使用起来还是挺方便的,只是配置的时候需要注意一些项目的配置,否则tomcat插件找不见运行时需要的classes文件等,导致系统无法运行。 配置也简单,右键工程----properties----tomcat,弹出如下图: 这里需要勾选 is a tomcat pro...2013-03-27 16:59:51 · 182 阅读 · 0 评论 -
jqGrid,JQuery
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-t2013-04-07 10:18:52 · 144 阅读 · 0 评论 -
提取公共内容
对于一个良好的系统,界面一般都会用到统一的风格。如此,客户体验也肯定不错,给人一种有始有终的感觉。在开发上,也就要求技术上具有很大程度上的统一口径,利于开发,提高了生产力。后期维护时也能很明显感觉到抽取公共模块功能所带来的极大便利性。可能刚开始需要一定的人力投入,影响一定的项目进度,但是这终归不能成为没有目标导向的理由。在web前端,因为页面效果相似,所以引入的插件脚本或者库文件大同小异,...2012-11-07 10:09:06 · 92 阅读 · 0 评论 -
跳出标签循环,找相同
package t11;import java.util.ArrayList;import java.util.List; 对于多重循环,break只能跳出最里层的要跳出指定层,需要指定标签public class FindSame { public static void main(String args[]){ List list = new ArrayList()...2012-11-11 14:01:03 · 84 阅读 · 0 评论 -
页面错误提示
为了给予用户更好的体验,当用户操作出现问题时应该给予最好理解的提示,而不是一堆只有开发人员才能看懂的信息。一般见到的,都是页面上的提示。当然后台如果出问题,也可以将错误进行捕获,然后由开发人员进行翻译,做最终的显示信息处理。 这里我们可以使用request.setAttribute()的形式,设置错误信息,再在前台页面初始化的时候获得设置的值,然后通过脚本取得,再通过判断进行最终显示...2012-11-11 15:36:01 · 116 阅读 · 0 评论 -
properties里的sql过长
代码里,某个功能用到的sql定义在了properties文件里,可是结果却很奇怪,sql是正确的,但是有些能读取,有些却不能读到。于是把不能读到的sql写在了程序里,程序正常运行。后来才知道:定义的sql过长。...2012-11-15 10:17:53 · 256 阅读 · 0 评论 -
ping
PING (Packet Internet Grope),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP回声清求消息给目的地并报告是否收到所希望的ICMP回声应答。 它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标...原创 2013-04-24 21:50:57 · 146 阅读 · 0 评论 -
eclipse弹框设置
由于设置不好,在eclipse里编辑jsp页面时经常弹出要求输入上网代理的输入框,这个时候需要除去校验的网络设置,因为校验是要输入网络的首先在eclipse 的菜单栏 选择window菜单下的preferences 选择General 下面的NetworkConnections 将ActiveProvider 改为Direct即可...2013-04-29 14:45:12 · 909 阅读 · 0 评论 -
web数据收集与修改显示
我们知道,很多框架可以很好地连接前台数据与后台的实体bean,做到自动收集数据的功能。当页面数据发生变化时,收集数据的代码要发生变化,于是有了模型驱动的设计。通过模型驱动,页面变化时,只需在模型实体bean里添加对应的属性即可,后台的操作几乎没有变化。对于修改操作,数据的显示也不用作很大修改,在开发上是能带来一定的效率的,而且也不容易出错,对后期的维护还是有很好的帮助。 对于JQuery,...2012-11-22 20:13:14 · 130 阅读 · 0 评论 -
jvm参数
开发中,我们一般都会要用到一些第三方工具,并且之后还会不断的去人为的修改。对于hibernate,有一款不错的根据数据库表生成vo的工具。只是有个问题,不支持基本的类型映射,比如int double等,这样在启动的时候jvm虚拟机是会报错的。 异常信息大致如下: a fatal error has been detected by the java Runtime Envirom...2012-11-23 12:21:31 · 88 阅读 · 0 评论 -
复制引发的字符编码问题
复制内容,我们经常遇到,估计也很少出问题。特殊情况下就需要注意: 从word里拷贝文本内容,里面包括了一个“—”横线,拷到html页面(gb2312)时发生编码不一致的问题,无法保存,当时没多看错误信息,直接save as utf-8,最终发布到apache服务器时,页面无法展示。后来再次重现问题时,看到了最后一个选择,“找到第一个无法识别的字符”,然后保存,据此找出所有与当前页面不...2013-05-13 17:09:27 · 486 阅读 · 0 评论 -
表单参数乱码
表单默认的提交方式是get。提交请求时如果提交的参数含有英文字符,能正确显示;如果提交中文时就会出现乱码。 产生原因:Tomcat下面总是会把GET/POST过来的reqest.parameters以ISO8859-1来解码,但中文系统下的浏览器的缺省方式是以UTF-8提交发送请求的,而UTF-8、GB2312和iso8859-1的编码方式不一样,故导致取到的表单数据为不能识别的乱码。 ...原创 2013-05-17 15:09:50 · 181 阅读 · 0 评论 -
native2ascii 文件转换
cmd默认是到C。。。。。 直接输入 d:,回到D盘,然后。。。。 D:\project\ent\spdb-netbank-ent\NewJavaSource\config\i18n\ascii>native2ascii -encoding gb2312 CURRENCY.ascii > ../CURRENCY_zh_CN.properties...2013-05-17 15:33:00 · 107 阅读 · 0 评论 -
excel 空列
int cols = row.getLastCellNum();该句获得excel文档中一行所有的行,需要说明的是,当一行中有空字段且不在末尾时,该列也算作一列,所以对于不为空的校验需要再次进行。通过cell!=null 是最保险的形式。 cell.getCellType 得到单元格内容的格式 XSSFCell.CELL_TYPE_NUMBER,这里是数字类型的 对于其他类...2012-12-05 16:28:01 · 225 阅读 · 0 评论 -
jquery与dom对象转换
var domObj= document.getElementById("id"); var jqueryObj= $(domObj); jqueryObj.get(0)-->就转换为了dom对象 需要注意的是,二者之间的方法不能通用。原创 2012-12-06 15:59:58 · 96 阅读 · 0 评论 -
format金额
相信很多人在开发中都有遇到字符格式化的需求,这里只做简单的提示: 如果是0,那么如下语句显示的是0.00<fmt:formatNumber value="${row1.DebitAmount}" pattern="###,##0.00"/> 如下语句显示的是0,和其他保留2位小数的格式不一致。<fmt:formatNumber value="${row1...2013-06-03 14:13:52 · 229 阅读 · 0 评论 -
开发常用
$(".selectL li a.sbg").attr("class",function(index,oclass){}),其中index是当前对象在获得的对象集合中的索引,oclass是当前对象原来的class属性值 window.parent.frames["topFrame"].location.reload(); 是在frameset集合里,各个frame之间的数据有联系才需要刷新...2012-12-18 22:20:42 · 114 阅读 · 0 评论 -
开发小记
<h3><span id="redirectClue">3</span>秒后自动跳转到XXX页面......</h3> <script type="text/javascript"> var secs = 3; var time; function countDow2012-12-18 22:25:17 · 143 阅读 · 0 评论 -
JQuery监听回车键
$(document).keydown(function(enent){ if(event.keyCode==13){ // do something } });2012-12-21 16:16:48 · 149 阅读 · 0 评论 -
submit多次提交
为了美化表单,很多情况下都会把提交按钮改成用一个图片来代替,但是经常会出现二次提交的问题。因为。“<input type="image">”其实和“<input type="SUBMIT">”起到的作用是相同的,单击就会执行submit()操作。要解决这样的问题,一般都是将提交按钮的背景图片用CSS来填充,而不是用input type=image的标签。当然用<...2013-06-07 15:48:43 · 399 阅读 · 0 评论 -
文件分隔符
static char fileDelimitor = System.getProperty("file.separator").charAt(0);原创 2013-06-09 17:08:46 · 209 阅读 · 0 评论 -
native2ascii 反转
开发中,为了国际化等相关原因,需要将资源文件里的中文翻译成ascii文件,这个时候java安装目录下native2ascii命令就比较有用。对于ascii显示成中文,也是使用该命令,不过需要加reverse参数,具体参加如下: 中文转换为 ASCII 编码(文件形式) 首先,在当前目录下新建chinese.txt文件 然后进入输入命令: native2ascii -e...2013-06-13 15:10:49 · 214 阅读 · 0 评论 -
反编译工具jad
有时候调试,需要跟踪或者查看源码,这个时候反编译工具很重要。而eclipse是一个很强大的中间平台,很容易就可以集成这一工具:Window->Preferences->Java->JadClipse. 1、Path to decompiler,这里设置反编译工具jad的路径,如D:\Java\jre1.5.0_07\bin\jad.exe. 2、Directory for ...2013-06-14 09:26:23 · 104 阅读 · 0 评论 -
数据备份
电脑出奇的慢,然后开发又要经常搜索资料,所以果断找行政换电脑。可是很多数据需要备份,而且公司电脑有一个通病,就是设置了什么安全策略,不让插优盘,没办法,只能通过网络的基本功能进行数据备份了,具体: 1.用网线连接两台电脑 2.设置ip,192.168.0.2,192.168.0.3,子网掩码:255.255.255.0 3.然后将将要备份的数据设置为共享 4....2012-12-25 13:23:43 · 129 阅读 · 0 评论 -
jquery写在$()中
$(function(){ var $ulObjArr = $("div.ulid");//注意div.ulid 之间不能有空格 alert($ulObjArr.length);}); 假定页面有class为ulid的div时,就可以获得 如果 var $ulObjArr = $("div.ulid"); alert($ulObjArr.length);只是放在了简单的scri...2012-12-28 14:30:58 · 166 阅读 · 0 评论 -
Myeclipse6.0破解
安装好Myeclipse这个强大的IDE之后,你可以大显身手,唯一美中不足的是,需要收费,所以时而不时的注册码输入让你很反感。当然你可以忽略,因为30天的试用期会让你解脱。如此强大的功能放在一边,谁都不甘心,所以破解很必要。之前是一个同学给破解生成的code,所以找不到人的时候,你会觉得自己破解才是王道。于是,百度了一下破解方法,然后按部就班的,得到了破解的key。整个过程其实很简单,只...2013-06-24 21:51:03 · 293 阅读 · 0 评论 -
web.xml文件配置参数
在web.xml文件里配置listener信息,<param-name>contextConfigLocation</param-name>配置相应的bean信息配置时需要注意相应的配置文件的顺序。值得一提的是,数据库以及事务的配置信息: 先是数据库的连接信息:驱动,URL,用户,密码对应的class:org.springframework.jdbc....原创 2013-06-24 21:52:22 · 266 阅读 · 0 评论 -
ActiveXObject loadXML
<html><head></head><body onload="loadFun()"><div id="myDiv"></div><script language="javascript"><!-- function loadFun(原创 2013-06-25 17:34:27 · 576 阅读 · 0 评论 -
智能多选
$(function(){ //全选或者全不选 $("#checkAll").click(function(){ //寻找name以nameNo开头的所有input控件 $("input[name^=nameNo]").attr("checked",this.checked); }); }) //获得选中的记录(可能是多条) var checkedObj=$(...2013-06-28 13:54:37 · 97 阅读 · 0 评论 -
dialogArguments
开发中经常遇到这样的问题:需要在一个页面里打开另外的页面(模态,或者非模态)。见过很多这样的例子,另外还有页面间需要传递参数的,大部分都是采用地址栏参数拼接的形式。这很显然是一个不好的编程习惯,每次需要增加参数的时候都要面对那段可恶的参数拼接,经常出错。特别是最后一个参数如果是空串的话,容易产生下标越界的错误(因为split后,数组根本不会动态分配存储空间),所以一般需要增加额外的保护变量...原创 2013-06-28 16:55:45 · 148 阅读 · 0 评论 -
jquery对象
//var cc = $("input[type=radio][name=draft]").val();//如果有多个默认输出第一个 var cc = $("input[type=radio][name=draft]"); cc.each(function(){ alert($(this).val());//this外面的括号不能除去,其作用是将当前对象转化为JQuery对象//虽然cc...2013-07-01 15:37:09 · 96 阅读 · 0 评论 -
JQuery获取表单元素
$("input:text:disabled").val("不能输入"); $("input:text:enabled").val("能输入"); function checkboxclick(){ }$(":checkbox").unbind("click",checkboxclick);var vv=''; $(":checkbox:checked")原创 2013-07-01 16:30:58 · 117 阅读 · 0 评论