会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132884个问题

为什么输出后没有名字

/**
 * 定义程序员类
 */
class Programmer{
    private String name;
    public Programmer(String name){
        this.name=name;
    }
 /**
     * 上厕所
     */
    public void wc() {
        synchronized ("pp") {
            try {
                System.out.println("想要上厕所");
                Thread.sleep(500);
                System.out.println("打开厕所门");
                Thread.sleep(500);
                System.out.println("开始上厕所 ");
                Thread.sleep(500);
                System.out.println("排水");
                Thread.sleep(500);
                System.out.println("离开卫生间");
            } catch (InterruptedException e) {
                e.printStackTrace();

            }
        }
    }
}
   
/**
 * 上厕所的线程
 */
class Wc extends Thread{
    private Programmer p;
    public Wc(Programmer p) {
        this.p = p;
    }

    @Override
    public void run() {
        this.p.wc();
    }
}

public class TestSyncThread {
    public static void main(String[] args) {
        
        Programmer p = new Programmer("张三");
        Programmer p1= new Programmer("李四");
        new Wc(p).start();
        new Wc(p1).start();


    }
}


JAVA 全系列/第二阶段:JAVA 基础深化和提高/多线程技术 9933楼
JAVA 全系列/第六阶段:项目管理与SSM框架/SpringMVC旧 9934楼
JAVA 全系列/第一阶段:JAVA 快速入门/变量、数据类型、运算符 9935楼
JAVA 全系列/第十三阶段:分布式文件存储与数据缓存/FastDFS 9936楼
JAVA 全系列/第十三阶段:分布式文件存储与数据缓存/FastDFS 9938楼

mybatiscase.zip

老师,我在TestUserMapper4中的testCache3()中测试二级缓存,但是一级缓存关闭后,还是会有sql语句喃,跟老师的测试结果不一样


JAVA 全系列/第六阶段:项目管理与SSM框架/Mybatis 9940楼
JAVA 全系列/第八阶段:SpringBoot与MybatisPlus/MybatisPlus 9941楼
WEB前端全系列/第一阶段:HTML5+CSS3模块/商城官网项目 9942楼

t_m_r = db.Table('t_menu_role',
               db.Column('rid', db.Integer, db.ForeignKey('t_role.id')),
               db.Column('mid', db.Integer, db.ForeignKey('t_menu.id'))
               )

class Menu(db.Model):
    __tablename__ = 't_menu'
    id = db.Column(db.Integer, unique=True, primary_key=True)
    name = db.Column(db.String(32), unique=True, nullable=False)
    level = db.Column(db.Integer)
    path = db.Column(db.String(32))

    pid = db.Column(db.Integer, db.ForeignKey('t_menu.id'))
    children = db.relationship('Menu')
    roles = db.relationship('Role', secondary=t_m_r)

    def to_dict(self):
        return {
            'id': self.id,
            'name': self.name,
            'level': self.level,
            'path': self.path,
            'pid': self.pid
        }
    
    def get_child_list(self):
        obj_child = self.children
        data = []
        for o in obj_child:
            data.append(o.to_dict())
        return data

class Role(db.Model):
    __tablename__ = 't_role'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(32), unique=True, nullable=False)
    describe = db.Column(db.String(64))

    # 与用户的关联
    users = db.relationship('User', backref='role')
    menus = db.relationship('Menu', secondary=t_m_r)

    def to_dict(self):
        return {
            'id': self.id,
            'name': self.name,
            'describe': self.describe,
            'menu': self.get_menu_list()
        }
    
    def get_menu_list(self):
        menu_list = []
        for m in self.menus:
            if m.level == 1:
                m_dict = m.to_dict()
                m_dict['children'] = m.get_child_list()
                menu_list.append(m_dict)
        return menu_list

图片.png

老师,这边关联数据库报了这个警告,每次查询role表跟menu表时都会

Python 全系列/第九阶段:Flask百战电商后台系统/Flask百战电商后台项目 9943楼
JAVA 全系列/第一阶段:JAVA 快速入门/变量、数据类型、运算符 9944楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

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