自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(109)
  • 资源 (30)
  • 收藏
  • 关注

原创 程序员必修课--sql思维举重训练

写sql是程序员基本功课,找工作面试一般必有sql题,实际工作中对sql的需求更是千变万化,所以掌握好sql对于一个程序员来说是件非常重要的事情.本文通过一个简单易懂的关系(学生/课程/成绩关系)尽量构造出各种各样的需求来提高我们写sql的功底,其中有些sql还是有一些难度的,大多数sql我都给出了思考思路,希望本人N天的劳动成果对您有所帮助.    限于本人水平有限,有些地方的sql写的并不

2012-05-20 13:57:52 17945 82

原创 dubbo入门实例代码

首先看一下代码结构组织结构:(一)lk-dubbo-parent主要用于组织三个工程,只是pom文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation

2016-04-30 23:51:58 4444 12

原创 dubbo入门实例及性能测试

ubbo集群和非duboo(在同一jvm内运行)性能对比代码下载地址:http://download.csdn.net/detail/lk_blog/9507435使用实例测试注意事项:1.下载zookeeper  地址: http://zookeeper.apache.org/releases.html2.配置zookeeper, 解压zookeeper后,找到conf/

2016-04-30 23:36:49 4846 9

原创 maven部署ojdb14.jar到nexus仓库报错及解决方法

部署命令:mvn deploy:deploy-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=E:\ojdbc14.jar -Durl=http://101.200.158.126:8081/nexus/content/repositories/thirdp

2016-03-30 22:37:48 4575 8

原创 maven获取svn版本号并输出到MANIFEST.MF的两种方法

方法一: scm:svn:svn://127.0.0.1/src/trunk scm:svn:svn://101.200.158.126/src/trunk HEAD svn://127.0.0.1/src/trunk采用方法一需要在maven中配置,注意scm:svn:svn://...这里的scm:svn是指采用svn获取,第二个svn://是地址

2016-03-30 22:28:13 7436 13

原创 p6spy2.x配置为slf4j-log4j输出日志同时到控制台和文件

spy.properties配置:    appender=com.p6spy.engine.spy.appender.Slf4JLoggerlog4j.properties中配置如下:##p6spylog4j.logger.p6spy=info,spyConsole,spyFile#配置

2016-02-29 21:07:35 8710 7

原创 配置log4j日志动态加载(不重启服务)

方法一:使用spring提供的配置参考文章:http://www.tuicool.com/articles/nuUVZrhttp://blog.csdn.net/javaloveiphone/article/details/7994313此方法在spring4.x的版本中都可以使用,但在Spring 4.2.1中已经将其标记为过时了.如果使用spring4.2.1以

2016-02-01 14:32:30 11691 5

原创 查看在数据库中实际执行时的解析计划

现象:有一条sql在plsql中执行起来非常快47ms,但通过java程序执行的时候很慢,执行了87279ms ,通过执行计划看在plsql中执行命中索引消耗很少,在程序中执行的执行计划不知怎么得到.可以通过 select * from table(dbms_xplan.display_awr('45m6cx0g6dmwu'));这个命令获取在java程序执行时的解析计划.45

2016-01-31 20:54:34 3604 6

原创 hibernate不自动建表及报错信息记录

使用的jar及代码如下:dependency> groupId>javax.persistencegroupId> artifactId>persistence-apiartifactId>dependency>@GeneratedValue@Column(name = "id", length = 22)private String id;报错信息:Ca

2016-01-31 20:42:03 4084 3

原创 异常捕获和抛出你理解的到位吗,是否你也存在这样的错误?

在dao层的所有方法都用了try catch 拦截,在servic层又进行了try catch 拦截,spring配置在service层控制事务.这样的实现是错误的.

2015-12-30 23:31:36 4850 8

原创 属性文件读写工具类

属性文件读写是程序经常要配置的内容.从网上找一些属性文件读写的源码大多数是操作一个键值和读写所有键值的工具类封装.本文所提供的工具类在原读写的基础上支持了自动转换为实体类对象,这样的封装带来的好处: 1.更面向对象化, 属性文件和实体类对象无缝转化. 2.避免了定义键名书写字符串容易书写错误的风险. 3.扩展性好,使用简单.

2015-12-29 22:18:09 3695 7

原创 CentOs Linux服务器环境搭建记录

1.本地重装了vmware和新建了一个CentOs6.5的虚拟机,以前的虚拟机不知为什么不能访问了,怀疑是vmware出了问题,因为VMware Network Adapter VMnet1 和VMware Network Adapter VMnet8当时是没有流量的.2.使用winscp上传了jdk和tomcat.   3.安装jdk参考http://jingyan.

2015-11-29 10:43:42 3764 5

原创 仿百度文库实现方案

主要实现思路摘入如下:    将文档转换为PDF,然后将PDF转换为SWF,再通过Flexpaper在线显示文档.   转换常用Office文档为PDF格式,目前主要有三种方案:利用Jacob或者JCom调用MS Office或者WPS Office API,利用JODConverter调用OpenOffice.org服务,调用虚拟打印机转换文档为PDF。文档在线浏览本质上是将多种

2015-11-29 10:39:21 4159 5

原创 apache-cxf 使用整理

1.下载地址:http://cxf.apache.org/download.html2.命令含义:http://cxf.apache.org/docs/java-to-ws.html3.命令举例:java2wsdl -o -cp 其中的指的是*.java文件编译后的*.class文件所在的目录java2ws -wsdl -o he

2015-10-31 21:18:45 3912 7

原创 Jenkins搭建过程中遇到的问题整理记录

Jenkins使用进阶参考:http://www.cnblogs.com/zz0412/tag/jenkins/1. Jenkins默认的配置路径为:{user_dir}\.jenkins,修改为其他路径的方式:配置环境变量set JENKINS_HOME=D:\a_tools\Jenkins\jenkins_home2.邮箱配置时遇到的

2015-10-31 21:14:31 15052 6

原创 开发环境配置及优化

工欲善其事必先利其器,前几天帮同事解决问题,他修改代码后怎么都不是自己所要的效果,我判断是由于IE缓存问题,清除IE缓存后果然功能正常了.   我整理了一下开发常用的配置,时间仓促,整理的不全,欢迎大家补充.1.配置输入法 "中文时使用英文标点".    配置此项后以后在编写代码时就不用再因为,"引号",(括号)等全角半角而造成不必要的麻烦了.2.I

2015-09-30 23:23:41 3722 5

原创 监控网页内容,发现需要的内容后弹框和声音提醒

帮朋友的忙写了个小应用,他需要每隔一段时间自动访问一个网页,如果发现特定的内容就弹框提醒和声音提醒,一条消息已经提醒过了就不用再次提醒了,只有遇到新的才提醒。这是一个小功能,一会儿就搞完了,把里面的知识点简单梳理一下:1.定时访问网页:    (1)定时器jdk自带了,直接使用就行.    (2)访问网页抓取内容可以使用httpclient,这是比较常用的框架.

2015-09-30 22:12:35 7419 9

原创 RESTful调用报错status code=415 Unsupported Media Type

客户端使用RESTful调用时报status code=415 Unsupported Media Type.问题产生的原因可能在于客户端,也可能在于服务端.使用客户端做测试时注意设置Headers,以Firefox的插件RESTClient为例设置如下:排除客户端设置问题后,如果还是报错415,需要检查服务端设置,以wink为例:wink框架默认是不集

2015-08-30 22:07:43 66578 7

原创 javascript方法时间差值转为00:00:00格式

前台有时要求显示00:00:00格式的时间差值,简单记录一下,方便以后查找 function getUseTime(nowDate, startDate) { var hour = nowDate.getHours(); var min = nowDate.getMinutes(); var sec = ""; var showM

2015-08-30 21:45:45 5502 4

原创 /*+ BYPASS_UJVC */ 处理数据更新时不能更新问题

在使用implict update table 时,发现其中一个表一定要有唯一约束,否则会报错!但是oracle可以使用hints:/*+ BYPASS_UJVC*/ 屏蔽掉队唯一性的检查。update (select /*+ BYPASS_UJVC */ * from t_contract_template ct, (

2015-07-28 21:57:01 5353 4

原创 提高sql查询性能-使用instr函数替换like

在查询时经常使用like作为关键字进行模糊查询,在生产环境中由于数据量较大,使用like查询时比较慢,尝试了一些方法,最终发现使用oracle的instr函数可以显著提高查询的效率.关于数据量:SELECT count(1) FROM t_partner_role; --612565SELECT count(1) FROM T_VENDOR_REPOSITORY; 

2015-07-28 21:51:54 11675 9

原创 dll注册失败解决办法

公司项目中安装文档处理的插件时,报错如下:处理方法:cd \Windows\SysWOW64regsvr32 "C:\Program Files (x86)\talkweb\DocControl\TwDocCtrl.ocx"解释:\Windows\System32文件夹是存放64位dll的\Windows\SysWOW64 文件夹下存放的是32位dll

2015-06-30 22:43:18 26069 6

原创 Eclipse插件-PatternBox

设计模式的正确使用能为代码带来很大的灵活性.记住设计模式的应用场景比较容易,网上找到的多是类图,依葫芦画瓢能写出代码,但如果有代码生成工具来生成设计模式肯定比较好,现在介绍一款Eclipse插件-PatternBox是一个Java设计模式编辑器。它提供一个基于模板的代码生成器。这个基于XML的模板机制使得你能够定义自己的代码模板。PatternBox当前能够为16种GoF设计模式生成代码。

2015-06-30 22:27:00 2573 5

原创 一款工具助你减少java代码bug

场景:今天收到了一封邮件,生成环境出现了“/by zero”错误,这个错误足足经过两天的排查才找到了原因,能否在上线前就尽量规避一些错误呢?那个问题产生的原因如下:if(Math.abs(rowRecord.getBenefitmoney())==(Math.abs(rowRecord.getAmortmoney()==null?0d:rowRecord.getAmortm

2015-05-31 15:18:30 3466 8

原创 项目配置p6spy打印ibatis的完整sql

项目使用ibatis,开启了打印sql功能,可是打印到控制台的sql中带有? , 例如:select o.id,o.orgName,o.hrCode,o.hrpCode,o.displayName  from T_UAM_STAFF s  where s.hrStatus想要在数据库中执行该sql,需要知道sql的参数值,并手工改sql的? 为实际值,有时还要使用 '  ' 包裹字符串类的

2015-05-31 13:38:09 5001 6

原创 使用FileFilter过滤文件清理Maven仓库

本地的Maven仓库越来越大,打算清理一下SNAPSHOT文件,自己的工程可以把仓库从根路径开始直接删除,但还有一些特殊情况引用了第三方的SNAPSHOT文件,网上找了一下没有工具,只是文件过滤和删除,也没什么复杂的,干脆自己写几行代码实现了吧.以前的做法是使用File.list()方法获得所有文件,然后判断并删除,在写的过程中发现了File.list(FileFilter filter)接口

2015-04-30 21:12:15 2280 10

原创 错误总结:Access restriction: The type ** is not accessible due to restriction on required library

来到新公司,下载代码查看后发现有很多地方标红报错了.    仔细一看都是Access restriction: The type ** is not accessible due to restriction on required library类型的错误,这种错误的原因一般都是引用了jdk中非标准的类导致的.例如:import sun.misc.BASE64Decoder;和impor

2015-04-29 21:23:13 18109 8

原创 Jboss加载不到数据库驱动问题解决过程记录

错误日志:22:41:44,320 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 48) MSC000001: Failed to start service jboss.persistenceunit."itoo-exam-systemmanage-dictionary-ear.ear/itoo-exam-api

2015-03-13 23:27:21 11200 13

原创 多线程超时限制执行辅助类

在多线程开发中,经常会遇到在多线程中执行一段程序,如果N秒内执行完则返回结果,如果超出了N秒还没执行完则提示超时限制,以下是一个工具类,封装了超时逻辑。工具类采用了jdk5才加入的FutureTask,因此必须运行在jdk5及以上版本的jdk中,另外本工具类不是线程安全的,所以使用时请采用new的方式来使用。使用示例如下:package com.tgb.lk.demo.thread.t

2015-03-02 22:07:31 1180 4

原创 线程池多线程比较实例

本实例是一个比较多线程的一个小例子,testThreadPool1与testThreadPool2 比较了shutdown与shutdownNow的区别;testThreadPool3与testThreadPool4比较了匿名内部类直接new Callable,与先new Callable出来,放入到List中再执行的效率差别;testThreadPool4与testThreadPoo

2015-02-28 11:55:12 1331 5

原创 Tomcat打包时多项目共享jar和精确指定jar版本

在产品打包发布时一个tomcat中如果存在多个war,部署的一般方式是部署到%TOMCAT_HOME%/webapps目录下,目录结构遵循J2EE规范,把引用的jar放到%TOMCAT_HOME%/webapps/xxxxx.war/WEB-INF/lib下面即可。但是多个项目完全可能引用了相同的jar,如何使多项目共享这个jar呢?项目发布时经常由于jar冲突造成很多问题,如果使打出的包精确指定所需要的jar版本呢?如何不放到%TOMCAT_HOME%/webapps目录,而把war放到特定的位置如何加载

2015-02-27 18:11:36 6277 5

原创 IDEA 环境常用设置整理

1.修改为Eclipse快捷键File -> Settings -> Keymap => Keymaps改为 Eclipse copy2.显示行号:File -> Settings -> Keymap ->Editor ->General -> Appearance =>Show line numbers选中3.修改智能提示快捷键File -> Sett

2015-01-25 17:30:44 12906 42

原创 MyEclipse环境常用设置整理

1.修改编码Window->Preferences-> General ->Workspace ->Text file encoding 修改为UTF-8Window->Preferences->MyEclipse->Files and Editors -> JSP => Encoding 修改为 UTF-82.显示行号:   随意打开一个类文件,在左侧边框

2015-01-25 17:22:06 2344 4

原创 程序员必修改课之maven实用命令

总结一下我在工作中用的比较多的一些Maven命令.1. mvn clean 2.mvn package3.mvn dependency:tree4.mvn dependency:copy-dependencies5.mvn dependency:ananlyze

2014-12-30 08:15:34 2606 11

原创 jboss-eap-6.3集成OracleDS和MySqlDS配置

jboss-eap-6.3集成OracleDS和MySqlDS

2014-12-06 13:21:59 5530 10

原创 maven解决jar冲突调试步骤

错误日志:nested exception is java.lang.NoSuchMethodError: javassist.util.proxy.ProxyFactory.setUseCache(Z)V

2014-11-27 21:56:56 21845 8

转载 Java线程面试题 Top 50

本文由 ImportNew - 李 广 翻译自 javarevisited。欢迎加入Java小组。转载请参见文章末尾的要求。不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的

2014-08-25 08:24:32 2026 12

转载 Oracle SQL性能优化

(一)避免使用"*"替代所有的列

2014-08-09 22:16:31 1730 10

原创 应用程序不能完全结束的原因探秘及调试方法

把程序部署到Tomcat或WebLogic后,经常碰到结束程序时不能完全结束,某些线程还活着,必须手动强制关闭整个服务器才可以结束.但如果我们的应用服务器上部署了很多个重要应用,其中一个应用的启停应该不能影响其他应用才对.究竟是什么原因导致了我们的服务器不能关闭呢?估计很多人没有深入究过这个问题吧.先看看下面的例子吧:

2014-08-09 18:42:30 3013 5

转载 程序员的这一天:也许永远不会到来

转自:http://www.open-open.com/news/view/17aade8

2014-08-09 09:28:22 2058 20

dubbo入门实例及性能测试

dubbo集群和非duboo(在同一jvm内运行)性能对比

2016-04-30

监控网页内容,发现需要的内容后弹框和声音提醒实例

帮朋友的忙写了个小应用,他需要每隔一段时间自动访问一个网页,如果发现特定的内容就弹框提醒和声音提醒,一条消息已经提醒过了就不用再次提醒了,只有遇到新的才提醒。

2015-09-30

pattenbox-1.1.7

pattenbox-1.1.7 PatternBox是一个Java设计模式编辑器。它提供一个基于模板的代码生成器。这个基于XML的模板机制使得你能够定义自己的代码模板。PatternBox当前能够为16种GoF设计模式生成代码。

2015-06-30

jetty9.2.2.v20140723_documentation.chm 英文版

jetty9.2.2.v20140723_documentation.chm 英文版

2014-08-06

jetty-distribution-9.2.2.v20140723.zip

jetty-distribution-9.2.2.v20140723.zip

2014-08-06

基于模板的代码生成器LKGenerator1.1.0_x64

欢迎访问我的博客关注本代码生成器的最新动态: http://blog.csdn.net/lk_blog 代码生成器使用帮助:http://pan.baidu.com/s/1bnxOHGF 代码生成工具使用前置条件:系统安装JDK并配置JAVA_HOME环境变量。 功能: 一、数据库生成实体类. 1.配置 (1)本工具提供了3中连接数据库的方式,分别是:MySql、Oracle、SqlServer,在界面上给出连接示例,方便进行复制和修改(减少因错误配置连接方式而带来了不能链接数据库问题)。配置正确后即可正确读取出数据库中的相关表和表中字段。 (2)生成的代码路径可根据需要进行灵活配置,如果没有配置默认为:d:\.LKGenerator\dest-beans (3)提供了根据数据表生成代码的相关配置,可以配置去掉表前缀(如t_),去掉表后缀,去掉表名内容下划线(业界习惯表命名中用下划线区分单词),大写表名下划线后的第一个字母,去掉属性中下划线并大写其后第一个字母,这样可以使生成的代码更符合业界代码命名习惯,如,用户和角色的关联关系表常被命名为:t_user_role,表中字段有user_id和role_id,按上面的配置后生成的代码为UserRole.java,类中的属性为userId和roleId. 2.选择表 前置条件:本功能要求第一步配置数据库连接方式能正确连接到数据库。 本功能可列出所配置数据库的所有表,请选择所需生成代码的表后点击确认按钮(注:如果重新配置步骤1的数据库连接后需刷新列表)。 3.生成实体类代码 前置条件:步骤2中选择了需要生成代码的表。 本功能可根据步骤2中选择表进行实体Beans代码的生成,生成的代码默认包含AutoBean和AutoField的注解配置(AutoBean和AutoField注解非生成代码的必须项,如果配置了可以在生成代码时时为模版注入该配置,增强模版的扩展性)。 4.编译实体类 前置条件:系统安装JDK并配置JAVA_HOME环境变量 本功能可以对Java代码进行编译(注:本功能的使用不必要依赖步骤3中的代码,可对任何正确的java代码进行编译,如果代码中有引用第三方的jar,请将jar放置到d:\.LKGenerator\.lib文件夹下。) 5.导出数据到Excel 前置条件:执行第三步后已生成带注解的JavaBean. 本功能只要使用地三步的配置注解的JavaBean就能将数据表中的数据导出。 6.从Excel导入到DB 前置条件:执行第三步后已生成带注解的JavaBean. 本功能只要使用地三步的配置注解的JavaBean就能将Excel中的数据导入到数据表中。 7.生成数据表文档 前置条件:步骤2中选择了需要生成文档的表。 本功能可以根据步骤2中选择的表进行excel文档的生成。 8.清空Beans代码目录。 本功能可以清空生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。 9.打开Beans代码目录 本功能可以打开生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。 二、实体类根据模版生成最终代码. 功能简介:根据实体类代码结合模版生成最终代码,代码模版规范参考模版框架velocity的规范和样例。 实现思路:加载实体类的class文件到classLoader中,读取实体类的属性和注解,将类名、属性字段名、注解三者与模版进行结合生成最终的代码。 1.配置 (1)配置模版路径,这个配置可以配置用于生成代码的velocity模版路径,生成的代码将模版中的特定符号见“模版中可使用的变量”中的描述。 (2)配置生成代码的固定文件路径,这个配置中的文件将原样拷贝到最终生成的代码中,主要适用于非文本文件如*.jpg *.jar等文件。 (3)配置引用jar路径,这个jar路径的配置是需要加载的class需要引用的jar. (4)注入模版的Bean(*.class)路径,这个路径下需放置实体Bean的class文件。 (5)配置生成代码的根路径,这个路径即最终生成代码的路径。 (6)配置注入模板的键值,这个功能可以配置除默认注入到模版的变量之外的特殊变量,例:author=李坤,模板可用变量${author},base-package=com.tgb.lk,则模版中可使用${base-package} (7)读取数据库中的数据用于生成代码。 本配置主要控制是否开启读取配置数据库中数据后作为模板的输入功能。开启本功能将自动将数据库中的数据转换成JavaBean并将此JavaBean作为模板变量的输入用于生成代码。 模板中可使用的通用变量: ${base-package}包名的默认变量,可在步骤(5)中进行属性值的设置,可以放到路径中,路径中使用时将把配置的点(.)转为路径分隔符(/)使用. ${beans}实体类的类名集合. ${bean}实体类类名首字母变为小写. ${bean.Lname}同${bean},实体类类名首字母变为小写. ${bean.Uname}实体类类名首字母变为大写. ${bean.ALname}实体类类名全部变为小写字母. ${bean.AUname}实体类类名全部变为大写字母. 注:${bean},${bean.Lname},${bean.Uname},${bean.ALname},${bean.AUname},${base-package}可以用于模版中也可以用于路径和文件的命名. 注解增强Bean属性,需配置@AutoBean(alias="xxx",table="xxx",args={"xxx","yyy"}): ${bean.alias}实体类注解中的alias值,如果实体类上没有配置,则默认为类名.可配置中文注释,生成代码时显示该注释. ${bean.table}实体类注解中的table值,对应数据库中的表名. ${bean.argsLength},${bean.argsSize}bean注解中的args参数数组配置的参数个数. ${bean.args[0]}bean注解中的args参数数组配置中的第一个值. ${bean.fields}实体类的字段集合,可对其进行循环. ${field}实体类属性名. ${field}实体属性首字母变为小写. ${field.Lname}同${bean},实体类属性首字母变为小写. ${field.Uname}实体类属性首字母变为大写. ${field.ALname}实体类属性全部变为小写字母. ${field.AUname}实体类属性全部变为大写字母. 注解增强Field属性,需配置 @AutoField(alias = "序号", isKey = true , isRequired = true , type="String", combo = {"男","女"},args={"xxx","yyy"}) ${field.alias}实体属性注解中的alias值,默认为属性名.可配置中文注释,生成代码时显示该注释. ${field.isKey}实体属性注解中的isKey值,boolean类型,配置后可以使用${bean.key}变量. ${field.isRequired}实体属性中的isRequired属性,该属性可以配置该字段是否为必填项. ${field.type}实体类属注解中的类型,例如String,Integer... ${field.comboLength},${field.comboSize}实体属性注解中combo参数数组配置的参数个数. ${field.combo[0]}实体属性注解中combo参数数组配置中的第一个值. ${field.argsLength}}实体属性注解中的args参数数组配置的参数个数. ${field.args[0]}实体属性注解中args参数数组配置中的第一个值. ${bean.datasLength} = ${bean.datasSize}bean中读取数据表中的内容并转为类的对象,模板中可以使用. #foreach($data in ${bean.datas}) ${data.uuid},${data.name}... #end 2.从实体类生成代码 前置条件:步骤1中的(1)中配置了可用的velocity模版,步骤1中(4)中有可用的*.class文件。 本功能用于生成代码。 3.打开生成代码目录 本功能可以打开生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。

2014-02-25

基于模板的代码生成器LKGenerator1.1.0_x86

使用帮助:http://pan.baidu.com/s/1bnxOHGF 主要功能介绍: 功能: 一、数据库生成实体类. 1.配置 (1)本工具提供了3中连接数据库的方式,分别是:MySql、Oracle、SqlServer,在界面上给出连接示例,方便进行复制和修改(减少因错误配置连接方式而带来了不能链接数据库问题)。配置正确后即可正确读取出数据库中的相关表和表中字段。 (2)生成的代码路径可根据需要进行灵活配置,如果没有配置默认为:d:\.LKGenerator\dest-beans (3)提供了根据数据表生成代码的相关配置,可以配置去掉表前缀(如t_),去掉表后缀,去掉表名内容下划线(业界习惯表命名中用下划线区分单词),大写表名下划线后的第一个字母,去掉属性中下划线并大写其后第一个字母,这样可以使生成的代码更符合业界代码命名习惯,如,用户和角色的关联关系表常被命名为:t_user_role,表中字段有user_id和role_id,按上面的配置后生成的代码为UserRole.java,类中的属性为userId和roleId. 2.选择表 前置条件:本功能要求第一步配置数据库连接方式能正确连接到数据库。 本功能可列出所配置数据库的所有表,请选择所需生成代码的表后点击确认按钮(注:如果重新配置步骤1的数据库连接后需刷新列表)。 3.生成实体类代码 前置条件:步骤2中选择了需要生成代码的表。 本功能可根据步骤2中选择表进行实体Beans代码的生成,生成的代码默认包含AutoBean和AutoField的注解配置(AutoBean和AutoField注解非生成代码的必须项,如果配置了可以在生成代码时时为模版注入该配置,增强模版的扩展性)。 4.编译实体类 前置条件:系统安装JDK并配置JAVA_HOME环境变量 本功能可以对Java代码进行编译(注:本功能的使用不必要依赖步骤3中的代码,可对任何正确的java代码进行编译,如果代码中有引用第三方的jar,请将jar放置到d:\.LKGenerator\.lib文件夹下。) 5.导出数据到Excel 前置条件:执行第三步后已生成带注解的JavaBean. 本功能只要使用地三步的配置注解的JavaBean就能将数据表中的数据导出。 6.从Excel导入到DB 前置条件:执行第三步后已生成带注解的JavaBean. 本功能只要使用地三步的配置注解的JavaBean就能将Excel中的数据导入到数据表中。 7.生成数据表文档 前置条件:步骤2中选择了需要生成文档的表。 本功能可以根据步骤2中选择的表进行excel文档的生成。 8.清空Beans代码目录。 本功能可以清空生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。 9.打开Beans代码目录 本功能可以打开生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。 二、实体类根据模版生成最终代码. 功能简介:根据实体类代码结合模版生成最终代码,代码模版规范参考模版框架velocity的规范和样例。 实现思路:加载实体类的class文件到classLoader中,读取实体类的属性和注解,将类名、属性字段名、注解三者与模版进行结合生成最终的代码。 1.配置 (1)配置模版路径,这个配置可以配置用于生成代码的velocity模版路径,生成的代码将模版中的特定符号见“模版中可使用的变量”中的描述。 (2)配置生成代码的固定文件路径,这个配置中的文件将原样拷贝到最终生成的代码中,主要适用于非文本文件如*.jpg *.jar等文件。 (3)配置引用jar路径,这个jar路径的配置是需要加载的class需要引用的jar. (4)注入模版的Bean(*.class)路径,这个路径下需放置实体Bean的class文件。 (5)配置生成代码的根路径,这个路径即最终生成代码的路径。 (6)配置注入模板的键值,这个功能可以配置除默认注入到模版的变量之外的特殊变量,例:author=李坤,模板可用变量${author},base-package=com.tgb.lk,则模版中可使用${base-package} (7)读取数据库中的数据用于生成代码。 本配置主要控制是否开启读取配置数据库中数据后作为模板的输入功能。开启本功能将自动将数据库中的数据转换成JavaBean并将此JavaBean作为模板变量的输入用于生成代码。 模板中可使用的通用变量: ${base-package}包名的默认变量,可在步骤(5)中进行属性值的设置,可以放到路径中,路径中使用时将把配置的点(.)转为路径分隔符(/)使用. ${beans}实体类的类名集合. ${bean}实体类类名首字母变为小写. ${bean.Lname}同${bean},实体类类名首字母变为小写. ${bean.Uname}实体类类名首字母变为大写. ${bean.ALname}实体类类名全部变为小写字母. ${bean.AUname}实体类类名全部变为大写字母. 注:${bean},${bean.Lname},${bean.Uname},${bean.ALname},${bean.AUname},${base-package}可以用于模版中也可以用于路径和文件的命名. 注解增强Bean属性,需配置@AutoBean(alias="xxx",table="xxx",args={"xxx","yyy"}): ${bean.alias}实体类注解中的alias值,如果实体类上没有配置,则默认为类名.可配置中文注释,生成代码时显示该注释. ${bean.table}实体类注解中的table值,对应数据库中的表名. ${bean.argsLength},${bean.argsSize}bean注解中的args参数数组配置的参数个数. ${bean.args[0]}bean注解中的args参数数组配置中的第一个值. ${bean.fields}实体类的字段集合,可对其进行循环. ${field}实体类属性名. ${field}实体属性首字母变为小写. ${field.Lname}同${bean},实体类属性首字母变为小写. ${field.Uname}实体类属性首字母变为大写. ${field.ALname}实体类属性全部变为小写字母. ${field.AUname}实体类属性全部变为大写字母. 注解增强Field属性,需配置 @AutoField(alias = "序号", isKey = true , isRequired = true , type="String", combo = {"男","女"},args={"xxx","yyy"}) ${field.alias}实体属性注解中的alias值,默认为属性名.可配置中文注释,生成代码时显示该注释. ${field.isKey}实体属性注解中的isKey值,boolean类型,配置后可以使用${bean.key}变量. ${field.isRequired}实体属性中的isRequired属性,该属性可以配置该字段是否为必填项. ${field.type}实体类属注解中的类型,例如String,Integer... ${field.comboLength},${field.comboSize}实体属性注解中combo参数数组配置的参数个数. ${field.combo[0]}实体属性注解中combo参数数组配置中的第一个值. ${field.argsLength}}实体属性注解中的args参数数组配置的参数个数. ${field.args[0]}实体属性注解中args参数数组配置中的第一个值. ${bean.datasLength} = ${bean.datasSize}bean中读取数据表中的内容并转为类的对象,模板中可以使用. #foreach($data in ${bean.datas}) ${data.uuid},${data.name}... #end 2.从实体类生成代码 前置条件:步骤1中的(1)中配置了可用的velocity模版,步骤1中(4)中有可用的*.class文件。 本功能用于生成代码。 3.打开生成代码目录 本功能可以打开生成代码的文件夹,主要为了增强用户体验,让使用者方便打开Beans文件夹并对代码进行修改。

2014-02-25

Spring3.2.4+Quartz2.2.0 实例

Spring3.2.4+Quartz2.2.0 实例 Spring3.2.4从这个版本开始支持quartz2.x了.以前的Spring版本只支持Quartz-1.8.x及以前的版本,做个小实例分享一下. Spring3.2.4配置文件中使用CronTriggerFactoryBean来集成quartz2.x,使用CronTriggerBean来集成quartz1.8.x及以前版本.

2013-09-16

Spring3.2.4+Quartz2.2.0 Demo

Spring3.2.4+Quartz2.2.0 实例 <!-- 启动触发器的配置开始 --> <bean name="startQuertz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="myJobTrigger" /> </list> </property> </bean> <!-- 启动触发器的配置结束 --> <!-- 调度的配置开始 --> <!-- quartz-1.8以前的配置 <bean id="myJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="myJobDetail" /> </property> <property name="cronExpression"> <value>0/1 * * * * ?</value> </property> </bean> --> <!-- quartz-2.x的配置 --> <bean id="myJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> <property name="jobDetail"> <ref bean="myJobDetail" /> </property> <property name="cronExpression"> <value>0/1 * * * * ?</value> </property> </bean> <!-- 调度的配置结束 --> <!-- job的配置开始 --> <bean id="myJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref bean="myJob" /> </property> <property name="targetMethod"> <value>work</value> </property> </bean> <!-- job的配置结束 --> <!-- 工作的bean --> <bean id="myJob" class="com.tgb.lk.demo.quartz.MyJob" />

2013-09-16

使用struts拦截器+注解实现日志审计功能

使用struts拦截器+注解实现日志审计功能 详见博客: http://blog.csdn.net/lk_blog/article/details/10248395

2013-08-24

android单选复选按钮数据库综合实例SpinnerDialogDemo

android单选复选按钮数据库综合实例SpinnerDialogDemo 本示例说明: 1.实现单选按钮与后台数据绑定,通过Id绑定. 2.实现显示时默认选中项控制. 3.实现修改后保存,根据id保存. 4.数据库处理使用AHibernate1.1,详见:http://blog.csdn.net/lk_blog/article/details/8201449

2013-01-17

一次代码重构之旅-快速读写xml文件工具类封装

内容:博客代码 一次代码重构之旅-快速读写xml文件工具类封装 http://blog.csdn.net/lk_blog/article/details/8220803

2012-11-24

AHibernate1.1

更多使用示例见博客: http://blog.csdn.net/lk_blog 早期版本AHibernate1.0下载地址:http://download.csdn.net/detail/lk_blog/4222048 本版主要修改的内容: 1.修改bug,实体类的属性定义为int时自动生成Id正常,定义为Integer类型后不能自动生成Id. 2.实现功能:自动处理java.util.Date类型. 3.实现功能:调试时自动输入sql到日志中,输出的sql已经将?参数替换为了传入的变量,sql能直接运行. 4.实现功能:实现了主键自增和不自增控制方法的重载.默认使用主键自增, //insert(entity)方法Id会自增,相当于调用insert(entity,true); //使用insert(entity,false)这样方式可以插入有固定Id的数据 5.支持代码混淆处理,当设置了proguard.config=proguard.cfg后发布程序时,程序会自动混淆处理.使用老接口:public BaseDaoImpl(SQLiteOpenHelper dbHelper)会报错,请使用新接口: public BaseDaoImpl(SQLiteOpenHelper dbHelper, Class clazz) 注:使用混淆时最好在proguard.cfg文件添加设置:-keepattributes *Annotation* 6.其他一些bug.

2012-11-19

EasyWatermark 图片处理 水印

EasyWatermark 图片处理 水印

2012-11-13

实体属性变更历史记录框架-变更历史记录从此无忧

在实际mis项目中增删改查必不可少,针对"改"的操作,重要的项目中都要有变更历史记录.本实例提供了一个实体属性变更历史记录工具类,只要写很少的代码就能实现强大的变更历史记录功能.本工具类的主要优点是1.工具类对实体对象没有依赖性,任何对象都能记录历史.2.只要编写很少的代码就能实现需求. 3.所有属性都记录变更历史太多,有些属性我不想记录变更历史. 4.实体属性变化前后的值需要把编码转成有意义的文字.例如:实体类中性别用 0,1表示,而希望变更历史中记录前后变化的值是"男","女". 5.传入实体对象自动识别实体Id,而不需要手工传入. 6.实体的属性名不好记,想加一个好记别名,这样便于查询.

2012-10-20

实现一个配置简单功能强大的excel工具类搞定大多数导入导出

实现一个配置简单功能强大的excel工具类搞定大多数导入导出. http://blog.csdn.net/lk_blog/article/details/8007777 http://blog.csdn.net/lk_blog/article/details/8007837 对于J2EE项目导入导出Excel是最普通和实用功能,本工具类使用步骤简单,功能强大,只需要对实体类进行简单的注解就能实现导入导出功能,导入导出操作的都是实体对象. 看看这个类都有哪些功能吧: * 1.实体属性配置了注解就能导出到excel中,每个属性都对应一列. * 2.列名称可以通过注解配置. * 3.导出到哪一列可以通过注解配置. * 4.鼠标移动到该列时提示信息可以通过注解配置. * 5.用注解设置只能下拉选择不能随意填写功能. * 6.用注解设置是否只导出标题而不导出内容,这在导出内容作为模板以供用户填写时比较实用. 使用步骤: 1.写一个实体类 2.为实体类设置注解配置. 3.实例化一个ExcelUtil对象,调用exportExcel或importExcel方法.

2012-09-22

实现一个配置简单功能强大的excel工具类搞定导入导出

实现一个配置简单功能强大的excel工具类搞定大多数导入导出. http://blog.csdn.net/lk_blog/article/details/8007777 http://blog.csdn.net/lk_blog/article/details/8007837 对于J2EE项目导入导出Excel是最普通和实用功能,本工具类使用步骤简单,功能强大,只需要对实体类进行简单的注解就能实现导入导出功能,导入导出操作的都是实体对象. 看看这个类都有哪些功能吧: * 1.实体属性配置了注解就能导出到excel中,每个属性都对应一列. * 2.列名称可以通过注解配置. * 3.导出到哪一列可以通过注解配置. * 4.鼠标移动到该列时提示信息可以通过注解配置. * 5.用注解设置只能下拉选择不能随意填写功能. * 6.用注解设置是否只导出标题而不导出内容,这在导出内容作为模板以供用户填写时比较实用. 使用步骤: 1.写一个实体类 2.为实体类设置注解配置. 3.实例化一个ExcelUtil<T>对象,调用exportExcel或importExcel方法.

2012-09-22

封装一个类搞定90%安卓客户端与服务器端交互

本实例封装了一个处理安卓客户端与服务器端交互的几个方法,对于中文乱码问题本实例也找到了解决方案.本例可以处理的场景如下: 1.与服务器端交互json数据. 2.Get方式与服务器端交互数据. 3.Post方式与服务器端交互数据. 4.HttpClient方式与服务器端交互数据. 5.上传文件到服务器端. 6.从服务器端下载文件. 7.从服务器端读取文本文件. http://blog.csdn.net/lk_blog

2012-07-01

Json转换利器Gson实例代码

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。 Json转换利器Gson之实例一-简单对象转化和带泛型的List转化 (http://blog.csdn.net/lk_blog/article/details/7685169) Json转换利器Gson之实例二-Gson注解和GsonBuilder (http://blog.csdn.net/lk_blog/article/details/7685190) Json转换利器Gson之实例三-Map处理(上) (http://blog.csdn.net/lk_blog/article/details/7685210) Json转换利器Gson之实例四-Map处理(下) (http://blog.csdn.net/lk_blog/article/details/7685224) Json转换利器Gson之实例五-实际开发中的特殊需求处理 (http://blog.csdn.net/lk_blog/article/details/7685237) Json转换利器Gson之实例六-注册TypeAdapter及处理Enum类型 (http://blog.csdn.net/lk_blog/article/details/7685347)

2012-06-22

achartengin框架源码(svn更新)

achartengin框架源码(svn更新) 更新日期:2012-06-14 svn checkout http://achartengine.googlecode.com/svn/trunk/ achartengine-read-only

2012-06-14

安卓图表框架achartengine-1.0.0

安卓图表框架achartengine-1.0.0 支持以下类型的图表: • line chart (折线图) • area chart (面积图;分区图,对比图) • scatter chart ( 散点图) • time chart (时间图;进度表) • bar chart (条形图;柱状图) • pie chart ( 饼图) • bubble chart (气泡图) • doughnut chart (圆环图) • range (high-low) bar chart (范围条形图) • dial chart / gauge (拨号盘/压力表) • combined (any combination of line, cubic line, scatter, bar, range bar, bubble) chart(组合图) • cubic line chart (立方折线图) 官网下载地址: http://code.google.com/p/achartengine/downloads/list

2012-06-07

ExpandableListView综合实例

ExpandableListView实例(一)_数据库增删改查处理和listitem点击长按处理 本例说明: 1.实例中表现层与数据处理层分开,代码可复用性强,如果能看懂代码对算法会有提高. 2.组和子条目上"点击"事件处理,能够区分操作的是组还是子条目,并且得到组和子条目的内容. 3.组和子条目上"长按"事件处理,能够区分组和子条目,并且得到组和子条目的内容. 4.自定义条目样式,灵活与数据库中字段绑定. 5.实现对DB的增删改查,并且操作后自动刷新. 6.使用数据库处理框架AHibernate灵活操作sqlite数据库,详见: http://blog.csdn.net/lk_blog/article/details/7455992 ExpandableListView实例(二)_两种方式实现QQ中组后面显示子条目数量效果 本例说明: QQ,飞信等聊天工具中组后面后会显示有多少个子条目,这个是如何实现的呢?查阅了网上还没有相关的介绍,现在本文介绍两种方式实现此功能. 第一种方式:自定义Adapter,重写getGroupView方法. 第二种方式:自定义group.xml中的控件,加一个textview用于显示子条目个数. 注:本文数据库处理使用框架AHibernate,可以灵活操作sqlite数据库, 详见: http://blog.csdn.net/lk_blog/article/details/7455992 ExpandableListView实例(三)_实现QQ中"未分组"效果和"未分组"不可编辑删除功能 本例说明: 实现QQ中"未分组"效果和"未分组"不可编辑删除功能. 注:本文数据库处理使用框架AHibernate,可以灵活操作sqlite数据库, 详见: http://blog.csdn.net/lk_blog/article/details/7455992

2012-05-14

ExpandableListView实例

ExpandableListView实例(一)_数据库增删改查处理和listitem点击长按处理 本例说明: 1.实例中表现层与数据处理层分开,代码可复用性强,如果能看懂代码对算法会有提高. 2.组和子条目上"点击"事件处理,能够区分操作的是组还是子条目,并且得到组和子条目的内容. 3.组和子条目上"长按"事件处理,能够区分组和子条目,并且得到组和子条目的内容. 4.自定义条目样式,灵活与数据库中字段绑定. 5.实现对DB的增删改查,并且操作后自动刷新. 6.使用数据库处理框架AHibernate灵活操作sqlite数据库,详见: http://blog.csdn.net/lk_blog/article/details/7455992 ExpandableListView实例(二)_两种方式实现QQ中组后面显示子条目数量效果 本例说明: QQ,飞信等聊天工具中组后面后会显示有多少个子条目,这个是如何实现的呢?查阅了网上还没有相关的介绍,现在本文介绍两种方式实现此功能. 第一种方式:自定义Adapter,重写getGroupView方法. 第二种方式:自定义group.xml中的控件,加一个textview用于显示子条目个数. 注:本文数据库处理使用框架AHibernate,可以灵活操作sqlite数据库, 详见: http://blog.csdn.net/lk_blog/article/details/7455992 ExpandableListView实例(三)_实现QQ中"未分组"效果和"未分组"不可编辑删除功能 本例说明: 实现QQ中"未分组"效果和"未分组"不可编辑删除功能. 注:本文数据库处理使用框架AHibernate,可以灵活操作sqlite数据库, 详见: http://blog.csdn.net/lk_blog/article/details/7455992

2012-05-13

listview综合使用示例_结合数据库操作和listitem单击长按等事件

android listview综合使用示例_结合数据库操作和listitem单击长按等事件处理 欢迎访问我的博客对代码进行交流: http://blog.csdn.net/lk_blog

2012-05-05

listview综合使用示例_结合数据库和listitem单击长按等事件

android listview综合使用示例_结合数据库操作和listitem单击长按等事件处理 欢迎访问博客:http://blog.csdn.net/lk_blog 对本例代码进行交流.

2012-05-05

easyduplicate磁盘文件去重整理工具_v1.5

easyduplicate磁盘文件去重整理工具_v1.5 电脑用久了一定会有很多重复的文件吧,给磁盘减减肥吧.

2012-04-22

Android sqlite数据库操作通用框架AHibernate

Android sqlite数据库操作通用框架AHibernate 使用示例见博客: http://blog.csdn.net/lk_blog

2012-04-13

android-sdk-windows-lk

android,sdk,可用于快速搭建模拟器,从官方sdk更新了tools和platform-tools.详见博客:http://blog.csdn.net/lk_blog

2012-04-09

Android使用TableLayout动态布局实例

Android使用TableLayout动态布局实例: http://blog.csdn.net/lk_blog/article/details/7436380

2012-04-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除