发表于: 2017-09-19 23:26:30

1 714


【今日完成】

昨天听了老大的课,是专门讲金融行业知识的。笔记如下:

金融行业主要有几块领域:支付,P2P,现金贷,区块链

说明:支付是类似支付宝的,P2P是个人对个人的借贷,现金贷是个人的小额贷款,区块链是比特币那一块


行业知识背景

账户体系:实名认证——————身份证(第三方API接口验证名字与号码,查询一次很贵,2元)

                   手机号——现在手机号都是实名认证

                   邮箱

支付分为:

快捷支付

网关支付

实名认证后一般会绑卡

提现:风险大的一步操作,支付宝一般小额是2小时到账,大额审核时间更长。


P2P======人对人

年化率:年化利率是通过产品的固有收益率折现到全年的利率。

借贷一般会定期还利息(一月一次),怕跑路

抵押房产,一般会打折6或8折(为了规避抵押物降价风险)

资金错位,时间错位。


资金池——————>债权预备———>国家不允许做大

有了资金池,可以在无债权的情况下先准备好。一旦有债权,可以立即调用资金。

第三方托管

先有债券,再融资

信息平台不管钱1:发布信息           2:服务——————>借贷双方直接

虽然以上方法看似密不透风,但也要提防虚假标

数字精度

有四位,展示2位

筹款进行中时,利息也是要算的,不然没人会第一个投

第一笔的福利要有,来鼓励第一个投的人

最后一笔保证不超买超卖,一定要控制

金融系统一定一定会有人恶意攻击,所以要安全。也要稳,绝对不能宕机。

=======================================================================================

今天搭建了RMI的DEMO:

首先RMI,必须有服务端与客户端。

下面是服务端的配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
      xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="serviceExporter" class="org.springframework.remoting.rmi.RmiServiceExporter">
   <property name="serviceName" value="ITestMethod" />
   <property name="service" ref="Example" />
   <property name="serviceInterface" value="Service.ITestMethod" />
   <!--<property name="registryPort" value="8080" />-->
   <!-- <property name="servicePort" value="8088" />-->
</bean>

<bean id="Example" class="Service.Example" />
</beans>

这是服务端的代码。可以看到这个Demo是以多线程来模拟远程。

当启动服务端,服务端会以一个线程的形式默默的服务。

package core;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class RmiServer {

public static void main(String[] args) throws InterruptedException {
new ClassPathXmlApplicationContext("server.xml");

       Object lock = new Object();
       synchronized (lock) {
lock.wait();
       }
}
}


以下是客户端的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
      xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

   <bean id="Example" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
       <property name="serviceUrl" value="rmi://localhost:1099/ITestMethod" />
       <property name="serviceInterface" value="Service.ITestMethod" />
   </bean>

</beans>


这是客户端的代码。

可以看到这里是用反射来获取实例,然后调用其方法。

单从代码看,看不出来是本地调用还是远程调用,这说明Spring封装的很好。

package core;

import Service.ITestMethod;
import org.apache.log4j.Logger;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class RmiClient {

private static final Logger LOG = Logger.getLogger(RmiClient.class);

   public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext(
"client.xml");
       ITestMethod testMethod = (ITestMethod) ctx.getBean("Example");
       String result = testMethod.sayHi("龚剑飞");
       LOG.info(result);
   }

}


看看结果:

首先不启动服务端,先启动客户端:

不出意外,报了错,连接被拒绝。


再来试试正常情况:

先启动服务端

端口是1099,正常启动


再在客户端调用方法

打印出了方法返回值,可见调用成功


【今日收获】

听了老大的金融课,对金融行业有了了解

调好了Demo,成功实现了RMI


【明日计划】

明天准备请假


【遇到问题】


【任务进度】

无延期风险

还没拆好禅道


返回列表 返回列表
评论

    分享到