web项目踩坑过程[通俗易懂]

web项目踩坑过程[通俗易懂]sql函数设计: 一开始本来是直接用Java的jdbc直接传输操作语句的。但后来学了存储过程发现存储过程可以提高不少的效率。就重构了自己对数据库的操作代码。包括:开启,查找,修改,关闭。 开启:直接使

sql函数设计:

一开始本来是直接用Java的jdbc直接传输操作语句的。但后来学了存储过程发现存储过程可以提高不少的效率。就重构了自己对数据库的操作代码。包括:开启,查找,修改,关闭。

开启:直接使用的构造函数,以后使用的时候可以直接把对象new成一个static的变量,可以一直使用,直到使用关闭函数。

 

具体操作(查(find),写(write),改(change)):编写的思路是现在mysql数据库里面实现函数和存储过程。

   巨坑提示1,存储过程和函数的区别是,函数必须返回一个数据,return语句必须写,而存储过程可以返回,也可以不返回这个数据。

   一开始我使用的是存储过程,实现find,但是,有个巨坑的东西(mysql的设计缺陷,那就是IN的变量,即存储过程名旁边的参数,不可以直接表示字段,巨坑,还要深入学习动态的sql才可以表示字段),然后我就多写了几个函数,每个函数实现不同字段的查询,比如,findbyemail函数就是通过where email(email是字段)=参数;实现查找。

   然后为了让功能齐全,就设计了多个函数,比如findbyname,findbyphone这些函数存在数据库里。然后数据库编译好。等着Java直接调用(这里比较方便的就是我们的调用直接用的是调用语句 “{call 函数名(?)}”,这里的?问号,是指的你的参数。也意味着你的存储过程或者函数有多少参数就必须用多少个问号,然后发送给数据库。性能提高不少)

                              web项目踩坑过程[通俗易懂]

web项目踩坑过程[通俗易懂]  巨坑提示2,在发送调用存储过程的sql语句的过程中,有可能会出现引号(”)解析错位的尴尬错误,而且我还没办法纠正。比如writeuser存储过程,发送过去的语句被解析错了,就是引号错位。卡了我一上午的时间。然后就使用的函数,放弃使用存储过程。性能影响比较小。还可以返回一个数据可以判断一下。比如我的writeuser函数,我可以这样写,就不会出现这样尴尬的错误了

                                 string  sql = “{?=call writeuser(?????)}”;

 1 public String WriteUser(String name,String phone,String email,String pwd,String status) throws SQLException {
 2         //使用方法:比如写入用户数据name,phone,email,pwd,status,我们可以这样写write("张三","110","110@qq.com","999","1")
 3 
 4         String sql = "{? = call writeuser(?,?,?,?,?)}";
 5 
 6         CallableStatement cs = connection.prepareCall(sql);
 7 
 8         cs.registerOutParameter(1,Types.CHAR);//这里实在规定你函数里面返回的数据类型
 9 
10         cs.setString(2,name);//以下都是在向问号里面传递参数
11 
12         cs.setString(3,phone);
13 
14         cs.setString(4,email);
15 
16         cs.setString(5,pwd);
17 
18         cs.setString(6,status);
19 
20         cs.execute();
21 
22         String value = cs.getString(1);
23         if (value=="1"){
24             cs.close();
25             return "ok";
26         }
27         cs.close();
28         return "no";
29     }

代码100分

 

  

 

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

(0)
上一篇 2022-12-22
下一篇 2022-12-22

相关推荐

  • CSS align-items属性

    CSS align-items属性CSS中的align-items属性是一个非常重要的属性,它决定了一个容器(父元素)内所有的子元素在交叉轴上的对齐方式。了解align-items的使用方法和属性值可以帮助我们更好地布局页面并提高用户体验。

    2024-05-16
    59
  • 技术分享论坛_MySQL Community Server

    技术分享论坛_MySQL Community Server作者:雷霞 爱可生测试团队负责人,专注于 MySQL 相关的测试工作。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 什么是 Mysql Tes…

    2023-02-12
    139
  • 使用pip安装numpy的方法

    使用pip安装numpy的方法Python是一种高级编程语言,被广泛用于科学计算、数据分析、人工智能等领域。其中,numpy是Python科学计算的重要库之一,提供了许多高效的多维数组操作函数和算法。在Python中,使用pip可以方便地安装和更新第三方库。本文将详细介绍使用pip安装numpy的方法。

    2024-06-11
    44
  • mysql常用语句 4 + mysql的约束(非空,唯一,主键,外键)[通俗易懂]

    mysql常用语句 4 + mysql的约束(非空,唯一,主键,外键)[通俗易懂]1.更新语句 update dept1 set loc = 'wz',dname = 'xueshenghui' where deptno = 10; mysql&gt

    2023-04-28
    134
  • 使用Jupyter进行Python编程

    使用Jupyter进行Python编程随着数据分析和机器学习的火热,Python作为一种优秀的编程语言,也越来越受到数据科学家的青睐。而Jupyter,则是Python编程中必不可少的利器。其灵活的交互式界面、方便的数据可视化和便捷的代码编辑功能,使得它成为Python编码的不二之选。本文将从多个方面详细介绍如何使用Jupyter进行Python编程。

    2024-06-15
    41
  • Python URL编码转换

    Python URL编码转换URL编码转换的作用是将URL中的特殊字符转换为其对应的编码,以便于在URL中正确传递参数。在Python中,URL编码转换可以通过内置的urllib库中的urlencode()函数来完成。

    2024-08-24
    14
  • 将.txt文件的内容导入数据库[通俗易懂]

    将.txt文件的内容导入数据库[通俗易懂]1. 开始→SQLServer2019导入和导出数据 2. 向导页面 点击下一步 3. 选择数据源 数据源 :平面文件源 文件名:点击浏览选择文件所在的链接 区域设置:中文 代码页:这里很重要,之前文

    2023-04-17
    128
  • 如何把sql语句结果输出到excel

    如何把sql语句结果输出到excel如果SQL语句的结果太大,通过plsql developer无法显示所有的结果,这个时候,我们可以通过一段代码来完成,下面是一个例子: 把 select last_name, salary, dep…

    2022-12-27
    133

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注