<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[BraveHeart568的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/BraveHeart568</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; BraveHeart568]]></copyright><item><title><![CDATA[maven执行install时跳过test]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/90374331</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/90374331</guid><author>BraveHeart568</author><pubDate>Mon, 20 May 2019 14:34:05 +0800</pubDate><description><![CDATA[有时候maven install时要执行测试，但是很多时候测试不通过，打包失败。所以想跳过测试。

在&lt;build&gt;&lt;plugins&gt;&lt;/plugins&gt;&lt;/build&gt;里面添加

&lt;plugin&gt;
    &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
   ...]]></description><category></category></item><item><title><![CDATA[java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/81326117</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/81326117</guid><author>BraveHeart568</author><pubDate>Wed, 01 Aug 2018 10:31:28 +0800</pubDate><description><![CDATA[tomcat启动报错，找不到类，但是jar包在WEB-INF/lib下面是存在的，也Add to Build Path了，但是怎么也不管用。最后在server里面右键点击clean，把缓存清理一下，然后启动项目就好了。

有时候报错莫名其妙，感觉自己做的没问题，但是总是解决不了，实在没有头绪时，试一下清tomcat缓存吧。...]]></description><category></category></item><item><title><![CDATA[linux学习（二）（Linux下安装jdk）]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/78193875</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/78193875</guid><author>BraveHeart568</author><pubDate>Tue, 10 Oct 2017 16:11:17 +0800</pubDate><description><![CDATA[学习了一下Linux的命令，想自己练练手，于是想到在我的Linux上装一个jdk,一是巩固之前所学习的命令（实践一下），二是jdk是必须要安装的，以后的学习用的到。
所以今天就试着在Linux下安装一下jdk。
首先需要下载linux环境下的jdk安装包，这在官网上都有，我下载的是  jdk-8u144-linux-i586.tar.gz


1.在/usr/目录下创建java目录
]]></description><category></category></item><item><title><![CDATA[linux学习（一）]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/78139082</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/78139082</guid><author>BraveHeart568</author><pubDate>Sat, 30 Sep 2017 09:14:16 +0800</pubDate><description><![CDATA[最近想学习一下Linux，毕竟Linux系统对于开发人员来说还是挺重要的。以前也接触过一点，但是没有系统地去学习，算是Linux小白一个。现在争取每天拿出点时间，学习一下Linux操作。首先就是Linux的命令，我觉得这是最基本的东西，所以我得先从学会各种命令的使用开始。
第一步，学习Linux必须要动手操作，我安装了一个虚拟机软件叫VMware Workstation，然后在这个软件里新建了一]]></description><category></category></item><item><title><![CDATA[java解析xml并把节点值存储到数据库中]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/77067531</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/77067531</guid><author>BraveHeart568</author><pubDate>Thu, 10 Aug 2017 17:45:23 +0800</pubDate><description><![CDATA[最近做了一个接口，发送请求的xml字符串得到另一个项目的返回的xml字符串，再进行解析，解析之后把数据存储到数据库中。自己记录下这个过程，以便以后用得到。
返回的xml字符串是这种形式的


HEAD>
2


9200
01101024
2017
利润中心
利润中心名称
 

9300
01101012
2017
利润中心
利润中心名称


我需要解析]]></description><category></category></item><item><title><![CDATA[oracle存储过程把'a,b,c'类型的值转换成'a','b','c'形式的值]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/75014340</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/75014340</guid><author>BraveHeart568</author><pubDate>Wed, 12 Jul 2017 15:10:03 +0800</pubDate><description><![CDATA[问题：我在数据库的一个字段里存储的是'a,b,c'形式的值，但是当我在sql中使用in或者not in 来查询时，就遇到麻烦了。
解决方法，一个是在保存时就插入'a','b','c'形式的值，一个是写了一个存储函数来转换。虽然最终选择了第一种，但是觉得
有必要自己把这个存储函数记下来以便以后用到。
--把‘a,b,c’形式的值转成‘a’,'b','c'形式的值，以便在sql中使用in
  ]]></description><category></category></item><item><title><![CDATA[oralce存储过程拼接sql字符串，并执行sql字符串给变量赋值]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/74910293</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/74910293</guid><author>BraveHeart568</author><pubDate>Mon, 10 Jul 2017 15:14:09 +0800</pubDate><description><![CDATA[之前写存储过程，用到的sql都是相对固定的，最多就是往sql里传几个值。最近遇到需要在存储过程里面动态拼接sql。
其实挺简单，先定义sql_str变量，然后给其赋一个sql字符串的值：
sql_str := 'select count(*)  from amc_fwsp_sap_voucher_v t 
              where t.usnam = '''||userno||]]></description><category></category></item><item><title><![CDATA[oracle得到汉字首字母]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/73826540</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/73826540</guid><author>BraveHeart568</author><pubDate>Wed, 28 Jun 2017 10:08:38 +0800</pubDate><description><![CDATA[最近项目上用到的一个函数，觉得比较有用，记录下来。oracle得到汉字首字母是一个数据库函数，使用时调用这个函数，传参数就可以了。
FUNCTION F_GET_PINYIN(P_NAME IN VARCHAR2) RETURN VARCHAR2 AS
    V_COMPARE VARCHAR2(100);
    V_RETURN  VARCHAR2(4000);
    FUNCTI]]></description><category></category></item><item><title><![CDATA[oracle存储过程调用webservice]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/72899634</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/72899634</guid><author>BraveHeart568</author><pubDate>Wed, 07 Jun 2017 14:49:48 +0800</pubDate><description><![CDATA[需要触发某张表，当新增或修改这张表时，调用存储过程，然后存储过程再调用webservice。
create or replace trigger userpostexchange_t
  after insert or update  on userpostexchange
  for each row
declare
    cn     varchar2(50);
    get_]]></description><category></category></item><item><title><![CDATA[oracle发送邮件]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/72879379</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/72879379</guid><author>BraveHeart568</author><pubDate>Tue, 06 Jun 2017 15:30:39 +0800</pubDate><description><![CDATA[项目上有一个需求，当培训课开始报名时，需要向相关的人员发送邮件来通知大家，不是手动，而是在数据库定点自动发送邮件。
实现思路：在存储过程里面向发送邮件相关的表里面添加数据，然后当添加数据时在触发器触发发送邮件的事件，即调用发送邮件的存储过程，发送邮件的存储过程如下：
PROCEDURE P_SEND_MAIL(p_recipient VARCHAR2, -- 邮件接收人
          ]]></description><category></category></item><item><title><![CDATA[表xxx发生了变化，触发器/函数不能读它]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/72779551</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/72779551</guid><author>BraveHeart568</author><pubDate>Sat, 27 May 2017 11:10:53 +0800</pubDate><description><![CDATA[当删除表中的数据的时候，报错了，是触发器/函数不能读它
我的触发器是当一个表中的数据改变（增、删、改）后，操作另一张表中的数据，对另一张表中的数据进行增删操作。
我修改后的触发器是这样的，在declare语句块里面加了“pragma autonomous_transaction;“，让oracle知道触发器是自定义事物处理。原因应该是当删除一张表中的数据时，我同时要修改另一张表的数据。如果删除]]></description><category></category></item><item><title><![CDATA[url特殊字符处理]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/53610880</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/53610880</guid><author>BraveHeart568</author><pubDate>Tue, 13 Dec 2016 16:17:00 +0800</pubDate><description><![CDATA[有个功能，从前台传一个查询条件到后台，比如 where=" like %2016年%",把这个where经过encodeURI(where)传过去。一开始没有想到url特殊字符的问题，直到查询出来的数值不对，但是手动在数据库里执行是对的，然后仔细查看url，才发现那个where中的%20根本不是想要的%20，而是作为encodeURI之后的url的一部分。所以where中的%需要转义才可以。把%进]]></description><category></category></item><item><title><![CDATA[java正则表达式]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/53374306</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/53374306</guid><author>BraveHeart568</author><pubDate>Mon, 28 Nov 2016 10:02:31 +0800</pubDate><description><![CDATA[java正则表达式。之前用了一个JavaScript正则表达式来验证密码，但是需要与项目其他地方结合，所以验证密码的功能由JavaScript改到了java上。一开始以为java的正则表达式和JavaScript的正则表达式是一样的呢，看来我想多了。
java正则表达式在java的API里面有详细的介绍。为了加强自己的知识储备，把它搬到这里吧。
在javaAPI里面，正则表达式是java.ut]]></description><category></category></item><item><title><![CDATA[JavaScript正则表达式]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/53303152</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/53303152</guid><author>BraveHeart568</author><pubDate>Wed, 23 Nov 2016 11:58:52 +0800</pubDate><description><![CDATA[最近项目组要求对密码进行验证，密码必须由数字、字母、特殊符号三者组成，缺一不可。并且新密码长度必须大于8位。自然想到了使用正则表达式。但是之前很少接触过正则表达式，所以只能在百度上找现成的，然后稍加修改实现验证密码的功能。先贴代码吧

var pwd = &quot;&quot;//你的密码
var reg = new RegExp(/^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&amp;amp;...]]></description><category></category></item><item><title><![CDATA[oracle函数汇总]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/53200932</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/53200932</guid><author>BraveHeart568</author><pubDate>Thu, 17 Nov 2016 15:39:35 +0800</pubDate><description><![CDATA[以下是对oracle中的常用函数进行了汇总介绍，需要的朋友可以过来参考下

 

一、运算符
算术运算符：+ - * / 可以在select 语句中使用
连接运算符：|| select deptno|| dname from dept; 
比较运算符：> >= = != 
逻辑运算符：not and or 
集合运算符： intersect ，union， union all， ]]></description><category></category></item><item><title><![CDATA[window.open打开一个窗口，关闭后再打开此窗口失效]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/53199739</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/53199739</guid><author>BraveHeart568</author><pubDate>Thu, 17 Nov 2016 14:40:08 +0800</pubDate><description><![CDATA[一个表格上有许多列，双击每一列，打开一个窗口显示明细。但是关闭这个窗口之后，再想打开这个窗口，怎么点都没有反应。在代码里面加alert，发现第二次打开时，执行到open时，直接就跳过去了。然后在网上一查，才知道window.open()不能重复打开同一个名字的窗口。比如window.open(url1,"aaa"),打开一个窗口，关闭后再打开，是失效的。
就是因为每一次名字都是aaa。但是这么多]]></description><category></category></item><item><title><![CDATA[oracle根据秒数生成多少小时多少分钟多少秒]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/52984248</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/52984248</guid><author>BraveHeart568</author><pubDate>Mon, 31 Oct 2016 17:36:50 +0800</pubDate><description><![CDATA[有个需求，是根据给定的秒数，来生成多少小时多少分多少秒。比如给你一个2000秒，生成 '0小时33分20秒'
本来是在项目的数据库中写的sql。但是为了便于灵活使用，我写了一个存储过程，在我本地是测试通过了的。先上代码：
create or replace procedure test(NODE_CL_TIME IN  number,str out varchar2) is
begin
 ]]></description><category></category></item><item><title><![CDATA[JavaScript解析json字符串]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/52806909</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/52806909</guid><author>BraveHeart568</author><pubDate>Thu, 13 Oct 2016 14:49:52 +0800</pubDate><description><![CDATA[现在有这样一个json字符串var aaa = &quot;{&quot;name&quot;:小明,&quot;age&quot;:24,&quot;like&quot;:[&quot;food1&quot;:包子,&quot;food2&quot;:馒头]}&quot;

把其转成json以便进行解析。方法很简单 使用eval(&quot;(&quot;+aaa+&quot;)&quot;)即可

如果得到name为小明

var obj = eval(&quot;(&quot;+aaa+&quot;)]]></description><category></category></item><item><title><![CDATA[转：oracle存储过程基本语法]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/52634084</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/52634084</guid><author>BraveHeart568</author><pubDate>Fri, 23 Sep 2016 09:04:14 +0800</pubDate><description><![CDATA[Oracle存储过程基本语法介绍，感觉挺详细的，转载下来，希望共同学习。





Oracle存储过程基本语法 存储过程 
　　1 CREATE OR REPLACE PROCEDURE 存储过程名 
　　2 IS 
　　3 BEGIN 
　　4 NULL; 
　　5 END; 

行1: 
　　CREATE OR REPLACE PROCEDURE 是一个SQL语句]]></description><category></category></item><item><title><![CDATA[转：javascript常用的经典技巧]]></title><link>https://blog.youkuaiyun.com/BraveHeart568/article/details/52414109</link><guid>https://blog.youkuaiyun.com/BraveHeart568/article/details/52414109</guid><author>BraveHeart568</author><pubDate>Fri, 02 Sep 2016 15:08:09 +0800</pubDate><description><![CDATA[在网上看到的，觉得挺不错，收藏了。也分享给大家
1. oncontextmenu="window.event.returnValue=false" 
将彻底屏蔽鼠标右键
no 
可用于Table
2.  取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="return false;" 防止]]></description><category></category></item></channel></rss>