【工作笔记】003 一脸懵逼的框架

WADE框架:

项目采用开发框架非SSM、非SSH,而是自己公司开发的WADE框架:

文档地址

http://doc.wadecn.com/

简介(摘自百度):

WADE框架是基于J2EE体系架构的应用系统开发框架,可广泛的做为B/S架构下的应用系统的底层开发框架,特别在电信业务支撑系统中积累了大量的不同场景下的实现方案和丰富的业务组件,更适合做为基于B/S架构的门户网站和各种业务管理系统的底层开发框架,对于企业级应用系统能够提供更好的使用操作的一致性、应用系统的稳定可靠性以及可扩展性等。

xml报文:

项目http数据传输采用xml方式,并没有采用json格式,我想是因为json格式是近几年才流行起来的数据格式,而公司的系统诞生很早,所以就采用xml格式。

设置http请求数据格式方法:

    //xml
    Content-Type : text/xml

    //json
    Content-Type : application/json

关于xml:

XML的解析方式分为四种:1、DOM解析;2、SAX解析;3、JDOM解析;4、DOM4J解析。常用的就是是Dom4j,它的性能最好(对于小的xml)。

Dom4j解析xml示例:

    public static void main(String[] args) throws SAXException, DocumentException, IOException {
            String xmlFile = "C:\\Users\\Administrator\\Desktop\\test.xml";
            SAXReader saxReader = new SAXReader();
            //读取xml文档对象
            Document document = saxReader.read(xmlFile);
            //获取root元素
            Element root = document.getRootElement();
            //获取root下的name元素的值
            System.out.println(root.element("name").getText());
            //遍历
            Iterator<Element> iterator = root.elementIterator();
            while (iterator.hasNext()){
                Element element = iterator.next();
                System.out.println(element.getName()+":"+element.getText());
            }

            //在root下添加元素
            root.addElement("sex").setText("boy  ");
            //3个参数,含义分别为:缩进格式,是否换行,编码
            OutputFormat opf=new OutputFormat("\t",true,"UTF-8");
            //去除首位空格
            opf.setTrimText(true);
            XMLWriter writer=new XMLWriter(new FileOutputStream(xmlFile),opf);
            writer.write(document);
        }

主要几点:

1.创建xml解析器:

SAXReader saxReader = new SAXReader();

2.读取xml文档对象

    Document document = saxReader.read(xmlFile);

3.获取root元素

    Element root = document.getRootElement();

4.获取root下的name元素的值

   System.out.println(root.element("name").getText());

5.遍历

    Iterator<Element> iterator = root.elementIterator();

关于代码优化:

优化:null与”“和其他值比较时放在前面,当其他值为null时可以避免NullPointException

对List遍历时尽量使用迭代器iterator,会比直接用for循环效率高

看项目的代码时返现有些方法达到了300行左右,异常庞大,感觉不是很好,并且用了大量的if,并没有将if语句中的逻辑抽离出来。

存在大量重复判断为null的情况。

存在好多参数超过5个以上的方法,且参数类型相同,稍不注意就会传错参数,感觉不是很好,可以考虑使用Builder模式来提高可读性。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 很高兴能回答您的问题,使用PyQt5框架编写笔记本软件可以通过以下步骤实现: 1. 创建一个PyQt5应用程序,并设置窗口大小和标题。 2. 在窗口中添加文本框,用于输入文本。 3. 添加按钮,用于保存和打开文件。 4. 使用PyQt5的文件对话框,以便用户可以选择要保存或打开的文件。 5. 使用Python的open()函数来保存或打开文件。 6. 实现程序的其他功能,如搜索、撤销/重做等。 ### 回答2: 使用Pyqt5框架开发一个笔记本软件可以实现以下功能: 1. 编辑笔记:用户可以创建新笔记,编辑现有笔记或删除不需要的笔记。软件界面提供一个文本编辑器,用户可以在其中输入和修改文本内容,并且可以对文本进行格式化,如选择字体、字号、颜色等。 2. 分类和标签:用户可以对笔记进行分类和标签。分类可以根据不同主题或用途,如工作、学习、个人等进行分类管理。标签可以根据关键词进行添加和查找,方便用户整理和检索笔记。 3. 笔记管理:用户可以通过软件界面对笔记进行管理,可以对笔记进行重命名,设置笔记的创建日期和最后修改日期。还可以设置笔记的优先级、提醒和星标等属性,方便用户按照不同的需求对笔记进行排序和过滤。 4. 导入和导出:用户可以将已存在的笔记导入到软件中,或将软件中的笔记导出为其他格式,如文本文件、PDF文件等。这样用户可以方便地与其他人共享和传递笔记。 5. 数据备份和恢复:软件可以提供数据备份和恢复的功能,用户可以定期备份笔记数据,以防止数据丢失或损坏。当需要时,用户可以通过导入备份文件来恢复数据,确保笔记的安全性。 6. 用户界面个性化:软件界面可以提供用户个性化设置的功能,如选择不同的主题、布局和快捷键等,以满足不同用户的喜好和习惯。 通过利用PyQt5框架的丰富功能和灵活性,可以开发出一个功能齐全、易于使用的笔记本软件,满足用户对笔记管理的需求。 ### 回答3: 使用PyQt5框架编写一个笔记本软件可以提供一个用户友好的界面,方便用户记录、编辑和管理各种类型的笔记。 首先,我们可以使用PyQt5的QWidget作为主窗口,并设置合适的窗口大小。然后,可以在窗口中创建一个多页的标签栏,每个标签页代表一个笔记。 接下来,可以在每个标签页上添加适当的控件,如QTextEdit或QPlainTextEdit,以实现用户输入和编辑文本内容的功能。同时,可以提供一些按钮和菜单,例如保存、打开、剪切、复制和粘贴等,以增强用户的操作体验。 此外,还可以在界面中添加其他功能组件,如日历控件或待办事项列表,以满足用户不同的需求。例如,用户可以在软件中添加一些提醒事项,或者将某些笔记标记为重要,方便日后查看。 为了增强用户使用体验,可以在软件中设置一些快捷键,以方便用户快速完成常用操作,如Ctrl+S保存笔记,Ctrl+Z撤销等。 最后,可以为软件添加一个简洁美观的界面风格,以及一些自定义设置,如字体、颜色和背景等,以满足用户对个性化的需求。 综上所述,使用PyQt5框架编写一个笔记本软件可以实现用户友好的界面和丰富的功能,提供便捷、高效的笔记记录和管理体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勇敢牛牛_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值