大五人格心理测试网页端实现

机缘

  原先我不是计算机科班毕业的学生,大学毕业前我想用问卷星做大五人格的调查。但是发现想要实现我需要的功能需要花费大量的钱来冲会员。以问卷星为例,要实现我需要的功能至少需要2999一年,于是乎我便萌生了自己撰写功能的想法。我想看看实现这些功能到底需要多少钱一年。 

大五人格心理测试网页端实现_第1张图片


实现过程记录

服务器:

因为要实现的功能比较简单,因此我选择价格比价低百度云服务器。

 也因为价格比价比较低所以百度云服务器的功能非常基础,除了重装系统,重启等功能以外,几乎没有其它功能了。但是对于一个小网站来说也是勉强够用的。如果想了解,百度云服务的体验感受可以到我主页查看,我对百度云服务的体验评价。

前端:

因为我要实现的功能比较基础,并且我需要快速搭建网站我选择了直接套用前端框架进行撰写。

大的前端框架我使用了gitee上的项目参考链接如下:SSM: Spring boot整合Mybatis实现增删改查

大家可以参考它的前端框架进行撰写,前端效果图如下:

大五人格心理测试网页端实现_第2张图片

 大五人格心理测试网页端实现_第3张图片

 后端可以实现一些数据的管理:

大五人格心理测试网页端实现_第4张图片

 还有一些小的需要优化的地方,我使用elemnt框架进行设计,链接如下:Element - The world's most popular Vue UI framework

后端:

后端我使用springboot作为框架,mysql作为数据库,shiro作为安全框架,mybatis-plus为操作数据库的工具。当时我还想使用我新学的Redis技术作为数据库缓存数据。

大五人格心理测试网页端实现_第5张图片

但是实际项目运行起来springboot+mysql+shiro已经占用了900MB的内存,已经不能添加其他的组件了,不然内存会爆炸。因此就暂时使用这些老技术了。

 


收获总结

1、一定要开启事务:

在撰写项目的过程中觉得事务没什么重要的因此没有开启事务,直到上线测试的时候才发现,数据提交异常后会导致数据库数据混乱,也影响了用户满意度。

数据库错乱图片:

大五人格心理测试网页端实现_第6张图片

 大五人格心理测试网页端实现_第7张图片

 2、数据之间的依赖关系可以采用一个类内部嵌套其它类的方式:

(1)、在主类内部嵌套其它类:

@TableName("animal_handled")
public class AnimalHandled implements Serializable {

    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private String name;

    private Integer tiger;

    private Integer peacock;

    private Integer koala;

    private Integer owl;

    private Integer chameleon;

    private Integer phid;

    // 这是被嵌套的类
    @TableField(exist = false)
    private PersonalityHandled personalityHandled;


    public PersonalityHandled getPersonalityHandled() {
   
}

(2)、查询主类的时候给内嵌类赋值:

 animalHandleds.forEach(
                    animalHandled->{
                        PersonalityHandled personalityHandled = personalityHandledService.getById(animalHandled.getPhid());
                        animalHandled.setPersonalityHandled(personalityHandled);

                    }
            );

(3)、发送至前端

 3、数据库的数据是基础:

数据库类的分表和分库一定要想清楚了再进行下一步,不然中途改数据库会导致自下而上的修改代码,十分痛苦。

4、项目一定要仔细检查再发布

不检查就发布项目,容易重新修改项目十分烦躁,一下就是我删除的项目,痛苦。必检查项:1、事务是否开启。2、连接是否有localhost改成服务器的ip。3、前端页面是否能正常显示。

大五人格心理测试网页端实现_第8张图片


后续

后续我还想推出微信小程序端的程序,并不断完善功能,增加一些数据分析功能。

你可能感兴趣的:(p2p,linq,网络协议)