认真生活,快乐工作,保持理想!https://blog.csdn.net/tuzongxun
能力说明:
了解变量作用域、Java类的结构,能够创建带main方法可执行的java应用,从命令行运行java程序;能够使用Java基本数据类型、运算符和控制结构、数组、循环结构书写和运行简单的Java程序。
暂时未有相关云产品技术能力~
阿里云技能认证
详细说明后边有个项目需要接入4A,要用到webService服务,暂时还不确定是不是会有我的事,但为了有备无患,还是抽时间学习了以下相关的知识。 本来我所了解到的发布webService服务有用cxf和xfire两种,但这个项目明确说了需要用xfire,因此便先学习一下这个。参考网上一些文档,搭建的过程大概如下: 一、环境基础:eclipse4.4.1、maven3.2.5、tomcat7、jdk
之前有使用过一次在程序中发邮件的功能,也写了一篇相关的笔记,当时使用的是163邮箱,经过测试多个163账号都是可行的。但是最近把账号换成中国移动@chinamobilesz.com这种结尾的时候,却一直连接不上服务器,验证不通过,于是只好重新进行了一些改动,这期间也有参考另一个同事之前的写法,成功实现。 这种实现方式和上一种大同小异,只是经过测试后,这种方式不仅163的邮箱没有问题
1、整数:TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT,比较常用的是INT,这五种类型只是取值范围不一样,具体的范围可以在mysql shell界面使用“HELP 类型”这样的命令查看,例如HELP INT。 2、小数:FLOAT、DOUBLE、DEC、CECIMAL、BIT,当需要精确到小数点后10位以上,就需要选择DOU
1、整数:TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT,比较常用的是INT,这五种类型只是取值范围不一样,具体的范围可以在mysql shell界面使用“HELP 类型”这样的命令查看,例如HELP INT。 2、小数:FLOAT、DOUBLE、DEC、CECIMAL、BIT,当需要精确到小数点后10位以上,就需要选择DOU
1、DDL:Data Definition Language,即数据定义语言,定义数据库涉及的各种对象,定义数据的完整性约束、保密限制等约束。 2、DML:Data Manipulation Language,即数据操作语言,实现对数据的操作,数据基本操作有两类,检索(查询)和更新(插入、删除和更新)。 3、DCL:Data Control Language,即数据控制语言,实
这种方式是纯粹的java代码,需要继承timerTask接口并重写run方法,创建这个类的时候就会调用run方法。 基本的使用逻辑是: 把自己需要处理的业务逻辑放在自己写的这个继承了timerTask的类中,然后new一个timer并调用schedule方法,在schedule中设定一个新的自己类的对象为参数,同时配置其他时间信息,示例如下: package schedul
这种方式是纯粹的java代码,需要继承timerTask接口并重写run方法,创建这个类的时候就会调用run方法。 基本的使用逻辑是: 把自己需要处理的业务逻辑放在自己写的这个继承了timerTask的类中,然后new一个timer并调用schedule方法,在schedule中设定一个新的自己类的对象为参数,同时配置其他时间信息,示例如下: package schedul
接着上一篇,这里使用spring配置文件的方式生成spring定时任务。 1、相应的web.xml没有什么变化,因此便不再罗列。同样的,相应的java代码业务逻辑改动也不大,只是在原来的基础上去掉@Component和@Scheduled(cron = "0/5 * * * * ?")参数,也就是把这个类和方法变成一个最简单的java类和方法就可以了。 2、既然是配置文件的方
我所知道的java定时任务的几种常用方式: 1、spring schedule注解的方式; 2、spring schedule配置文件的方式; 3、java类继承TimerTask; 第一种方式的实现: 1、使用maven创建spring项目,schedule在spring-context.jar的包下边,因此需要导入与之相关的包;同时,我配的是spring w
我所知道的java定时任务的几种常用方式: 1、spring schedule注解的方式; 2、spring schedule配置文件的方式; 3、java类继承TimerTask; 第一种方式的实现: 1、使用maven创建spring项目,schedule在spring-context.jar的包下边,因此需要导入与之相关的包;同时,我配的是spring w
项目测试的时候,用的是项目组linux测试机上的rabbitmq,为了方便自己随时使用,便在自己的电脑win8.1上也安装了一套,安装过程如下: 一、准备erlang和rabbitmq的安装程序: otp_win64_17.4.exe rabbitmq-server-3.5.3.exe 二、安装和配置erlang: 双击otp_win64_
项目测试的时候,用的是项目组linux测试机上的rabbitmq,为了方便自己随时使用,便在自己的电脑win8.1上也安装了一套,安装过程如下: 一、准备erlang和rabbitmq的安装程序: otp_win64_17.4.exe rabbitmq-server-3.5.3.exe 二、安装和配置erlang: 双击otp_win64_
有个项目的登陆模块使用到了cas,应需求要求,用户名和密码传输时使用了md5加密模式,加密的密码可以直接保存在数据库,但是加密的用户名则必须解密出来才行,于是后台的java代码中便写了针对用户名的解密代码。 而前台,是在输完用户名和密码后,点击登陆按钮的时候调用相应的方法进行加密并发请求传输。 但是测试过程中却发现了一个问题,就是在有的时候输完用户名、密码和验证码以后回车,后台
有个项目的登陆模块使用到了cas,应需求要求,用户名和密码传输时使用了md5加密模式,加密的密码可以直接保存在数据库,但是加密的用户名则必须解密出来才行,于是后台的java代码中便写了针对用户名的解密代码。 而前台,是在输完用户名和密码后,点击登陆按钮的时候调用相应的方法进行加密并发请求传输。 但是测试过程中却发现了一个问题,就是在有的时候输完用户名、密码和验证码以后回车,后台
1、有的时候需要删除指定字段那一列,使用update操作。例如要删除name这一列: query json: {"name":{$exists:true}} update json: {$unset:{"name":""}} 2、数据导出,在mongodb的bin目录执行mongoexport命令并设定相关的参数,例如: ./mongoexport -h 1
在上一篇,利用线程使服务端实现了能够接收多客户端请求的功能,这里便需要客户端接收多客户端消息的同时还能把消息转发到每个连接的客户端,并且客户端要能在内容显示区域显示出来,从而实现简单的在线群聊。 在实现客户端转发,无非就是增加输出流;而之前客户端都只发不收,这里也需要更改客户端达到循环接收服务端消息的目的,因此也需要实现多线程。 在实现这个功能的时候,偶然想起随机生成验证码的功
在上一篇,利用线程使服务端实现了能够接收多客户端请求的功能,这里便需要客户端接收多客户端消息的同时还能把消息转发到每个连接的客户端,并且客户端要能在内容显示区域显示出来,从而实现简单的在线群聊。 在实现客户端转发,无非就是增加输出流;而之前客户端都只发不收,这里也需要更改客户端达到循环接收服务端消息的目的,因此也需要实现多线程。 在实现这个功能的时候,偶然想起随机生成验证码的功
接《java Socket实现简单在线聊天(一)》,在单客户端连接的基础上,这里第二步需要实现多客户端的连接,也就需要使用到线程。每当有一个新的客户端连接上来,服务端便需要新启动一个线程进行处理,从而解决之前的循环读取中造成阻塞的问题。 写线程通常有两种方法,集成Thread或者实现runnable接口,原则上是能实现runnable的情况下就不继承,因为实现接口的方式更加灵活。
接《java Socket实现简单在线聊天(一)》,在单客户端连接的基础上,这里第二步需要实现多客户端的连接,也就需要使用到线程。每当有一个新的客户端连接上来,服务端便需要新启动一个线程进行处理,从而解决之前的循环读取中造成阻塞的问题。 写线程通常有两种方法,集成Thread或者实现runnable接口,原则上是能实现runnable的情况下就不继承,因为实现接口的方式更加灵活。
今天重新学习socket编写简单的在线聊天,简单功能实现的情况下,一时心血来潮便想要把这程序打成可执行的jar包,以便于在桌面直接双击运行。 参照自己之前写的那篇《》打好两个jar包以后却发现双击运行弹出如下错误: could not find the main class.program will exitmain 错误如图所示: 看到这错误,我不
最近的项目有一个在线网页交流的需求,由于很久以前做过的demo已经忘记的差不多了,因此便重新学习一下。 我计划的大致实现步骤分这样几大步: 1、使用awt组件和socket实现简单的单客户端向服务端持续发送消息; 2、结合线程,实现多客户端连接服务端发送消息; 3、实现服务端转发客户端消息至所有客户端,同时在客户端显示; 4、把awt组件生成的窗口界面改成前端jsp或者html展示的界面,j
最近的项目有一个在线网页交流的需求,由于很久以前做过的demo已经忘记的差不多了,因此便重新学习一下。 我计划的大致实现步骤分这样几大步: 1、使用awt组件和socket实现简单的单客户端向服务端持续发送消息; 2、结合线程,实现多客户端连接服务端发送消息; 3、实现服务端转发客户端消息至所有客户端,同时在客户端显示; 4、把awt组件生成的窗口界面改成前端jsp或者html展示的界面,j
基础知识理解: cookie、session和过滤器通常都是用在web应用中,cookie和session用来保存一定的数据,过滤器Filter则是在浏览器发出请求之后,而后台执行特定的请求之前发生一定的作用。之所以把这三个放一起,是因为有很多时候都会是把他们结合在一起使用,例如有些登陆程序。 cookie是浏览器的机制,session是服务器的机制,但是实际上cookie
前边有一篇记录过不使用spring,直接在java代码中连接和操作mongodb数据库,这里就紧随其后记录一下使用spring的情况下,在java中简单操作mongodb。 maven导包配置: 因为涉及了sping以及springmvc,因此也需要导入它们相关的包: <project xmlns="http://maven.apache.org/POM/4.0.0"
前边有一篇记录过不使用spring,直接在java代码中连接和操作mongodb数据库,这里就紧随其后记录一下使用spring的情况下,在java中简单操作mongodb。 maven导包配置: 因为涉及了sping以及springmvc,因此也需要导入它们相关的包: <project xmlns="http://maven.apache.org/POM/4.0.0"
坑在哪里: 在我之前接触的一个项目中涉及到这么一项功能:每天00:00:00把某些数据移动到mongodb数据库的另一个集合中,也就是关系型数据库的表中。这个集合名是一个固定的名称加上当前的两个月前的日期所在的年和月份。 这个功能是在我接触这个项目之前就已经存在,也就是之前的同事实现的功能,写了一个java的定时任务。 那个同事如今已经不在我们公司了,但是最近却发现这个功
今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能。 但是导出后出现了一个问题,里边有一列存储时间的,存储的是long型毫秒数,在导出后就自动变成了科学记数法。 且不说从科学记数法中辨别出实际时间,即便是原本的毫秒值也是不易于辨别的,但是这些long值不能直接在excel中转换成date类型,因此我
今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能。 但是导出后出现了一个问题,里边有一列存储时间的,存储的是long型毫秒数,在导出后就自动变成了科学记数法。 且不说从科学记数法中辨别出实际时间,即便是原本的毫秒值也是不易于辨别的,但是这些long值不能直接在excel中转换成date类型,因此我
今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能。 但是导出后出现了一个问题,里边有一列存储时间的,存储的是long型毫秒数,在导出后就自动变成了科学记数法。 且不说从科学记数法中辨别出实际时间,即便是原本的毫秒值也是不易于辨别的,但是这些long值不能直接在excel中转换成date类型,因此我
下载和上传附件、发送短信和发送邮件,都算是程序中很常用的功能,之前记录了文件的上传和下载还有发送短信,由于最近比较忙,邮件发送的功能就没有时间去弄,好在昨晚终于走通代码成功以163邮箱发送邮件到qq邮箱,以下是相关代码,具体解释可以参考代码中注释: package test; import java.util.ArrayList; import java.util.Date; i
这段时间前后端联调,解决IE、谷歌等浏览器兼容问题,真是让人有点焦头烂额,各种奇葩问题层出不穷,旧问题刚去,新麻烦又来,其中尤其以IE浏览器缓存的问题最多。有若干次都是因为这个缓存,使得前端的请求没有实际到达后台,造成304状态码。 经过前端同事和我的各种尝试,发现有三四种办法可以针对不同的情况解决这个问题。 方法一: 在网上一搜“html设置不缓存”就会看到大部分的答案都是这个,那就是在
这段时间前后端联调,解决IE、谷歌等浏览器兼容问题,真是让人有点焦头烂额,各种奇葩问题层出不穷,旧问题刚去,新麻烦又来,其中尤其以IE浏览器缓存的问题最多。有若干次都是因为这个缓存,使得前端的请求没有实际到达后台,造成304状态码。 经过前端同事和我的各种尝试,发现有三四种办法可以针对不同的情况解决这个问题。 方法一: 在网上一搜“html设置不缓存”就会看到大部分的答案都是这个,那就是在
写作原由: 之前我写过一篇博客,名叫《为什么涨工资的是我和他》,在开源中国发表之后收到了一些评论,有赞同观点的,也有嗤之以鼻的。 在看了那些评论以及进行了一些回复后,我有了一些其他的想法,因此诞生此文。 不同的声音: 在那些评论里,有一个反对意见让我记忆尤深,因为他评论了若干条,言语上表现的有些激动,我想或者是我的某些话刺激了他吧。 我记得他有一句大致是这
学习原因和目的: 我如今所接触的项目都是bs模式的web应用,而里边基本上都是用的spring MVC和前台交互,servlet貌似用的很少。 但是即便是用spring和spring MVC,项目中依旧是少不了web.xml文件,而这里边的配置看来看去根本就是servlet的配置。 因此为了更好的理解这些配置,我想还是需要从servlet入手。 servlet在百度中的解释是:
一、出现的问题 项目在测试阶段出现了一些问题,在有一个页面进行增加或删除数据后刷新,页面没有任何反应。 查看增加或修改的请求,响应是200状态,提示新增或删除成功,但是页面刷新后无论是条数还是详细数据都没有变化,该多的不多,该少的也不少。 而且看到新增或删除后的查询请求,返回状态码是304,也就是说页面重定向了。 由于这一模块相关的前端代码不是现在的这个同时负责,因此他也是一顿好找。
一、出现的问题 项目在测试阶段出现了一些问题,在有一个页面进行增加或删除数据后刷新,页面没有任何反应。 查看增加或修改的请求,响应是200状态,提示新增或删除成功,但是页面刷新后无论是条数还是详细数据都没有变化,该多的不多,该少的也不少。 而且看到新增或删除后的查询请求,返回状态码是304,也就是说页面重定向了。 由于这一模块相关的前端代码不是现在的这个同时负责,因此他也是一顿好找。
第一步:为服务器生成证书 1、进入%JAVA_HOME%/bin目录 2、使用keytool为Tomcat生成证书,假定目标机器的域名是“localhost”,keystore文件存放在“D:\tomcat.keystore”,口令为“password”,使用如下命令生成: keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:\
package test; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Date和Calendar常用方法,Date很多方法已经弃用,因此以Calendar为主 * * @author tuzongxun123 * */
今天和朋友聊天,偶然间聊到我涨工资的事情,对于其中的一些看法,我想对于很多人或许都会有一些帮助,因此便分享给大家。 事情还要从进公司时开始说起,14年12月,我和另外两个同学一起进了我现在的公司,而且也进入了同一个项目组,他们俩前端,我后端。 而同时进去的还有两个不是同学的,当时不认识,进来以后才慢慢熟悉,一个负责数据采集,一个负责运维。 我们一起做了半年左右的时间
昨天有个网友加qq询问我有没有非maven搭建的activiti项目的demo,因为我博客中写了一个用maven,我当时没有,于是晚上回家尝试了一下,结果比较容易就实现了。 之后和那个网友聊了一下,他说自己没有任何activiti的基础,从0开始学。于是我便想到了几篇非常适合入门的activiti的博客,也在csdn中,并且我还转载了最开始的一篇。 博主的那一系列博文完全是从零
在上一篇的获得我的申请中,可以看到js代码中还包含了预览和完成任务的代码,既然上一篇已经罗列了相关代码,这里也就不重复。 那么需要补充的是,在上边的完成任务的js代码中,我们还调用了getTaskForm请求,目的是从后台获取提交任务时的其他数据,例如指定下一个处理人等,当然了,根据不同的业务逻辑可能有所变化。 那么这个请求对应的后台代码如下,如果弄明白了整个数据库的设计,
在上一篇的获得我的申请中,可以看到js代码中还包含了预览和完成任务的代码,既然上一篇已经罗列了相关代码,这里也就不重复。 那么需要补充的是,在上边的完成任务的js代码中,我们还调用了getTaskForm请求,目的是从后台获取提交任务时的其他数据,例如指定下一个处理人等,当然了,根据不同的业务逻辑可能有所变化。 那么这个请求对应的后台代码如下,如果弄明白了整个数据库的设计,
一般的年总结和计划都应该是在年末年初的交接之时,几个月前我就准备写的,但是由于各种原因,导致迟迟到今日才开始动笔。 本来我在考虑都已经四月十几了,是否还有必要写下去,但是几经思考后,我觉得晚来好过不来,有总比没有要好,于是还是动笔了。 去年可谓是我过去的人生中最顺风顺水的一年,这一年我订婚以及确定好结婚的日子,并在今年正月完婚; 这一年我的工资在原公司实现了翻一
流程启动后,流程节点便进入到了任务相关的部分。可以看到我之前的做法是在启动节点就绑定了form表单,启动时就填写相关的数据。实际上在之前我的做法是不对开始节点做任何操作,知道任务节点的时候再填写相关的数据进行设置。 至于这两种方式的优劣,我暂时还不太确定,单独从功能上来说都是可以实现的,因此大家可以都试一试,然后视不同的情况而定,按自己究竟要用哪种。 而在任务相关的部分,我
流程启动后,流程节点便进入到了任务相关的部分。可以看到我之前的做法是在启动节点就绑定了form表单,启动时就填写相关的数据。实际上在之前我的做法是不对开始节点做任何操作,知道任务节点的时候再填写相关的数据进行设置。 至于这两种方式的优劣,我暂时还不太确定,单独从功能上来说都是可以实现的,因此大家可以都试一试,然后视不同的情况而定,按自己究竟要用哪种。 而在任务相关的部分,我
流程启动后,流程节点便进入到了任务相关的部分。可以看到我之前的做法是在启动节点就绑定了form表单,启动时就填写相关的数据。实际上在之前我的做法是不对开始节点做任何操作,知道任务节点的时候再填写相关的数据进行设置。 至于这两种方式的优劣,我暂时还不太确定,单独从功能上来说都是可以实现的,因此大家可以都试一试,然后视不同的情况而定,按自己究竟要用哪种。 而在任务相关的部分,我
原文地址:http://blog.csdn.net/qq_30739519/article/details/51166062 1:工作流的概念 说明: 1) 假设:这两张图就是华谊兄弟的请假流程图 2) 图的组成部分: A. 人物:范冰冰 冯小刚 王中军 B. 事件(动作):请假、批准、不批准 工作流(Workflow),就是“业务过
刚才也是无意搜了下自己的最近发表的activiti系列博文,无意中发现居然在别人的csdn博客中也成了原创。 。。。。。。
刚才也是无意搜了下自己的最近发表的activiti系列博文,无意中发现居然在别人的csdn博客中也成了原创。 。。。。。。
流程定义部署之后,自然就是流程定义列表了,但和前一节一样的是,这里也是和之前单独的activiti没什么区别,因此也不多说。我们先看看列表页面以及对应的代码,然后在一步步说明点击启动按钮时如何调用自定义的form表单。<br><br><br> 流程定义列表页面如下:<br><img src="http://img.blog.csdn.net/20160414185557292?water