一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

一、引子

近日学习了Flutter开发APP的技术,原来一直做后端,所以现在可以独力做一个包括前,后端的APP,这样可以把这些技术做一个串联。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

二、APP功能概述

简单的日志APP:支持添加日志,查询历史日志功能。

三、所用技术

前端:Flutter。开发工具:VS Code。运行环境:Android。

后端:C#,WebSocket,mysql。开发工具:VS Studio 2017。运行环境:windows。

四、效果

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

APP最终效果

五、开发步骤

1,数据库设计

2,后端服务开发

3,前端APP开发

六、数据库设计

数据库使用mysql,只需简单创建一个表即可。

包括以下字段:id(int,自增),date(DateTime,日志的时间),Titlevarchar,标题),

content(varchar,内容)。

1,创建数据库:数据库名DayLog,字符集gb2312,确定。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

创建数据库

2,创建数据表,表名daylog。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

创建数据表

到这里数据库就创建完成了,上述步骤比较简略,如有疑问,请在评论中回复。

七、后端服务开发

1,创建一个控制台应用程序,名称为websockerserverExample。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

创建项目

2,从NuGet添加WebsocketSharp库引用。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

添加Websocket引用

3,从NuGet添加WebsocketSharp库引用。

一步一步开发一个完整的APP(上篇)-数据库和后端服务开发(开发app怎么用数据库)

添加json库引用

4,编写webSocket服务启动代码

//创建websocket服务

var server = new WebSocketServer(\”ws://192.168.1.19:7181\”);

//添加服务处理

server.AddWebSocketService<Log>( \”/log\” );

//启动

server.Start();

Console.WriteLine(\”WebSocket启动成功!\”);

while(true)

{

}

5,编写日志处理程序

public class Log : WebSocketBehavior

{

protected override void OnMessage(MessageEventArgs e)

{

//解析json字符串

dynamic obj = JsonConvert.DeserializeObject(e.Data);

String method = obj.Method;

//连接mysql

String connectStr = $\”Server=127.0.0.1;Port=3306;\”

$\”User=root;Database=daylog;Password=123456;Min Pool Size=100;\”

$\”Pooling=false;SslMode=none;Charset=utf8;Allow User Variables = True\”;

DayLog log = new DayLog()

{

ConnectionString = connectStr,

};

dynamic res=new ReturnObj();

if(method==\”Log.Add\”) //处理添加日志请求

{

String title = obj.Title;

String content = obj.Content;

dynamic r=log.Add(title, content);

res.Result = r;

Send(JsonConvert.SerializeObject(res));

}

else if (method == \”Log.GetList\”) //处理获取日志列表请求

{

dynamic r = log.GetList();

res.Result = r;

res.Method = \”Log.GetList\”;

Send(JsonConvert.SerializeObject(res));

}

}

}

6,编写数据库交互代码

//添加日志

public dynamic Add(string title,string content)

{

if(title==\”\”)

return false;

if (content == \”\”)

return false;

String sql=\” insert into DayLog(title,content,date)\”

\” values(\’\” title \”\’,\’\” content \”\’,\’\” DateTime.Now.ToString(\”yyyyMMddHHmmss\”) \”\’)\”;

var table = MysqlHelper.ExecuteReader(sql, ConnectionString);

if (table.RecordsAffected > 0)

{

table.Close();

return true;

}

table.Close();

return false;

}

/// <summary>

/// 获得日志列表

/// </summary>

/// <returns></returns>

public dynamic GetList()

{

String sql=\”select * from DayLog order by date desc\”;

var table = MysqlHelper.ExecuteReader(sql, ConnectionString);

List<dynamic> list = new List<dynamic>();

while (table.Read())

{

list.Add(new

{

Id=table.GetInt32(table.GetOrdinal(\”id\”)),

Title = table[\”title\”].ToString(),

Content = table[\”content\”].ToString(),

Date = table[\”date\”].ToString(),

}) ;

}

table.Close();

return list;

}

6,至此后端服务程序就可以正常启动了。App的开发过程将在下一篇文章中介绍,请关注。有任何疑问请在评论区回复!如需源码,请在评论区填写邮箱地址。

下篇地址: https://www.toutiao.com/i6732366510750171656/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年3月25日 上午8:12
下一篇 2023年3月25日 上午8:22

相关推荐

  • 行政单位财务规则(行政单位财务规则2023最新)

    行政单位财务规则 (2012-12-06财政部中华人民共和国财政部令第71号公布 2013-01-01实施) 第一章 总则 第一条 为了规范行政单位的财务行为,加强行政单位财务管理…

    科研百科 2024年4月21日
    91
  • 研究食用菌的高校(找一个食用菌科研项目申报)

    寻找食用菌科研项目申报 近年来,随着人类对食品安全和健康的关注日益增加,食用菌作为一种营养丰富、味道鲜美的真菌成为了越来越多人的关注焦点。作为一种新型真菌,食用菌具有多种医疗保健功…

    科研百科 2024年4月6日
    72
  • 哪家项目管理软件系统好

    项目管理软件是现代企业进行项目管理的重要工具之一,能够帮助企业更好地规划和管理项目,提高项目的效率和质量。目前市面上有很多优秀的项目管理软件系统,哪家系统更好取决于企业的具体需求和…

    科研百科 2024年7月21日
    79
  • 立讯oa系统

    立讯oa系统: 企业信息化的神器 随着现代企业的快速发展,企业信息化已经成为现代企业必须面对的挑战。而对于企业而言,信息化的成功与否直接关系到企业的未来发展。因此,立讯oa系统成为…

    科研百科 2024年11月10日
    0
  • 客户关系管理的理论

    客户关系管理(CRM)是一种通过信息技术来管理客户关系的方法,旨在提高客户满意度,增加销售和利润。客户关系管理的理论源于人类社会的交往和沟通方式的发展,其目的是帮助企业更好地了解客…

    科研百科 2024年8月27日
    35
  • 医疗器械udi赋码软件(医疗器械怎么赋码)

    UDI赋码软件。 医疗器械udi赋码软件HCreateLabelView2022。 ·1.功能完善:选择一个功能完善的赋码软件能够满足您的需求。软件应具备良好的udi码生成管理和追…

    科研百科 2024年5月2日
    83
  • 从管理到治理 党建引领基层之治根茂实遂|《法治日报》庆祝建党百年系列特刊⑥

    编者按 为庆祝中国共产党成立100周年,《法治日报》推出“奋斗百年路 启航新征程 庆祝中国共产党成立100周年”系列特刊,从平安建设、立法、法治政府、全面建成小康社会、全面依法治国…

    科研百科 2023年6月15日
    425
  • 项目名称 书名号

    项目名称:超级智能助手 书名:超级智能助手 随着科技的不断进步,人工智能已经成为了我们日常生活的一部分。超级智能助手是人工智能领域的一个热门话题,它是指一种能够像人类一样思考和决策…

    科研百科 2024年10月12日
    13
  • 龙湖客户关系管理招聘(龙湖客户关系管理)

    龙湖客户关系管理:从领先到卓越 自1998年龙湖创立以来,客户关系管理一直是该公司的核心战略之一。今天,龙湖已成为亚洲最大的房地产开发商之一,其客户关系管理方面也已成为行业的佼佼者…

    科研百科 2024年6月8日
    56
  • 发改委项目进度管理系统

    发改委项目进度管理系统 发改委是政府部门中负责项目审批、资金支持和项目管理的重要机构。随着项目的不断增多,发改委项目进度管理系统成为了项目管理中不可或缺的工具。本文将介绍发改委项目…

    科研百科 2024年12月23日
    3