法律通APP的设计与实现
摘要:基于法律服务市场的信息需求,为普通用户和律师提供一个资讯、服务和沟通平台,采用SSM框架、Java语言和MySQL数据库,设计和开发了基于Android的法律通APP,实现了手机端的法律信息查询(律师、公证处、司法鉴定机构、法律援助机构、法律法规、法律图文案例、办事指南等)、诉讼小助手、机器人应答服务、法律咨询、话题分享等功能,还有Web后台管理功能。该系统满足了普通用户和律师进行法律事务相关信息检索以及在线沟通的实际需要,功能简洁实用,界面友好,运行稳定。
关键词:APP;法律事务;Android;Web设计
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)19-0116-04
Abstract: Based on the information demand of legal services market, in order to provide an information, service and communication platform for ordinary users and lawyers, it used SSM framework, the Java language and MySQL database to design and develop Legal Affairs APP based on Android system. The platform realized such functions as the legal affairs information retrieval (lawyers, public notaries, legal aid agencies, judicial authentication institutions, laws and regulations, Legal Cases and services guide), the helper of litigation, the robot response services, legal consulting, topics sharing and other Web management functions. This system meets the practical needs of ordinary users and lawyers in legal affairs information retrieval and online communication, with simple and practical functions, friendly interface and stable operation.
Key words: APP; Legal affairs; Android; Web designing
1 背景
党的十八届四中全会确立了依法治国的基本方略,法律成为事关人民幸福安康和国家长治久安的基本保障。人民群众对于法律的了解和运用变得更为重要,律师作为人民群众与法律之间的桥梁,发挥着至关重要的作用。然而,当前中国法律服务市场存在着明显的“二八”问题,即20%的律师创造了整个行业80%的收入,另外80%(尤其是刚从业的年轻律师)缺乏案源,律师和当事人两个群体之间的信息不对称[1]。
随着法律意識增强,人们也希望能够以更方便快捷的方式了解法律信息,提高自己的法制素养。同时,移动互联网的普及大大改变了人们的生活和学习方式,碎片化移动端学习的特征日渐明显[2]。针对法律服务市场的信息需求,设计开发法律通APP,为普通用户和律师提供一个沟通与服务平台,来实现当事人与律师的及时沟通、法律法规以及各种办事服务机构等信息查询。下文将从系统需求分析、设计和实现等几个方面对法律通APP进行阐述。
2 系统需求分析
法律通APP,主要满足用户通过移动端方便地在网络上获取法律法规、司法公证、法律图文案例等信息,寻求或者提供合适的法律咨询和援助服务[3]。系统用户主要包括三类:普通用户、律师以及管理员。
1)普通用户,可以查询律师、公证处、司法鉴定机构、法律援助机构等信息;可以查询法律法规、法律图书与案例、办事指南等;可以使用诉讼小助手;可以使用智能机器人进行问题咨询。查找到合适的律师后,可以进行咨询。
2)律师,可以查询法律法规、法律图书与案例、办事指南等;可以使用诉讼小助手;可以使用智能机器人进行问题咨询;可以查看、发布或评论感兴趣的话题,实现在线交流。
3)系统管理员,负责管理普通用户和律师;管理法律法规以及图文案例等。
三类用户用例图如下图1所示。
3 系统设计
依据三类用户角色的功能需求分析,该系统功能模块主要包括:注册/登录、热门资讯管理、服务推荐管理、后台管理等,如下图2所示。
1)注册/登录:普通用户和律师用户可以进行注册、登录、注销、退出等。
2)热门资讯管理:普通用户和律师用户可以进行公证处、法律援助、司法鉴定等查询以及法律咨询;普通用户还可以进行律师查询,律师用户还可以进行话题分享。
3)服务推荐管理:普通用户和律师用户都可以进行法律法规、图文案例和办事指南等查询,可以使用诉讼小助手和机器人应答服务。
4)后台管理:系统管理员可以进行普通用户管理、律师用户管理、法律法规管理和图文案例的管理。
5)个人中心:可以管理个人基本信息和业务相关信息等。
在需求分析和总体功能模块划分的基础上,给出数据库的逻辑结构设计,包含以下9个数据库表:
1)用户(用户ID,用户名,密码,用户姓名,用户性别,联系电话,地址,用户照片,用户状态);
2)律师(律师ID,用户名,密码,律师姓名,律师性别,联系电话,所在律所,律师年龄,地址,律师执业证件号,擅长领域,律师照片,律师状态);
3)公证处(公证处ID,公证处名,联系电话,地址,公证处照片,公证处介绍);
4)司法鉴定(鉴定ID,鉴定名,联系电话,地址,鉴定处照片,鉴定处介绍);
5)法律援助(法援ID,法援名,联系电话,地址,法援照片,法援介绍);
6)法律法规(法律ID,法律名,法律类型,出台时间,发布机关,法条内容);
7)图文案例(图文ID,标题,图片,发布时间,发布内容);
8)话题(话题ID,话题内容,话题发布者用户名,话题标题,话题发布时间);
9)评论(评论ID,评论内容,评论者用户名,话题ID)。
4 系统功能实现
下面从开发技术与软硬件环境配置、主界面设计效果以及关键功能的设计与实现等方面阐述法律通APP的系统实现。
4.1 开发技术与环境
法律通APP的开发,选择Eclipse开发手机用户端和MyEclipse开发Web后台管理端,采用JDK 1.7集成开发环境和Tomcat7服务器。选择开源MySQL数据库及当前流行且兼容性较好的JAVA语言,手机系统Android4.3。
采用MVC(Model-View-Controller)模式,将数据、业务逻辑、界面显示相分离。采用JavaScript实现Web页面的交互效果,采用jQuery框架简化了JavaScript编程,而且jQuery框架直接支持AJAX编程。采用了SSM(SpringMVC-Spring-Mybatis)框架实现Web后端业务[4]。在前端和后端的请求和数据的传输采用了JSON(JavaScript Object Notation)存储。
4.2 主界面设计
普通用户主界面和律师用户主界面如下图3、图4所示[5]。
4.3 关键功能的设计与实现
1)前后端数据库连接与共享[6]
因为系统移动前端和后台需要共享数据库,在数据库连接时采用了JSON方法传送数据。下面以普通用户的登录为例说明具体技术实现。
打开法律通APP,用户选择角色后进入到普通用户的登录界面,输入已经注册过的用户名和密码,若与MySQL数据库中的用户名、密码相符,则可以进入到主页面。Eclipse端与MyEclipse端的项目在连接同一个MySQL数据库上的操作,具体过程:首先,用户点击“登录”,Eclipse端调用onClick事件,因需要与外面的数据库链接,所以建立一个线程,将所输入的用户名、密码使用json方法传输到MyEclipse端;然后,在MyEclipse端实现与MySQL数据库的比对,并用status记录下数据是否符合,并传回Eclipse端;接着,在Eclipse端进行解析,若status=1,则数据符合,登录成功,若status=0,则说明数据存在问题,提醒用户重新填写。
2)信息检索功能实现[7]
各种信息检索,包括公证处、法律援助、司法鉴定、律师、法律法规、图文案例和办事指南等,技术实现方法是类似的,仅以法律法规查询为例阐述,实现关键代码如下:
LawSelectActivity.java
case R.id.btn_select://点击查询
String et_lawname1=et_lawname.getText().toString().trim();
String actv_lawtype1=actv_lawtype.getText().toString().trim();
String et_lawplace1=et_lawplace.getText().toString().trim();
Intent intent = new Intent();
intent.putExtra("et_lawname", et_lawname1);//将数据存储在intent中
intent.putExtra("actv_lawtype", actv_lawtype1);
intent.putExtra("et_lawplace", et_lawplace1);
intent.setClass(LawSelectActivity.this,LawDetailActivity.class);
startActivity(intent);//实现跳转
String[] cuisines = { "法律", "行政法规", "部门规章", "地方政府规章"};
ArrayAdapter
android.R.layout.simple_dropdown_item_1line, cuisines);
actv_lawtype.setAdapter(adapter);
3)诉讼小助手功能[7]
进入到诉讼费用计算界面,选择诉讼类型和标的额后,点击计算即可查看到参考价格。实现关键代碼如下:
JisuanActivity.java
case R.id.btn_jisuan:
int et_biaodi1=Integer.parseInt(et_biaodi.getText().toString().trim());
//将从ExitText中获取的String型内容转为整形int
String actv_sutype1=actv_sutype.getText().toString().trim();
4)机器人应答功能实现[7]
机器人的应答功能实现,主要借助图灵机器人第三方平台。在官方网站上,借助其服务器创建自己的个人机器人“小小律师”,然后对其私有语料库进行添加。例如,输入标题“刑法第411条”,输入答案“【放纵走私罪】海关工作人员徇私舞弊,放纵走私,情节严重的,处五年以下有期徒刑或者拘役;情节特别严重的,处五年以上有期徒刑”,点击提交即可产生一条语料。此时还需设置其问答匹配度,才能使用户输入问题与语料库实现有效匹配,使机器人能够尽量做出精准回答。然后在Eclipse开发环境中,配置好创建过程中的API接口和apikey的对应信息,并根据线程传输来的信息,设置对话的布局,实现双方的交流。功能实现关键代码如下:
private static final String URL = "http:///openapi/api";
private static final String API_KEY = "b5b73ec2413445469812913cb1cd4128";
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
ChatMessage chatMessage = mDatas.get(position);
ViewHolder viewHolder = null;
if (convertView == null)
{ // 通过ItemType设置不同的布局
if (getItemViewType(position) == 0){
convertView = mInflater.inflate(R.layout.item_from_msg, parent,false);
viewHolder = new ViewHolder();
viewHolder.mDate = (TextView) convertView.findViewById(R.id.id_form_msg_date);
viewHolder.mMsg = (TextView) convertView.findViewById(R.id.id_from_msg_info);
} else{
convertView = mInflater.inflate(R.layout.item_to_msg, parent,false);
viewHolder = new ViewHolder();
viewHolder.mDate = (TextView) convertView.findViewById(R.id.id_to_msg_date);
viewHolder.mMsg = (TextView) convertView.findViewById(R.id.id_to_msg_info);
}
convertView.setTag(viewHolder);
} else{
viewHolder = (ViewHolder) convertView.getTag();
}
// 设置数据
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
viewHolder.mDate.setText(df.format(chatMessage.getDate()));
viewHolder.mMsg.setText(chatMessage.getMsg());
return convertView
}
后台管理主要实现了系统管理员的用户管理、律师管理、法律法规管理和图文案例管理的增、删、改、查等基本操作功能,具体实现不再赘述。
5 结束语
法律通APP系统的设计与实现,为普通用户和律师提供了法律相关信息检索和法律事务咨询服务的交流平台,实现了热门资讯管理、服务推荐管理、后台管理以及个人中心等功能模块,还可以使用智能机器人应答服务,满足了不同用户的多样化法律需求。今后,还需要研究完善的方面,比如优化界面设计,手机端增加举报用户功能以及嵌入语音视频实时聊天交流功能等。
参考文献:
[1] 严林. 法律服务APP的现状与发展前景[C]. 第一届全国法学本科生学术论坛论文集, 2015: 441-452.
[2] 王春苗. 全省首款法律援助APP在温州上线[N]. 浙江法制报, 2016-07-05: 2.
[3] 胡利敏, 崔祥云. 法律咨询APP交互设计研究[J]. 电脑知识与技术, 2018(3): 98-100, 107.
[4] 杨开振. Java EE互联网轻量级框架整合开发—SSM框架和Redis实现[M]. 北京: 电子工业出版社, 2017.
[5] 唐亮, 杜秋陽. Android开发基础[M]. 北京: 高等教育出版社, 2016.
[6] 王庆喜, 赵浩婕. MySQL数据库应用教程[M]. 北京: 中国铁道出版社, 2016.
[7] 唐亮, 王洋. Java开发基础[M]. 北京: 高等教育出版社, 2016.
版权声明:
1.十号范文网的资料来自互联网以及用户的投稿,用于非商业性学习目的免费阅览。
2.《法律通APP的设计与实现》一文的著作权归原作者所有,仅供学习参考,转载或引用时请保留版权信息。
3.如果本网所转载内容不慎侵犯了您的权益,请联系我们,我们将会及时删除。