会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 134021个问题
JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 16517楼
JAVA 全系列/第一阶段:AI驱动的JAVA编程/面向对象详解和JVM底层内存分析 16520楼

对于线程冲突的理解:

在两个浏览器中输入的内容

360浏览器:http://localhost:8888/WebDemo/safe.do?name=aaa

Microsoft Edge浏览器:http://localhost:8888/WebDemo/safe.do?name=bbb

当我在360中输出name=aaa后发送请求,Tomcat创建Servlet对象并生成线程1,再在Edge中发送请求name=bbb

使用的是同一个Servlet对象并生成线程2。线程1中name=aaa,pw=resp.getWriter()创建的是线程1的pw后进入线程休眠状态,这时线程2启动name=bbb,pw=resp.getWriter()创建的是线程2的pw,因为PrintWriter pw是成员变量,是被线程共享的,所以在这时线程2的pw覆盖线程1的pw。当线程1结束休眠运行时输出name值aaa,由于pw被覆盖此时是线程2的pw,所以会把aaa输入到Edge浏览器,360浏览器没有输出值,然后pw刷新关闭。这时线程2激活,但pw已经被关闭了,所以后面的输出代码失去作用。

老师是这样的过程吗?

JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 16524楼
Python全系列/第一阶段:AI驱动的Python编程/编程基本概念 16527楼
Python全系列/第一阶段:AI驱动的Python编程/编程基本概念 16528楼

百战课堂练习第十二阶段 – views.py PyCharm 2021_10_2 15_35_15.png

session_demo_app.zip

老师这句话是什么方法

Python全系列/第十二阶段:Python_Django3框架/Django初级 16529楼

import pymysql
class Mydb:
    config={
        "host":"localhost",
        "user":"root",
        "password":"2086",
        "db":"music",
        "charset":"utf8"
    }
    def __init__(self):
        self.connection=pymysql.connect(**Mydb.config)
        self.cursor=self.connection.cursor()
    def close(self):
        if self.cursor:
            self.cursor.close()
        if self.connection:
            self.connection.close()
 
    def exeDML(self,sql,*args):
        try:
          
            count=self.cursor.execute(sql,args)
             
            self.connection.commit()
            return count
        except Exception as e:
            print(e)
            if self.connection:
                self.connection.rollback()
        finally:
            self.close()
    def query_one(self,sql,*args):
        try:
            self.cursor.execute(sql,args)
            self.cursor.fetchone()
        except Exception as e:
            print(e)
        finally:
            self.close()
    def query_all(self,sql,*args):
        try:
      
            self.cursor.execute(sql,args)
     
            return self.cursor.fetchall()
        except Exception as e:
            print(e)
        finally:
            self.close()
            
from DBUtill import Mydb
class MyService:
    def login(self,uname,password):
        sql="select * from music_project where uname=%s and password=%s"
        user = Mydb().query_one(sql,uname,password)
        if user:
            return True
        else:
            return False
            
from MyService import MyService

if __name__ == "__main__":
    uname = input("enter user name:")
    password = input("enter password:")
    myservice  = MyService()
    if myservice.login(uname,password):
        print("success login")
    else:
        print("fail login")

image.pngimage.png


老师不知道哪里出问题,对的用户名和密码但是登录失败

Python全系列/第六阶段:数据库与AI协同技术实战/项目-音乐播放器-旧 16530楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637