当前位置: 首页 > 知识库问答 >
问题:

当我从android访问Java servlet时,mysql数据库没有更新

翟黎明
2023-03-14

我一直在创建一个android应用程序。我设计了一个注册表。在这里,当人们单击signup按钮时,详细信息将添加到mysql表中(包含确认代码作为字段)并且确认代码最初被设置为NULL,然后调用servlet。这个servlet包含生成一个4位随机数并将其添加到特定条目的mysql表中的代码。然后servlet调用另一个类中的一个方法,该方法用代码向用户发送确认电子邮件。

现在,当我运行应用程序和servlet时,将生成一个确认代码,并将其发送给用户vie电子邮件。但问题是mysql表没有得到更新。注意:mysql表更新的代码在发送电子邮件的代码上面给出。但是,同一个servlet更新mysql表,并在提交HTML表单时发送电子邮件。

不知道怎么解决这个..关于信息,我在Amazon弹性Beanstalk上托管了这个应用程序。

这是Servlet部分:

protected void processRequest(HttpServletRequest      request,HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    System.out.println("fdsfsdf");
    mBean = new MailSenderBean();
        Random n=new Random();
        int no=n.nextInt();
        no%=10000;
        if(no<0)
        {
            no=-no;
        }
        String code="0000"+no , name = request.getParameter("name"), email = request.getParameter("email");
        code=code.substring(code.length()-4, code.length());
        try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection(AppConfig.dbUrl,AppConfig.dbUname, AppConfig.dbPwd);
            PreparedStatement pst=con.prepareStatement("update signup_users set code=\'"+code+"\' where name=\'"+name+"\'");
            pst.execute();
            mBean.sendMail(name, email, code);
            System.out.println("name="+name+",email="+email+",code="+code);
        }catch(Exception e)
        {
            System.out.println(""+e);
        }
    }

null

我在android应用程序中的客户端代码是


    DefaultHttpClient httpClient  = new DefaultHttpClient();
    HttpPost httpPost = new HttpPost(AppConfig.serverUrl);
    List lst =new ArrayList();
    lst.add(new BasicNameValuePair("name", name));
    lst.add(new BasicNameValuePair("email", email));
    httpPost.setEntity(new UrlEncodedFormEntity(lst));
    HttpResponse httpResponse = httpClient.execute(httpPost);

共有1个答案

杨良平
2023-03-14

从一个朋友那里得到了答案。我在android应用程序中使用了错误的字段更新,但我在html表单中使用了适当的键。这就是为什么我只从android应用程序得到错误的输出…!!

 类似资料:
  • 主要内容:创建动作:,创建页面:,创建视图:,配置文件:本章将教如何使用Struts 2的简单的步骤来访问数据库。 Struts是一个MVC框架,而不是一个数据库框架,但它提供了极好的支持JPA/ Hibernate集成。我们将看看在的Hibernate集成在后面的章节,但在这一章中,我们将使用纯JDBC来访问数据库。 在这一章中的第一个步骤是设置我们的数据库。我作为我的数据库在这个例子中使用MySQL。在机器上安装MySQL,我创建了一个新的数据库称

  • 我是在Android应用程序中使用SQL的新手,并且我在更新使用listView创建的表时遇到了一些麻烦。我设法从listView中更新了一个元素,但它不是正确的元素,它总是列表中的第一个元素发生了变化。 我制作了一个只有一列的表(稍后我将添加更多的两列),下面是我如何构建它: TaskContract_Faltas.java TaskDbHelper_Faltas Faltas.java 我使用

  • 我有一个有机架空间的服务器。我想从我的本地计算机命令行访问数据库。 我试着说: 但它给出了一个错误: 错误2003(HY000): 无法连接到“my.application.com”上的MySQL服务器(10061) 导致此错误的原因以及如何连接到远程数据库?

  • 由于某些奇怪的原因,数据库没有得到更新,我可以得到正确的数据(我检查了它),但是当我单击submit时,数据库没有得到更新。你能帮我查一下有没有什么东西丢了吗?注意:“---”只是出于安全考虑! ?

  • 到现在为止,我已经在解决我的问题很长时间了,我找不到合适的解决方案。 我需要顺序访问不同的数据库。我试图更改到数据库的链接,正如你在下面的代码中看到的那样。 到目前为止,这在某种程度上是可行的。问题是应用程序需要重新加载才能从我的应用程序中读取更改。属性来连接到另一个数据库,这对我来说并不是一个真正的解决方案,因为应用程序会重新启动。它还必须是动态可变的,因为我正在处理30多个数据库。 也许你们可

  • 问题内容: 我已经创建了一个关于餐馆的在线数据库,我需要通过我的android应用程序访问该数据库,以便在过滤后可以向用户显示数据。我的应用程序不需要更新数据库,但是我的问题是如何连接到我的在线mysql数据库并将其提供给用户?我已经在该站点以及其他站点上查看了许多建议,但我发现访问时必须使用JSON解析器,但不必这样做。 问题答案: 最好的解决方案是提供一个公共API,例如,使用PHP管理该AP