`

交易三期808问题

阅读更多

1 XiaoerTransferMoeny,少加了一个out_trade_no,
没有被单元测试覆盖到的代码,非常容易出错.
isSuccess()==false,这个也应该log.error一下,不然测试的时候很难发现问题。
2  设置Mysql编码集

set @@character_set_client = 'GBK';
set @@character_set_connection = 'GBK';
set @@character_set_results = 'GBK';
set @@character_set_database = 'GBK';
set @@character_set_server= 'GBK';

 

3 JIRA连接Mysql
     

   <Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false">
          <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
            username="root"
            password="yundong"
            driverClassName="com.p6spy.engine.spy.P6SpyDriver"
            url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"
            minEvictableIdleTimeMillis="4000"
            timeBetweenEvictionRunsMillis="5000"
            maxActive="20" />

 4 JIRA 连接Oracle

  <Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false">
          <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
            username="jiradb"
            password="jiradb"
            driverClassName="com.p6spy.engine.spy.P6SpyDriver"
            url="jdbc:oracle:oci:@dev-refund"
            connectionProperties="SetBigStringTryClob=true"
            maxActive="20" />

 

5 建Oracle
给一个用户赋给权限,并能访问Oracle表空间。
   create user jiradb identified by jiradb;
   grant create session, resource,unlimited tablespace to jiradb

再把这个用户删除,并删除掉这个用户下的所有东西。
   drop user jiradb cascade;

如果已经有人用这个用户登录到数据库,使用kill -9 id 杀掉连接到数据库的进程
如果遇到了数据库死锁,应该怎么做?
    select spid from v$process where addr in (select paddr fr om v$session where username = upper('jiradb'));
再切换到root去,将列出的process 一个一个的杀掉

 

6 怎么连接到我们的数据库用Oracle sudo连接上去
[root@test164 ~]# su - oracle
[oracle@test164 ~]$ sqlplus "/as sysdba"

 

7 SqlMap 技巧,dynamic preprend =  可以根据后面的显示来决定是否添加where

<dynamic prepend=" where ">
 <isGreaterThan prepend="and" property="buyerId" compareValue="-1"><![CDATA[
  buyer_id = #buyerId#
  ]]></isGreaterThan>
 <isGreaterThan prepend="and" property="sellerId" compareValue="-1"><![CDATA[
  seller_id = #sellerId#
  ]]></isGreaterThan>
 <isGreaterThan prepend="and" property="refundStatus" compareValue="-1"><![CDATA[
  refund_status = #refundStatus#
  ]]></isGreaterThan>
</dynamic>

 

8 在同一个JVM中,stastic变量被共享了,所以不能共同使用
在用mvn test的时候,static 变量如果被修改了,会导致另外一个测试也出错。所以用
protected static final String str="new String";可以保证不能被修改。

 

9 在Denali中得到BeanFactory。

ServiceManager serviceManager = SingletonServiceManagerLoader.getInstance(DEFAULT_SERVICE_CONFIG_FILE);
BeanFactoryService beanFactory = (BeanFactoryService) serviceManager.getService(BeanFactoryService.SERVICE_NAME);

 

10 将Antx同步到Maven库中
登录到10.1.6.166上,运行
10.1.6.166   root/hello123
su - maven
/home/maven/module2pom/bin/run.sh
将Antx库同步过来
访问 http://10.1.6.166:8081/artifactory/webapp/ 用admin/taobao123456789 登录
Import from path:/home/maven/module2pom/pom/snapshot

 

/home/maven/work/run.sh

 

 

11 重新部署TradeManager

~/trademanager/bin/deploy.sh update
~/trademanager/bin/deploy.sh compile
killall -9 java
~/trademanager/bin/jbossctl start

 

12 HessianRefundServiceImpl,Webx里面Hessian的访问方式.
发现实际上已经设置了,但是运行的时候却是没有设置,可能调试的时候遇到的是两个类,那么在运行的时候,需要观察他的HashCode是否一样。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics